Общая структура кода команды МП 80386 — КиберПедия 

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

Общая структура кода команды МП 80386

2020-11-03 136
Общая структура кода команды МП 80386 0.00 из 5.00 0 оценок
Заказать работу

  масштаб

 SS=00 1

 SS=01 2

 SS=10 4

 SS=11 8

 Префиксы- модифицирует операцию следующей команды. Префикс операнда –переключает 16 или 32 битные операнды. Префикс размера адреса- переключает формирование 16 или 32 размеры адреса. Код операции- для новых команд 2байт, 1байт- 0Fh адрес новой команды. Значение служебных полей W,D,S см. i8086. Пост-байт – вместе с байтом SIBопределяют метод адресации. Байт SIB-байт масштабируемого индекса служит для представления сложных структур данных и имеет следующий формат: ss-index-BASE. Поле index- задает индексные регистры.

 Index Регистры

 000 EAX

 001 ECX

 010 EDX

 011 EBX

 100 ----

 101 EBP

 110 ESI

 111 EDI

 

 Mod Base  операнд

 00 000 DS:[EAX+S*I]

 00 001 DS:[ECX+S*I]

 00 010 DS:[EDX+S*I]

 00 011 DS:[EBX+S*I]

 00 100 DS:[ESP+S*I]

 00 101 DS:[EBP+disp32+S*I]

 00 110 DS:[ESI+S*I]

 00 111 DS:[EAX+S*I+disp8]

 ----- ------ ----------

 10 000 DS:[EAX+S*I+disp32]

 

27. Методы адресации I80386:

Поддерживается 11 основных режимов адресаций. Операнды 8,16,32 бита. Регистровая и непосре- дственная адресация в обычном варианте. Остальные в режиме адресации обеспечивают вычисление исполнительного адреса: EA = база +(индекс*масштаб)+смещение. СМЕЩЕНИЕ- 8 или 32 битное значение, задаваемое в команде. БАЗА-содержимое любого из регистров общего назначения. ИНДЕКС-содержимое любого из РОН, кроме р-ра ESP. МАСШТАБ- определяется значением специального байта, следящего за кодом операции SIB. Значение может быть равно 1,2,4,8. Использование масштаба позволяет сослаться в программе на элементы определенной длины.

 

32.Страничная организация памяти:

Основное назначение- поддержка виртуальной памяти. Вся память делится на страницы размером 4Кб. Всего на адресное пространство имеем 1 Мб страниц.

Линейный Виртуальный адрес
№ страницы Смещение внутри страниц
20разрядов 12 разрядов

 Для отображения страницы в физическую используется таблица страниц, которая представляет собой массив дескрипторов страниц.Любой дескриптор имеет размер 4б и содержит информацию о номере физической страницы и ее параметров. Только часть виртуальных страниц находится в памяти, остальные на диске.

 
Недостаток: на 1 Мб страниц при размере страницы 4 Кб потребляет 4 Мб памяти под таблицу страниц, такая таблица может потребоваться для любых задачи. Имеем нерациональное использование памяти, поэтому МП использует двухэтапное преобразование линий внутреннего адреса.

 

 

 


 

Вся таблица страниц делится на разделы по 1024 дескриптора. Один раздел занимает 1 физическую страницу. Всего мы имеем 1024 раздела. Для обращения к разделам строится каталог разделов, который так же занимает 1 стр. каталог разделов всегда находится системной памяти и адресуется CR3. Поле номера страницы линейного виртуального адреса делится на 2 поля по 10 разделов. Поле номера раздела, поле номера стр. в разделе. Поле номера раздела задает № физической страницы, в которой находится нужный раздел. Нужная страница загружается в память и оттуда выбирается № физической страницы из дескриптора,на которую указывает поле номера страницы линейного виртуального адреса.

 

34. Средства защиты по привелегиям:

1.Привилегированные команды – такие команды, которые модифицируют состояние флага IF, которые изменяют сегментацию или влияют на механизм защиты. Эти команды разрешимы только на уровне привилегий «0» - PL0. При попытке выполнить одну из этих программ в процедуре нижнего уровня генерируется нарушение общей защиты (прерывание с кодом 13) и О.С. прекращает выполнение программы.

2.Правило обращения к данным. Не разрешается использование данных с более высоким уровнем привилегий.

3.Правило передачи управления внешнему коду: не разрешается передавать управление с помощью команд call и jmp к коду, уровень привилегий которого не равен текущему.

Замечание: из последнего правила есть исключения, необходимое для использования сервиса ОС.

 

 


Поделиться с друзьями:

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.006 с.