Статус
нашего
сайта:
ICQ Secrets Center is Online  ICQ Information Center


ICQ SHOP
     5-значные
     6-значные
     7-значные
     8-значные
     9-значные
     Rippers List
ОПЛАТА
СТАТЬИ
СЕКРЕТЫ
HELP CENTER
OWNED LIST
РОЗЫСК!New!
ICQ РЕЛИЗЫ
Протоколы ICQ
LOL ;-)
Настройка компьютера
Аватарки
Смайлики
СОФТ
     Mail Checkers
     Bruteforces
     ICQTeam Soft
     8thWonder Soft
     Other Progs
     ICQ Patches
     Miranda ICQ
ФорумАрхив!
ВАШ АККАУНТ
ICQ LiveJournal

Реклама

Наш канал:

irc.icqinfo.ru

Таненбаум Э.- Архитектура компьютера. стр.295


Таненбаум Э.- Архитектура компьютера. стр.295

Таблица 5.8. Сравнение режимов адресации

Режим адресации

Pentium 4

UltraSPARC III

8051

Неявная

   

Да

Непосредственная

Да

Да

Да

Прямая

Да

 

Да

Регистровая

Да

Да

Да

Косвенная регистровая

Да

Да

Да

Индексная

Да

Да

 

Относительная индексная

 

Да

 

Стековая

На практике для эффективной архитектуры команд вовсе не нужно множество разнообразных режимов адресации. Поскольку практически весь код, написанный на этом уровне, порождается компиляторами (за исключением 8051), режимов адресации должно быть мало и они должны быть простыми и понятными. Машине приходится занимать одну из крайних позиций, предлагая либо все доступные варианты, либо только один вариант. В промежуточных случаях компилятор сталкивается с необходимостью выбора, сделать который он не в силах ввиду недостатка информации или сложности алгоритма.

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

Мы рассмотрели возможные компромиссы между кодами операций и адресами, а также между различными режимами адресации. Когда вы сталкиваетесь с новым компьютером, нужно изучить все его команды и режимы адресации,

причем не только для того, чтобы знать об их существовании, но и чтобы понять, почему разработчиками был сделан именно такой выбор и каковы были бы последствия при другом выборе.

Типы команд

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

Команды перемещения данных

Копирование данных из одного места в другое — одна из самых распространенных операций. Под копированием мы понимаем создание нового объекта с точно таким же набором битов, как у исходного. Такое понимание слова «перемещение» несколько отличается от его обычного значения. Если мы говорим, что какой-то человек переместился из Нью-Йорка в Калифорнию, это не значит, что в Калифорнии была создана идентичная копия этого человека, а оригинал остался в Нью-Йорке. Когда мы говорим, что содержимое ячейки памяти 2000 переместилось в какой-либо регистр, мы всегда подразумеваем, что там была создана идентичная копия, а оригинал все еще находится в ячейке 2000. Команды перемещения данных лучше было бы назвать командами дублирования данных, но название уже устоялось.


⇐ Предыдущая страница| |Следующая страница ⇒

.