Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Сегментные регистры и трансляция сегментов





При использовании сегментированной математической памяти необходима процедура преобразования адреса сегментированной (математической памяти) в адреса линейной физической памяти при каждом обращении к памяти.

Адрес объекта в сегментированной памяти задается двумя компонентами базовым адресом сегмента и смещением в сегменте. В команде задается только смещение в сегменте. Базовый адрес сегмента задается содержимым одного из четырех сегментных регистров (рис. 2.3).

 

МП IA-16 содержали 4 сегментных регистров по 16 бит:

· ES – дополнительного сегмента данных,

· CS – сегмента кода,

· SS – сегмента стека,

· DS – сегмента данных,

 

  Базовые адреса сегментов        
  ES – Доп. сегмент данных    
  CS – Сегмент кода    
  SS – Сегмент стека    
  DS – Сегмент данных    
Рис.2.3. Сегментные регистры IA-16.

 

Использование регистров CS, SS, DS и ES возможно по умолчанию и с использованием префикса замены сегмента. Базовые адреса сегментов используются для преобразования адреса сегментированной памяти в линейную.

Емкость физической памяти в МП IA-16 позволяет разместить одновременно до 16 полных сегмента по 64 Кбайт (216 байт). Но одновременно, без изменения содержимого сегментных регистров, в реальном режиме IA-16 можно обращаться только к четырем, по числу сегментных регистров.

Переход на использование остальных сегментов (кроме кодовых), размещенных в оперативной памяти можно производить:

· при помощи загрузкой базовых адресов в соответствующие сегментные регистры командами пересылки (mov),

· командами загрузки сегментных регистров (LES, LDS и LSS).

Все операции работы со стеком ориентированы на словарную организацию стека. По этой причине адрес указателя стека и базовый адрес сегментного регистра SS должны бить четными.

Переходы на новые кодовые сегменты производятся командами межсегментных передач управления.

Преобразование адреса сегментированной памяти в адрес линейной (плоской) памяти производится процедурой трансляции сегмента: сложением базового адреса сегмента с адресом операнда в сегменте.

Но сегментные регистры - 16-и битные, а базовые адреса должны быть 20 - битными. Поэтому при использовании сегментных регистров их содержимое умножается на 16, добавлением четырех нулей после младшего разряда

Таким образом, адрес в сегменте математической памяти МП IA-16 задается тремя компонентами: B (база), X (индекс) и disp (смещение).

Для вычисления адреса обращения к физической памяти (при сегментированной структуре математической памяти) требуются, по крайней мере, две процедуры:

· Вычисления по компонентам (В), (Х) и disp прямого адреса в сегменте.

· Преобразования адреса в сегменте сегментированной памяти в адрес линейной физической памяти.

Результатом первого преобразования адреса является получение одной компоненты логического адреса – смещения в сегменте, результатом второго преобразования – получения смещения в линейной памяти.

Для уменьшения неопределенности при использовании вышеописанных смещений используют термины:

· disp – для обозначения смещения в кадре сегмента,

· offset – для обозначения смещения в сегменте,

· линейный адрес – для обозначения адреса (смещения) в линейной (не сегментированной) памяти.

Схема вычисления смещения в сегменте (offset)по компонентам адреса, включая смещение в кадре сегмента (disp), и трансляции сегмента (вычисление линейного адреса в несегментированной памяти) представлена на рис.2.4.

Трансляция сегментов связана с проблемой с (20-й адресной шиной) оперативной памяти. Эта проблема заключается в следующем.

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

А max = 220 -24 –1.при использовании этого адреса, как базового адреса сегмента, то в оставшиеся ячейки памяти можно будет записать только 16 слов. В МП с 20-й битовой адресной шиной, остальные данные сегмента запишутся в ячейки оперативной памяти, начиная с нулевого адреса.

