Актуальная информация узи аппарат samsung на нашем сайте.
Адресуемая память (адресное пространство) представляет собой область из 1М байт. Физический адрес памяти имеет длину 20 бит (см. рисунок ниже). Для формирования физических адресов используется механизм сегментации памяти. Пространство памяти 1М доступно процессору через 4 "окна" (сегмента), каждый размером 64 Кбайт. Начальный адрес каждого сегмента содержится в одном из четырех сегментных регистров. Команды обращаются к байтам и словам в пределах сегментов, используя относительный (внутрисегментный) адрес.
Для того, чтобы не увеличивать чрезмерно длину команды, большая часть команд в системе команд х86 описывает не более двух операндов. Ниже представлены основные форматы команд (см. следующий рисунок).
В этой сложной структуре КОП может занимать один или два байта. Адресная часть команды может либо вообще отсутствовать, либо включать в свой состав от одного (ModR/M) до 12 байтов.
Адресная информация, закодированная в такой сложной команде, может содержать следующие сведения:
Длина префикса 1 байт. Имеется всего 5 префиксов для Х86
КОП — код операции. Длина 1 байт. 0-й бит КОП во многих (но не во всех) командах показывает, производится ли операция со словом (=1) или с байтом (=0). 1-й бит КОП в двухадресных командах указывает, какой из операндов является приемником.
Длина 1 байт. Постбайт адресации показывает, где находятся операнды. Один из операндов (первый) может быть расположен в регистре (регистровая адресация) или в произвольной ячейке ОЗУ (все способы адресации кроме непосредственной). Второй операнд может находиться в теле команды (непосредственная адресация) или в регистре (регистровая адресация). Каждый из операндов может быть как источником, так и приемником (за исключением непосредственной адресации: непосредственный операнд может быть только источником). Структура системы адресации несимметрична.
Поля mod и r/m задают место расположения первого операнда. Поле reg задает положение второго операнда.
Значения поля mod:
11 — операнд в регистре (при остальных mod операнд в ОЗУ, а регистры, на которые указывают поля mod и r/m, содержат компоненты адреса операнда);
10 — смещение два байта (без знака);
01 — смещение один байт (со знаком);
00 — смещение в команде отсутствует.
Длина 1 байт (при mod-01) или 2 байта(при mod=10).
Длина 1 или 2 байта.
Рисунок иллюстрирует различные способы адресации.
В 32-х разрядных процессорах для кодирования расширенных регистров появился в формате после постбайта SIB-байт. Байт SIB включает в себя следующие поля: