![]() Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Формирование физического адреса в режиме реальных адресов ⇐ ПредыдущаяСтр 8 из 8
Ф.А. 16 ОА
16 Сдвиг в лево на 4 бита 15 БАЗА сегмент регистра 0
Из сегментного регистра считается база которая сдвигается на 4 разряда в лево для получения базового адреса. К базовому адресу прибавляется смешение, в результате получается Ф.А.. Формирование физического адреса в защищенном режиме ФА 16 32 15 0 ОА
0 дескриптор 31
32
В защищенном режиме сегмент регистра содержит селектор на диск. Хранящий базовый адрес размер и атрибут защиты сегмента считанный 32-х разрядный БА. складывается со смещенным в результате получается ФА в ячейке. Таким образом если 8086 в дескриптором атрибутом сегмента был его начальный адрес то в защищенном режиме, в модели Х86 для описании много численных атрибутов предустановленна специальная строка дескриптора. Дескриптор- это 8байтовый блок содержащий атрибуты области линейных адресов сегмента. Логический адрес Формирование физического адреса при страничной сегментной организации памяти в 32-х битном режиме
Сегментный регистр 1 0 2 3 16 15 32
Линейный адрес
Смешение в странице Номер страницы в тс Номер тс и ктс + i Селектор Виртуальный адрес 0 1 2 Таблица дескрипторов сегментов Дескриптор i
Номер вертикальной страницы 12 10 10
Элемент ктсi 2 ф. а. операнда + ОП страница операнд + 1 0 Элемент ктi 216-1 i 0 1 2
Селектор размещается в сегментном регистре, основное его часть представляет собой номер (индекс), по которому в одной из специальных таблиц дескрипторов можно найти дескриптор данного сегмента.
Непосредственное Значение Структуры команд OA SIB MOD RIM КО
КО (код операции)- определяет тип операций которую процессор должен выполнить. MOD RIM делится на 2 части: · REGI КО- в двух операндах (командах) хранится код регистра общего назначения. · MOD IM-определяет способ адресации операнда, находящегося в ОЗУ, либо хранит код регистра содержащего операнд. SIP- используется для реализации косвенных способов адресации, состоит из 3 полей: · BASE- используется для указания базового регистра. · INDCX- используется для указания индексного регистра. · CS-хранится масштабный коэффициент модификации. OA- содержит относительный адрес операндов памяти. Непосредственное значение содержит представленный в команде операнд.
Таблица кодировки регистров
Способы адресации операндов Операнд располагается: · В ОЗУ · В регистрах процессора · В команде программ
· Непосредственная адресация- операнд хранится в команде в поле «непосредственное значение» MOV AX, OAIN · Регистровая адресация- операнд хранится в регистре процессора MOV AX, BX · Прямая адресация ОЗУ- операнд находится в ОЗУ, относительный адрес ячейки хранится в поле команды «смешение» или «относительный адрес» В мнемонике команды указаны имя переменой. · Косвенная адресация оперативной памяти- операнд находится в оперативной памяти, относительный адрес хранится в одном из косвенных регистров. В мнемонике указывается имя регистра в [ ]. В качестве косвенного регистра может использоваться индексный регистр, либо базовые регистры (BX или BP). В зависимости от используемого регистра можно различать: · Базовая адресация: MOV AX, [BP] · Индексная адресация: MOV AX, [SI]
ОЗУ
· Базово- индексная (смешенная): MOV AX, [BX+SI) MOVAX, [BP] [DI].Использует один их индексный и один базовый регистр. Относительный адрес получается сложенным их значений ОЗУ
· ОЗУ · Косвенная со смешением: содержимому косвенного регистра или их сумме добавляют значение хранящегося в поле команды «косвенного значения» MOV AX, [BX+5] MOV AX, [SI+0A] MOV AX, [SI+BP+5] Косвенная адресация применяется для обработки массивов и различных последовательностей элементов. Для этого операнды команд должны иметь одинаковую разрядность. Один из операндов должен быть регистром процессора. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2018-04-12; просмотров: 684. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |