Мегаобучалка Главная | О нас | Обратная связь


Реальный режим и его основные особенности



2015-12-06 383 Обсуждений (0)
Реальный режим и его основные особенности 0.00 из 5.00 0 оценок




 

В реальном режиме процессор старшей модели выполняет программы, составленные для базовой модели Intel 8086 или для реального режима процессоров младших моделей. С точки зрения программиста процессор старшей модели в R-режиме представляет собой более быстрый процессор Intel 8086 с расширением набора команд и регистров до уровня процессора старшей модели.

Основная особенность R-режима состоит в формировании физического адреса на основе простейшей модели сегментированной памяти (как в базовой модели Intel 8086). Физический адрес формируется как сумма двух 16-разрядных компонент, первая из которых представляет собой содержимое одного из сегментных регистров и трактуется как старшая часть базового адреса

сегмента, вторая компонента представляет собой внутрисегментное смещение (offset).

ФА (физический адрес) = seg*16 + offset

16 бит16 бит

20 бит

 

Размеры сегментов фиксированы и составляют 216байта = 64 Ki-байта (кибибайта) (по разрядности поля offset).

После включения процессора программа инициализации автоматически вводит его в R-режим. Аналогичная процедура выполняется и по сигналу сброса RESET. Переход из R-режима в защищенный режим (Р-режим) может осуществляться командой MOV, загружающей управляющий регистр CR0 новым состоянием с установленным крайним правым битом (РЕ = 1). Перед этим в R-режиме должна быть проведена загрузка необходимых регистров, в частности GDTR и IDTR (IDT – дескрипторная таблица прерываний – аналог таблицы векторов прерываний для защищенного режима) и таблиц, в частности GDT и IDT, используемых в Р-режиме.

Обратное переключение из Р-режима в R-режим выполняется также командой MOV, загружающей регистр CR0 новым состоянием со сброшенным битом РЕ. Предварительно необходимо выполнить некоторые подготовительные процедуры, обеспечивающие сохранение правильного функционирования при переходе к реальному режиму, в частности:

• отключить механизм страничной трансляции адресов, перейдя к использованию линейных адресов, равных физическим;

• установить для всех сегментов размер, равный 64 Ki-байта.

После выполнения команды MOV, сбрасывающей в CR0 бит РЕ, следует перейти к программе, выполняемой в R-режиме с помощью команды межсегментного перехода JMP FAR, которая очищает очередь команд (очередь команд – это необходимый элемент конвейера команд). Затем в сегментные регистры загружается новое содержимое, обеспечивающее формирование физических адресов в реальном режиме.

 

 

3.3. Основные отличия R-режима старших моделей Intel 80x86 от Intel 8086

 

  1. Возможность использования расширенной системы команд.

2. Возможность использования расширенного набора регистров. Допускается использование регистров, отсутствующих в базовой модели Intel 8086, в частности: дополнительных сегментных регистров (FS и GS), регистров системных адресов GDTR и IDTR (но не LDTR и TR), регистров отладки (DR0-DR7), управляющего регистра CR).

3. Возможность использования 32-разрядных операндов. По умолчанию в R-режиме используются 8- и 16-разрядные операнды. Возможность использования 32-разрядных операндов обеспечивается наличием специального префикса OS Operand Size перед командой.

4. Возможность использования 32-разрядных адресов обеспечивается за счет префикса AS Address Size перед командой. Однако, при выходе адреса за пределы стандартного сегмента генерируется прерывание стандартного типа 13 «нарушение общей защиты, выход за пределы сегмента».

5. Возможность использования физических адресов, превышающих 1 Mбайт. Максимальное значение физического адреса, формируемое в R-режиме при максимальных значениях 16-разрядных компонент равно:

 
 


seg*16 F F F F 0

offset + 0 F F F F

(1 0 F F E F)16 = (1114095)10

 

Так как разрядность шины адреса – 32 или даже 36 бит, то в R-режиме возможна адресация за пределами 1 Mi байта памяти.

В процессоре Intel 8086 используется 20-разрядная шина адреса, в связи с чем при суммировании подобных компонент производится так называемое «заворачивание» адреса, поэтому для данного примера на шину адреса будет выставлен адрес (0FFEF)16.

 



2015-12-06 383 Обсуждений (0)
Реальный режим и его основные особенности 0.00 из 5.00 0 оценок









Обсуждение в статье: Реальный режим и его основные особенности

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (383)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.006 сек.)