Hello Alex.
15 Apr 05 14:03, you wrote to me: AK> Thu Apr 14 2005 07:39, Vladimir V. Teplouhov wrote to Alex Kouznetsov:VVT>>>> впринципе если применить те-же методы, что и применяются в VVT>>>> безадресных системах комманд, то в 2 байта кода операции легко VVT>>>> умещаются 3 адреса,
AK>>> Поясни подробнее, что ты имеешь ввиду, если можно - с примерами. AK>>> Что-то я не возьму в толк, как применить "методы, используемые в AK>>> безадресных командах" для задания адресов.
VVT>> в умных процах первые ~16 переменных адресуются 4 битами VVT>> относительно индексного регистра, который надо загрузить один VVT>> раз при входе в процедуру. Есть 2 регистра - для локальных VVT>> и для глобальных переменных...
AK> А, адрес в поле команды все-таки есть, хоть и неполный. В безадресных AK> командах его нет вообще.
в самих командах их нет - это в командах загрузки/выгрузки на стек так. Впринципе ничто не мешает иметь и такие команды с адресами, но просто не нужно - проще работать через стек, причем еще и быстрее тк не надо тратить время на обращение к памяти. В общем в этом смысле РОH или стек чем-то кэш напоминает :) Hу а произвольный доступ ко всем РОH чаще всего и не нужен - компилятор всегда может переставить команды местами так, чтобы все нормально адресовалось по принципу стека (причем собсно само так получается когда в польскую запись переводишь). Поэтому в коде команды и "адрес" РОH тоже лишний.
Vladimir