В МП IA-32 при работе в реальном режиме (эмуляции МП IA-16) приходится учитывать это явление, используя прием (заворота) 20-й шины адреса.

В защищенном режиме, если включен механизм виртуальной памяти, происходит еще одно преобразование адреса – трансляции страниц.

В (МП IA-16) – трансляция страниц (виртуальная память) не реализована.

Указатель команд IP.

Это 16-ти битный регистр – счетчик, вычисляющий адрес следующей команды (в кодовом сегменте) по числу байт в текущей команде. Программе указатель команд доступен только частично по командам передачи управления. В начальное состояние IP устанавливается автоматически в процедуре включения процессора. Прямой доступ к IP по записи или чтению не предусмотрен (но возможен доступ к содержимому IP после его копирование в стеке).

 

Регистр состояния (флагов).

Это 16-ти битный регистр, в котором сгруппированы управляющие сигналы режимов работы основных систем процессора и флаги кодов условий для условных команд передач управления.

Флаги кодов условий передач управления:

· CF – арифметический перенос в старшие разряды,

· PF – четность (наличие четности кода результата),

· AF – дополнительный (десятичный) перенос из младшей тетрады,

· ZF – нулевой результат,

· SF – знак результата (для дополнительного кода),

· OF – переполнение,

· TF – трассировка (прерывание после выполнения каждой команды для работы в режиме отладки программы),

· IF – разрешение прерывания,

· DF – направление обработки строк.

Вопросы для самопроверки:

1. Основные группы пользовательских регистров,

2. Группа регистров данных в составе РОН МП IA-16?

3. Группа регистров адресов в составе РОН МП IA-16

4. Предназначение регистра IP в МП IA-16,

5. Предназначение регистра F (флагов) в МП IA-16,

6. Основные биты кода условий передачи управления в регистра F (флагов),

7. Назначение сегментных регистров в МП IA-16,

8. Число сегментных регистров в МП IA-16,

9. Спецификации сегментных регистров в МП IA-16,

10. Команды загрузки сегментных регистров в МП IA-16,

11. Причины использования задания адреса в сегменте тремя компонентам,

12. Компоненты адреса, используемые при задании адресов объектов в сегменте памяти,

13. Компонента disp при задании адреса в МП IA,

14. Компонента offset при задании адреса в МП IA,

15. Термин " линейный адрес" при задании адреса в МП IA,

16. Процедура трансляции сегмента при обращении к памяти в МП IA-16.

 







Дата добавления: 2014-11-12; просмотров: 1040. Нарушение авторских прав; Мы поможем в написании вашей работы!




Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...


Картограммы и картодиаграммы Картограммы и картодиаграммы применяются для изображения географической характеристики изучаемых явлений...


Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...


Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Неисправности автосцепки, с которыми запрещается постановка вагонов в поезд. Причины саморасцепов ЗАПРЕЩАЕТСЯ: постановка в поезда и следование в них вагонов, у которых автосцепное устройство имеет хотя бы одну из следующих неисправностей: - трещину в корпусе автосцепки, излом деталей механизма...

Понятие метода в психологии. Классификация методов психологии и их характеристика Метод – это путь, способ познания, посредством которого познается предмет науки (С...

ЛЕКАРСТВЕННЫЕ ФОРМЫ ДЛЯ ИНЪЕКЦИЙ К лекарственным формам для инъекций относятся водные, спиртовые и масляные растворы, суспензии, эмульсии, ново­галеновые препараты, жидкие органопрепараты и жидкие экс­тракты, а также порошки и таблетки для имплантации...

Растягивание костей и хрящей. Данные способы применимы в случае закрытых зон роста. Врачи-хирурги выяснили...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Различие эмпиризма и рационализма Родоначальником эмпиризма стал английский философ Ф. Бэкон. Основной тезис эмпиризма гласит: в разуме нет ничего такого...

Studopedia.info - Студопедия - 2014-2026 год . (0.011 сек.) русская версия | украинская версия