Разделы:
Best links:
Спрос на услуги хостинга в нашей стране повышается благодаря росту проникновения доступа в Интернет
--------------------------
Архитектура центрального процессора
Усовершенствование архитектуры Intel 8086 связано также с введением в структуру микропроцессора специального сумматора (СМ) для вычисления адресов памяти.
Как отмечалось выше, разрядность адресов микропроцессора равна 20. Однако для упрощения операций хранения и пересылки адресной информации процессор манипулирует 16-разрядными логическими адресами, к которым относятся начальные (базовые) адреса сегментов памяти и значения смещений в этих сегментах. Логические адреса используются для вычисления 20-разрядных физических (абсолютных) адресов с помощью следующей процедуры. Содержимое каждого сегментного регистра рассматривается как 16 старших разрядов А19-А4 начального адреса соответствующего сегмента. Младшие разряды A3-А0 этого адреса всегда полагаются равными нулю и поэтому не запоминаются в регистрах, а приписываются справа к старшим разрядам во время операции вычисления физических адресов. Эта операция выполняется сумматором адреса, расположенным в блоке БСШ, и состоит в сложении 20-разрядного начального адреса сегмента с 16-разрядным смещением, которое дополняется четырьмя старшими разрядами А19-А16, равными нулю, как показано на рис. 1.3. Сумматор адресов осуществляет, например, следующие вычисления: CS + IP - при выборке очередной команды, SS + SP - при обращении к стеку, DS + SI и ES + DI - при обработке строк, DS + EA- при обращении к запоминающему устройству с произвольной выборкой (ЕА - исполнительный адрес, формирование которого описано ниже).
|
|
Рис. 1.3. Вычисление физического 20-разрядного адреса
Поскольку младшие четыре разряда начального адреса любого сегмента должны быть равны нулю, значения начальных адресов сегментов выбираются кратными 16. Наибольшая емкость памяти, отводимой под один сегмент, определяется максимальным значением 16-разрядного смещения и составляет 64К байт.
Рис 1.4. Пример размещения сегментов в памяти
В несложных системах с емкостью памяти не более 64К байт можно отказаться от сегментации памяти и установить все сегментные регистры в нулевое состояние. При этом 16-разрядный адрес смещения будет фактически абсолютным адресом. При использовании системы с большой емкостью памяти (до 1М байт включительно) начальные адреса сегментов задаются исходя из особенностей структуры программного обеспечения и данных, хранимых в памяти. На рис. 1.4 приведен пример размещения сегментов памяти.
предыдущаяследующая© Copyright, 2009.
Для связи: info@dgs-srl.com.