Вы находитесь на странице: 1из 3

21. Перечислите группы префиксов команды.

Группа 1: Префиксы блокировки и повторения


Группа 2: Префиксы замены сегмента, Префиксы анализа переходов
Группа 3: Префикс изменения разрядности операнда
Группа 4: Префикс изменения разрядности адреса
Группа 1: Группа 2:
Префиксы блокировки и повторения: Префиксы замены сегмента:
– F0h – LOCK – 2Eh – CS
– F2h – REPNE/REPNZ – 36h – SS
– F3h – REP или REPE/REPZ – 3Eh – DS
– 26h – ES
– 64h – FS
– 65h – GS
Префиксы анализа переходов (Branch
hints):
– 2Eh – Branch not taken
– 3Eh – Branch taken
Группа 3: Группа 4:
Префикс изменения разрядности Префикс изменения разрядности
операнда: адреса:
– 66h – 67h

22. Поясните формат двухоперандной команды.

 Instruction Prefixes – префиксы команд (необязательные байты для кодирования


 особенностей выполнения команды (повторение команды . и т.д.));
 OpCode – код операции (256 операций можно определить);
 ModR/M – постбайт, служит расширением OpCode, определяет местоположение
операндов:
- Поля mod и r/m задают место расположения первого операнда
- Поле reg задает положение второго операнда
 SIB – байт масштабируемого индекса базы, увеличивает количество способов
адресации, служит для представления сложных структур памяти:
- Scale – масштабный коэффициент, для ссылки на элемент массива длиной 1,2,4
или 8 байт
- Index задает номер одного из РОН, используемого в качестве индексного регистра
- Base в комбинации с полем mod постбайта указывает регистр базы и смещение
для индексированных операндов
 Displacement – смещение эффективного адреса;
 Immediate – непосредственный операнд;

23. Поясните назначение полей постбайта и байта SIB.


 ModR/M – постбайт, служит расширением OpCode, определяет местоположение
операндов;
 SIB – байт масштабируемого индекса базы, увеличивает количество способов
адресации, служит для представления сложных структур памяти:
- Scale – масштабный коэффициент, для ссылки на элемент массива длиной 1,2,4
или 8 байт
- Index задает номер одного из РОН, используемого в качестве индексного регистра
- Base в комбинации с полем mod постбайта указывает регистр базы и смещение
для индексированных операндов

24. Объясните возможные значения поля Mod постбайта.


11 — операнд в регистре (при остальных mod операнд в ОЗУ, а регистры, на которые
указывают поля mod и r/m, содержат компоненты адреса операнда);
10 — смещение два байта (без знака);
01 — смещение один байт (со знаком);
00 — смещение в команде отсутствует.

25. Каким образом в процессоре задается разрядность операндов и адресов памяти?


Разрядность операнда и адреса памяти (8, 16 или 32 разряда) зависит от режима работы
процессора и может изменяться соответствующим префиксом.
 Группа 3: Префикс изменения разрядности операнда: 66h
 Группа 4: Префикс изменения разрядности адреса: 67h

26. Как процессор обрабатывает префиксы REX?


Определяют:
- регистры GPR и SSE;
- 64-битный размер операнда;
- регистры расширенного управления.
Набор 64-битных приставок REX, которые не столько расширяют возможности
инструкций, сколько служат для кодирования дополнительной информации в четырех
своих полях.

27. Какие регистры могут использоваться в качестве базовых в 16- и 32-разрядном


режимах?
Процессор может использовать режимы 32-битной или 16-битной адресации.
Режим 16-битной адресации соответствует режимам процессоров 8086 и 80286, при
этом в качестве компонентов адреса используются младшие 16 бит соответствующих
регистров.
Режим 32-битной адресации использует расширенные 32-разрядные регистры и имеет
дополнительные режимы, использующие масштабирование индекса.
28. Чем является арифметический сопроцессор по отношению к CPU?
Представляет собой аппаратное расширение ЦП.

29. Назовите основные группы команд FPU.


–пересылки данных;
–арифметические;
–сравнения;
–трансцендентных операций;
–загрузки констант;
–управления FPU.

30. Где могут располагаться операнды блока FPU?


Источники данных для команд FPU:
– основная память (ОП) компьютера;
– внутренние регистры FPU.