Организация памяти и способы адресации
Важным моментом в изучении способов адресации является понятие логической и физической памяти. Как показано на рис. 1.5, память логически организуется в виде последовательности смежных байтов, которые образуют двухбайтовые слова, причем младшим байтам слов соответствуют меньшие значения адресов. Если многобайтовое слово записывается, как обычно, слева направо, то в память байты записываются в обратном порядке. Память с таким порядком размещения информации в словах называют памятью с «перевернутыми словами».
В ВМ на базе Intel8086 первые байты слов могут иметь как четные, так и нечетные адреса в памяти. Если слово начинается с четного адреса, обращение к нему произойдет в одном цикле, в то время как обращение к слову с нечетным адресом младшего байта займет два цикла. Поэтому для сокращения времени выполнения программ целесообразно располагать слова в памяти так, чтобы их младшие байты имели четные адреса.
a)
Рис. 1.5. Логическая (а) и физическая (б) организация памяти
В зависимости от типа команды операнд может представлять собой байт или слово и храниться в РОН или памяти. В большинстве команд для адресации операндов используется специальный байт, который называется
постбайтом и размещается вслед за первым байтом, содержащим код операции.
|
|
Рис. 1.6. Структура постбайта
Постбайт, структура которого представлена на рис. 1.6, указывает способ адресации одного или двух операндов и состоит из трех полей. Поля mod и r/т задают местоположение одного операнда следующим образом: если mod=11, то операндом является содержимое регистра, двоичный код (номер) которого задается в 3-разрядном поле r/т в соответствии с табл. 1.1а.
Если тod=11, то в полях mod и r/т содержится информация, согласно которой устанавливается один из способов адресации - прямая, косвенная регистровая, по базе, индексная и по базе с индексированием. Если для реализации выбранного способа адресации требуется дополнительная адресная информация, то она указывается в одном или двух байтах в виде смещения disp, которое следует непосредственно за постбайтом. Наличие или отсутствие смещения и его размерность определяются полем mod следующим образом:
· если mod = 00, то disp отсутствует;
· если mod=01, то disp размерностью 1 байт указывается за постбайтом, причем перед использованием этого смещения при формировании исполнительного адреса ЕА оно расширяется со знаком до 16 разрядов (расширение со знаком подразумевает заполнение старшего байта значением знакового разряда, указанного в disp);
предыдущаяследующая© Copyright, 2009.
Для связи: info@dgs-srl.com.