Описание процессора i8086 для программиста

         

Физическая память


Память вычислительных машин на базе микропроцессора 8086 организована побайтно. Для адресации байтов используется 20-разрядный физический адрес. Адресация ведётся с нуля, максимальное шестнадцатеричное значение адреса – FFFFF.

Многобайтовые двоичные числа хранятся в смежных ячейках (байтах) памяти в порядке “младший–старший”, т.е. байт, содержащий самые младшие разряды числа, будет храниться в ячейке памяти с наименьшим адресом, а байт, содержащий самые старшие разряды – в ячейке с наибольшим адресом. Адресом всего числа является адрес его самого младшего байта.

Многобайтовые числа могут располагаться в памяти по любым адресам, какое-либо выравнивание не требуется. Однако производительность микропроцессора 8086, в отличие от микропроцессора 8088, повышается, если числа выровнены на их “естественную” границу, т.е. если слова (последовательности из двух байтов) хранятся по чётным адресам памяти. Это связано с тем, то микропроцессор 8086 имеет 16-разрядную шину данных, и для считывания или записи слова, хранящегося на чётной границе, ему достаточно одной операции доступа к памяти, в то время как для слова, хранящегося на нечётной границе, потребуются два доступа. Микропроцессор 8088, имея 16-разрядную внутреннюю архитектуру, располагает только 8-разрядной внешней шиной данных, поэтому для чтения или записи слова ему всегда потребуются две операции доступа к памяти.



Содержание раздела