Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Теория программирования > Информационные технологии
Перезагрузить страницу Числа и Цели на 80х86
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
левша левша вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.01.2004
По умолчанию Числа и Цели на 80х86 - 21.01.2004, 23:33

Меня давно занимает один вопрос если кто с ним знаком прошу ответить.
Ктото когдато нам подарил числа от 0 да бесконечности, у этих чисел оказалось много всяких свойствнатуральные, числа Фибоначи, ...)
Гдето 1980 году фирма Интел выпустила процессор 80х86 с системой
команд, которая представляет собой тоже набор чисел, но с уже задаными свойствами. Раз уж эта система комманд завоевала почти весь мир то интересно знать ответ на один вопрос:
В рамках основных минизадач (цыклы условные блоки ...)
можно вывести "изоморфизм" произвольной алгебры преобразания
этих кодов(в рамках самомодификации программ) с алгеброй преоброзования основных минизадач на основе свойств этих кодов,
которые бы давали "скачок" эффективности по размеру программы.
Ответить с цитированием
  (#2 (permalink)) Старый
Винитарх Винитарх вне форума
Специалист
 
Аватар для Винитарх
 
Сообщений: 8,035
Сказал(а) спасибо: 2
Поблагодарили 323 раз(а) в 322 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 24.01.2004, 01:17

Однако, выражайтесь проще (ботайте по фене форума). Галуа для многих здесь - ругательство.

То есть Вы предлагаете часто используемые ассемблерные фрагменты заменить/дополнить одной командой. Идея не нова.
Смею Вас огорчить (или обрадовать) - это уже давно реализовано. Посмотрите какие именно команды добавляет Intel в систему команд как семейства 80х86, так и 8088(51). То есть - чем сейчас по системе команд отличается 80486 от 8086, или пень4 от пняMMX? Отличие, кроме всего прочего в том, о чем Вы спросили.
По поводу самомодификации/модификации программ. Вы знаете что творит с загруженой программой интелловский процессор во время исполнения? Декомпозиция, параллелизм, спекуляция, предсказание (почти по Ностродамусу), короче - это целая хренорезка. А в процессорах других фирм есть хренорезки понавороченей.
Ответить с цитированием
  (#3 (permalink)) Старый
Anonymous
Guest
 
Сообщений: n/a
По умолчанию 24.01.2004, 14:36

to Винитарх
Если бы я ботал по фене мне бы пришлось ешё месяц уточнять мой вопрос.

Цитата:
То есть Вы предлагаете часто используемые ассемблерные фрагменты заменить/дополнить одной командой. Идея не нова.
Во первых мои предложения это не самое главное, а главное просьба
о информации по анализу конкркетных конечных целочисленных множеств чем и являются группы команд процессора, реализующих какоето алгоритмическое звено.
Во вторых не это. Я предложил программноматематическое а не аппаратное решения и только как пример применения данного вида анализа.А задач которые могут быть решены с помощью такого анализа уверен очень много.

То что фирма интел добавляет в систему команд как семейства 80х86, так и 8088(51) новые инструкции не снимает вопроса, а наоборот делает его ещё более интересным.

Думую стоит привести один пример не претендующий на доказательство актуальности моей просьбы , а только демонстрирующий суть вопроса:

на паскале:
{цикл от 0 до 255 вычесляющий сумму квадратов от 0 до 255}
For i:=0 to 255 do j:=j+sqr(i);
на СИ:
/*цикл от 0 до 255 вычесляющий сумму квадратов от 0 до 255 */
For (i=0;i<256;i++) j+=pow(i,2);

пусть (для примера) он на языке машинных кодов выглядит так:
00 01 AA FF 55 CC FF F5 6E 5A 34
пусть есть очень короткая математическая операция:
NOT A
которая из этого кода делает другой который, например будет выглядеть так:
начало кода: мусор
середина кода: if k>l+34 then k:=l+55
конец кода: мусор
Вопрос: Найти самое короткое, по произвольной логике, преоброзование одного звена алгоритма в другое?

Также интересна и обратная задача:
Пусть есть два разных способа вычесления корней квадратного уравнения, и один из другого можно вывести.
Программной реализации способа 1 соответствует совокупность машинных кодов A
а программной реализации способа 2 соответствует совокупность машинных кодов B.
Вопрос: Найти самое короткое преоброзование множества A в множество B?.
Ответить с цитированием
  (#4 (permalink)) Старый
левша левша вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.01.2004
По умолчанию 24.01.2004, 14:38

Прошу прощения забыл войти.
последние сообщение моё
Ответить с цитированием
  (#5 (permalink)) Старый
Винитарх Винитарх вне форума
Специалист
 
Аватар для Винитарх
 
Сообщений: 8,035
Сказал(а) спасибо: 2
Поблагодарили 323 раз(а) в 322 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 25.01.2004, 14:23

Левша пишет:
Цитата:
Во первых мои предложения это не самое главное, а главное просьба
о информации по анализу конкркетных конечных целочисленных множеств чем и являются группы команд процессора, реализующих какоето алгоритмическое звено.
Во вторых не это. Я предложил программноматематическое а не аппаратное решения и только как пример применения данного вида анализа.А задач которые могут быть решены с помощью такого анализа уверен очень много.
Аппаратное решение (равно как и программное) - это все ЛОГИКА, только реализованная на разном уровне воплощения.
Не надо усложнять. Все гораздо проще:
1. Программист пишет алгоритм на ассемблере (я его взял для простоты пояснений). Команды ассемблера на первый взгляд действительно можно рассматривать как целые числа, которые составляют конечное множество (я бы даже сказал - автоматную грамматику).
2. Процессор "натягивает" ассемблерные команды на алгебру трех логических операций: И, ИЛИ, НЕ (вот Вам и тело с нулем и единицей). И тут может показаться, что легко построить эквивалентные преобразования на множестве целых чисел (т.е. команд поцессора). Но на самом деле см.пункт3.
3. На самом деле алгебра из п.2 реализована только внутри АЛУ (т.е. конечного автомата). А Фон Ней-я машина (ведь имено о ней мы и ведем речь) НЕ РАБОТАЕТ В АЛГЕБРЕ, т.к. она имеет в своем составе НЕ АЛГЕБРАИЧЕСКИЕ по своей природе операции (пересылки, ввод-вывод и т.д.). А чего стоит, например, регистровая адресация, - она напрочь не алгебраическая, ибо не существеут преобразования, по которому мы из имени (кода) регистра (например АХ) получим его содержимое алгебраическими средствами.
4. Посему Ваши вопросы некорректны. Правильно было бы их ставить по отношению к конечным автоматам, либо к НЕ Фон Ней-м машинам, которые работают на "чистой" алгебре.

Левша пишет:
Цитата:
на паскале:
{цикл от 0 до 255 вычесляющий сумму квадратов от 0 до 255}
For i:=0 to 255 do j:=j+sqr(i);
на СИ:
/*цикл от 0 до 255 вычесляющий сумму квадратов от 0 до 255 */
For (i=0;i<256;i++) j+=pow(i,2);

пусть (для примера) он на языке машинных кодов выглядит так:
00 01 AA FF 55 CC FF F5 6E 5A 34
пусть есть очень короткая математическая операция:
NOT A
которая из этого кода делает другой который, например будет выглядеть так:
начало кода: мусор
середина кода: if k>l+34 then k:=l+55
конец кода: мусор
Вопрос: Найти самое короткое, по произвольной логике, преоброзование одного звена алгоритма в другое?
Что это у Вас за преобразование такое? Оно же не эквивалентное.
Зачем строить какими то формальными средствами из алгоритма А совершенно другой алгоритм Б ?

Левша пишет:
Цитата:
Также интересна и обратная задача:
Пусть есть два разных способа вычесления корней квадратного уравнения, и один из другого можно вывести.
Программной реализации способа 1 соответствует совокупность машинных кодов A
а программной реализации способа 2 соответствует совокупность машинных кодов B.
Вопрос: Найти самое короткое преоброзование множества A в множество B?.
Самое короткое преобразование - это то, о котором Вы сказали фразу:
и один из другого можно вывести.
И Вы его даже можете реализовать в машинных кодах.

А вот Ваша самая первая неправильная посылка, из-за которой Вы ушли в демагогию:
Цитата:
просьба о информации по анализу конкретных конечных целочисленных множеств чем и являются группы команд процессора
Система команд процессора является конечным целочисленным множеством только семиотически (т.е. с точки зрения знаковой системы). Но как только проц начинает двигать поршнями, так сразу семиотическая система передает бразды правления системе интерпретаций, которая рассматривает программу не как знаковую систему (числа), а как преобразование бесконечного множества - в бесконечное множество. И это уже не алгебра и даже не Произвольная алгебра. Это отображение бесконечного множества абстрактных (и сколь угодно сложных) элементов в другое равномощное ему множество. Читайте классиков.

А зачем Вам все это? Решили статейку тиснуть или диплом/диссер защитить, или просто любопытство заело?
Ответить с цитированием
Ads.
  (#6 (permalink)) Старый
левша левша вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.01.2004
По умолчанию 25.01.2004, 18:59

to Винитарх
Думую что моих познаний в математике не хватит квалифицировано возразить вам. Тем не менее всё что я написал считаю реальным, даже если какието действия будут выходить за рамки тех разделов матиматике которыми они будут описываться. Потому что моя цель не доказательство теорем, а создание неких логических конструкций для решения конкретных задач в минимизации кода программ, защиты программ от взлома, проведение сложных рекурсивных вычеслений.
Ответить с цитированием
  (#7 (permalink)) Старый
Винитарх Винитарх вне форума
Специалист
 
Аватар для Винитарх
 
Сообщений: 8,035
Сказал(а) спасибо: 2
Поблагодарили 323 раз(а) в 322 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 25.01.2004, 23:46

Ну так это совсем другое дело! С этого и надо было начинать.
А Вы начали с:
Цитата:
"изоморфизм" произвольной алгебры
А вообще то вопросов появилось больше, т.к. по моему мнению перечисленные Вами в последнем посте три задачи никак не связаны друг с другом.

1. Интересно, а вот минимизацию кода программ Вы хотите проводить в рамках существующей системы команд, или в какой то эфемерной?

2. Защита программ - это вообще вопросы криптографии. и если Вы ее специально не изучали в институте, то мой Вам совет - не беритесь, можно или вляпаться или попасть впросак прилюдно (что неоднократно было на форуме).
Ответить с цитированием
  (#8 (permalink)) Старый
левша левша вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.01.2004
По умолчанию 27.01.2004, 00:41

Цитата:
Originally posted by Винитарх+-->
Цитата:
2. Защита программ - это вообще вопросы криптографии. и если Вы ее специально не изучали в институте, то мой Вам совет - не беритесь, можно или вляпаться или попасть впросак прилюдно (что неоднократно было на форуме).
Попасть в просак не боюсь, даже прилюдно и пиетета особого перед
дипломироваными криптографами не испытываю. Думую в рамках коммерческой криптографии могу решить ряд задач, но особо не на что не претендую. Но вы сами написали:
Цитата:
Originally posted by Винитарх@
[b]3. На самом деле алгебра из п.2 реализована только внутри АЛУ (т.е. конечного автомата). А Фон Ней-я машина (ведь имено о ней мы и ведем речь) НЕ РАБОТАЕТ В АЛГЕБРЕ, т.к. она имеет в своем составе НЕ АЛГЕБРАИЧЕСКИЕ по своей природе операции (пересылки, ввод-вывод и т.д.).
Хоть я и не согласен с этой цитатой, но критография всётаки основана на математике, а значит роль дипломированых криптографов
исходя из вашей цитаты здесь ограничена если нет уж совсем каких нибудь тайных знаний.

<!--QuoteBegin-Винитарх

[b]Ну так это совсем другое дело! С этого и надо было начинать.
А Вы начали с:
Цитата:
"изоморфизм" произвольной алгебры
Если вы заметили я слово изоморфизм взял в ковычке. Я решил объясниться языком математике чтобы не не у кого из возможных собеседников не было искушения уйти от темы но думую всё таки тема шире чем бональная сомомодификация программ.
Тем не менее именно этим приёмом программирования я и объединяю все три вышеуказаных мной примера.
Ответить с цитированием
  (#9 (permalink)) Старый
левша левша вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.01.2004
По умолчанию 27.01.2004, 00:48

Цитата:
1. Интересно, а вот минимизацию кода программ Вы хотите проводить в рамках существующей системы команд, или в какой то эфемерной?
В том числе чтобы ответить и на этот вопрос необходимо провести
математический анализ того вопроса о котором я написал в первом топике по этой теме.
Если эфимерная система комманд даст качественный скачок в эффективности(размер кода производительность) то можно и в эфимерной тем более что это нынче благодоря ПЛИС можно получить практический ответ на этот вопрос.
Ответить с цитированием
  (#10 (permalink)) Старый
Винитарх Винитарх вне форума
Специалист
 
Аватар для Винитарх
 
Сообщений: 8,035
Сказал(а) спасибо: 2
Поблагодарили 323 раз(а) в 322 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 27.01.2004, 19:33

Левша писал:
Цитата:
...критография всё-таки основана на математике, а значит роль дипломированых криптографов
исходя из вашей цитаты здесь ограничена
1. Если ПЭВМ не алгебраическая по природе своей, то это не означает, что с помощью нее (ЭВМ как инструмент) нельзя решать алгебраические задачи. Микеланджело долбал свои скульптуры острым зубилом, а формы получались очень уж округлые и пышные.
2. А вывод из моего последнего поста прост: не стоит использовать алгебраические методы для анализа числодробилки. Она отображает элементы одного множества в другое. И неважно, что элементы этих двух множеств имеют целочисленную природу. Самое главное, что это отображение принципиально не задает функций, а функции, как известно, являются неотъемлемой частью любой алгебры. Вообще-то я не хочу подробно останавливаться на этом вопросе.
3. И последнее: алгебра это еще не вся математика, а ЭВМ, в свою очередь, не отрицает алгебру (просто внутри себя она не работает по ее законам) => "роль дипломированых криптографов" остается такой, какой и была.

Левша писал:
Цитата:
Если эфимерная система комманд даст качественный скачок в эффективности(размер кода производительность) то можно и в эфимерной тем более что это нынче благодоря ПЛИС можно получить практический ответ на этот вопрос.
С помощью ПЛИС Вы не создадите универсальный вычислитель, и даже его модель для тестовых испытаний. Ваша ПЛИС будет "заточена" под конкретную задачу. А мы, по моему, ведем речь об универсальном вычислителе. Не так ли?
Ответить с цитированием
  (#11 (permalink)) Старый
левша левша вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.01.2004
По умолчанию 27.01.2004, 20:54

Цитата:
Originally posted by Винитарх+-->
Цитата:
Самое главное, что это отображение принципиально не задает функций, ...
И вы можете это доказать?
Я не хочу брать на себя смелость опровергнуть это утверждение, но думую что математика это инструмент и инструмент творческий.
Я думую время покажет имеет ли эта идея право на существование.
Если имеет значит ктото кагдато об этом уже думал и возможно есть какието книги по этой теме(не обязательно на русском)

<!--QuoteBegin-Винитарх

[b]С помощью ПЛИС Вы не создадите универсальный вычислитель, и даже его модель для тестовых испытаний. Ваша ПЛИС будет "заточена" под конкретную задачу. А мы, по моему, ведем речь об универсальном вычислителе. Не так ли?
Теперь я вас не понимаю.
Что вы понимаете под универсальным вычеслителем? Я не знаком с программированием ПЛИС и вближайшей год не собираюсь его осваивать. Некоторые вопросы можно решить и без ПЛИС. Это я как пример просто привёл.
Тем не менее концепцию работы думую что знаю достаточно так как интересовался этой темой у одного коллеге по работе.
Опираясь на его мнение могу сказать что сделать на базе ПЛИС
микропроцессор с гибкой системой комманд (т.е. система комманд одна
а кодировка её разная) вполне реально. Но пока я не уверен даст ли это что нибудь.
Ответить с цитированием
  (#12 (permalink)) Старый
Винитарх Винитарх вне форума
Специалист
 
Аватар для Винитарх
 
Сообщений: 8,035
Сказал(а) спасибо: 2
Поблагодарили 323 раз(а) в 322 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 29.01.2004, 02:40

Левша писал:
Цитата:
И вы можете это доказать?
Чистая теория:
1. У функции/й, определяющих группу или тело область значений совпадает с областью определений.
А отображение может отобразить одно множество в СОВЕРШЕННО ДРУГОЕ, т.е. образы никоим образом и никогда не пересекутся со множеством своих прообразов.
2. Функция имеет не более одного значения для каждого набора своих аргументов. А отбражение может отобразить любой свой элемент в более чем один образ, т.е. отображение в отличие от функции может быть НЕОДНОЗНАЧНЫМ.
Ответить с цитированием
Ads
  (#13 (permalink)) Старый
левша левша вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.01.2004
По умолчанию 29.01.2004, 15:41

Цитата:
Originally posted by Винитарх+-->
Цитата:
Чистая теория:
1. У функции/й, определяющих группу или тело область значений совпадает с областью определений.
А отображение может отобразить одно множество в СОВЕРШЕННО ДРУГОЕ, т.е. образы никоим образом и никогда не пересекутся со множеством своих прообразов.
2. Функция имеет не более одного значения для каждого набора своих аргументов. А отбражение может отобразить любой свой элемент в более чем один образ, т.е. отображение в отличие от функции может быть НЕОДНОЗНАЧНЫМ.
Это Ликбез для первокурсника, а не доказательствово.
Доказательства так я и не увидел.

Для столь смелого утверждения
<!--QuoteBegin-Винитарх

[b]А Фон Ней-я машина (ведь имено о ней мы и ведем речь) НЕ РАБОТАЕТ В АЛГЕБРЕ, т.к. она имеет в своем составе НЕ АЛГЕБРАИЧЕСКИЕ по своей природе операции (пересылки, ввод-вывод и т.д.).
нужны более конкретные доводы, а не выдержки из учебника по математике.
Ответить с цитированием
  (#14 (permalink)) Старый
Винитарх Винитарх вне форума
Специалист
 
Аватар для Винитарх
 
Сообщений: 8,035
Сказал(а) спасибо: 2
Поблагодарили 323 раз(а) в 322 сообщениях
Регистрация: 01.03.2003
Адрес: Краснодар
По умолчанию 29.01.2004, 16:00

Я же уже писал раньше:
- операции пересылки,
- ввод-вывод,
- различные способы адресации
не являются алгебраическими.
Если Вы иного мнения, так что нам здесь спорить?
Разойдемся как в море корабли и все дела.
Ответить с цитированием
  (#15 (permalink)) Старый
левша левша вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 21.01.2004
По умолчанию 29.01.2004, 18:20

to Винитарх
Да иного, но всегда рад конструктивной критике своего мнения.
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Простой вопрос по механизму нахождения цели Feofilakt Prolog 4 25.02.2012 17:54
Числа Anastasiya__ Алгоритмы 2 03.01.2012 01:08
Даны действительные числа a1,...,a20. Получить числа b1,...,b20, ... Ptitsa Pascal 1 22.12.2011 01:29
Простые числа aag Prolog 10 12.11.2011 15:53
Цели ANUBIS Prolog 1 13.06.2010 19:07
Числа Фибоначчи Paprika Prolog 3 19.05.2009 23:26
Числа vs Дата Krasnaja Shapka Visual Basic 4 27.10.2006 11:37
Перезапустить поиск цели?!! fixx Prolog 15 13.01.2006 01:38
Использование внешней цели mitr Prolog 2 21.05.2005 14:37
Разложение числа Cwerf Prolog 9 19.05.2005 13:26



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов