Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт мар 28, 2024 17:45

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Пн авг 17, 2009 07:21 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
WingLion писал(а):
Форт-машина основана на 0-операндной модели, то есть в формате команды не кодируются регистры источники и приемники информации.


по такому признаку команды >R R> @ и ! к 0-операндной модели не относятся...

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн авг 17, 2009 07:30 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
WingLion писал(а):
WingLion писал(а):Форт-машина основана на 0-операндной модели, то есть в формате команды не кодируются регистры источники и приемники информации.
по такому признаку команды >R R> @ и ! к 0-операндной модели не относятся...

не верно понял. Речь о том, что в формате кодирования команды нет поля(ей) отвечающих за кодирование операнда(ов)
к примеру, вспомни формат команды ix86 : [OP|REG|R/M] - то есть опокд, источник, приемник под которые отводится по три бита. Это есть двухоперандная модель. В 0-операндной модели в формате команды остается только поле Opcode - а сама операция подразумевает и источник и приемник, причем, на сколько я понимаю, это не обязательно должна быть стековая машина, это может быть и RISC машина, и тем более CISC, но это будет уже не архитектура, а отдельные 0-операндные команды.

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн авг 17, 2009 07:37 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
Вона как... значит что-то не так с пояснением 0-операндной модели.
потому что источники и приемники таки кодируются (шифруются) в опкоде.
А мнемоники этот шифр раскрывают.

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн авг 17, 2009 07:40 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
у Купмана так: "0-Operand instructions do not allow any operands to be associated with the opcode."
в переводе: "0-Операндные инструкции не позволяют любым операндам ассоциироваться с опкодом"

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн авг 17, 2009 07:44 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
Но R> и >R то ассоциируются с конкретными операндами...

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн авг 17, 2009 07:49 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
WingLion писал(а):
Но R> и >R то ассоциируются с конкретными операндами...

еще раз, формат команды в 0-операндной модели состоит только из опкода команды!
то есть нету специальных "выделенных" полей для указания операндов.
ну, возьми к примеру 4-х битовый проц, там есть система команд:

0 - NOP
1 - AND
2 - XOR
3 - ADD
4 - 0=
5 - lit
6 - 2/
7 - SUB
8 - DUP
9 - DROP
A - if
B - R>
C - >R
D - @
E - !
F - SWAP

вот в опкоде просто нет места для хранения по два дополнительных бита на указание приемника и источника данных!!!

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн авг 17, 2009 12:51 
Не в сети
Аватара пользователя

Зарегистрирован: Чт апр 26, 2007 21:09
Сообщения: 303
Благодарил (а): 12 раз.
Поблагодарили: 10 раз.
Олег, я примерно представляю, в чём проблема.

Если вернуться к ООП-анализу, то человек всё равно представляет стеки данных и возвратов как отдельные сущности.
В любом случае, мы, либо выделением отдельного набора битов в коде операции, либо разбивая набор кодов операций на отрезки значений, отождествляем соответствующие операции над(к) соответствующим(и) сущностям(и).

Случай в твоём исполнении с командами >R и R> - из второго примера.

Кстати, ведь и опкоды х86 вполне можно "перемешать", так, что бы не было выделенных полей в коде команды, но мы всё равно будем себе в мозгу иметь объектную модель х86 архитектуры. Понятное дело, что дешифрация команд внутри кристалла усложнится и он наверняка "распухнет" в разы, но это ничего не меняет.

Наличие/отсутствие выделенных/назначенных участков в коде операций для идентификации чего-либо - лишь произвол и формальность (хлтя и удобная для восприятия, запоминания и идентификации).


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн авг 17, 2009 13:45 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
>R является нуль-операндной командой, потому что сам тип команды уже однозначно определяет приемник и источник (нуль-операндные - это не только те, которые вообще не используют операндов, но и те, кто определяет их самостоятельно, не пользуясь дополнительными кодами). По аналогии, в аккумуляторных архитектурах используются 1-операндные команды, например, "загрузить регистр N в аккумулятор". При этом приемник (аккумулятор) определен самим типом команды и не требует дополнительного уточнения, а вот источник - это операнд (РОН).


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5


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

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB