Первая инструкция, которую процессор выбирает и исполняет после аппаратного сброса , Расположена по адресу Fffffffoh. Этот Адрес находится на 16 байтов ниже верхнего предела физической памяти, адресуемой процессором, и на него должна отображаться стираемая программируемая ROM, содержащая код инициализации программного обеспечения. В реальном режиме адрес Fffffffoh Находится за пределами первого мегабайта адресов памяти, которые процессор может адресовать. Для доступа к этому адресу, процессор инициализируется следующим образом. Регистр cs состоит из двух частей — видимой части — так называемого селектора сегмента И скрытой, или теневой части — так называемого базового адреса . В реальном режиме базовый адрес обычно формируется путем смещения 16-разрядного значения селектора сегмента на 4 разряда влево, за счет чего получается 20-разрядный базовый адрес. Однако во время аппаратного сброса часть регистра cs, соответствующая селектору сегмента, получает значение Foooh, А часть, соответствующая базовому адресу — значение Ffffooooh. Поэтому начальный адрес формируется путем сложения базового адреса со значением в регистре сегментный регистр имеет соответствующий дескрипторный кэш. Когда после аппаратного сброса новое значение впервые заносится в регистр cs, процессор будет следовать обычным правилам преобразования адресов 5 Реальном режиме Чтобы гарантировать, что базовый адрес в регистре cs не будет изменен д0 Тех пор, пока код инициализации в ROM не завершит исполнение, этот код Не должен содержать инструкций far jump или far call или позволять преры. вания, так как эти события привели бы к изменению значения селектора cs.
Кроме того, немало интересной информации можно найти и в статьях Doctor Dobb’s Journal, посвященных микропроцессорам В частности, статья «Аномалии дескрипторного кэша» приводит подробное объяснение особенностей дескрипторного кэша и заслуживает цитирования.
Рубрика: Женский интерес