Архитектура микропроцессоров
Теоретические вопросы
В скобках указаны номера глав/параграфов. Вопросы, помеченные звёздочками, являются дополнительными.
Обзор архитектуры микропроцессора, основные блоки. Регистры общего назначения, сегментные, управляющие, прочие. Структура команд. Типы данных и режимы адресации. (1.3, 1.4, 1.7, 3.2.1-6).
Обзор команд микропроцессоров Intel. Представление команд. Виды команд (арифметические, управления, сопроцессора, специальные и т.д.) (1.5, 1.7, 2.2, 2.B, 3.2.7).
Стек. Вызовы подпрограмм. Стековый фрейм, соглашения о передаче параметров. Порты ввода-вывода. (1.6.1-3, 1.6.5, 1.16)
Режимы работы процессора (реальный, защищенный, SMM, V86, IA-32e). Обзор системных регистров и структур данных. Переходы между режимами. (3.2, 3.5.1, 3.9.7-10, 3.20, 3.21, )
Аппаратная организация оперативной памяти. SRAM/DRAM, сигналы, DDR.
Программная организация оперативной памяти. Способы адресации и защиты. (3.3, 3.4, 3.5)
Сопроцессор, MMX. (1.8, 1.9, 3.12)
Наборы команд SSE, SSE2, SSE3, SSE4 (1.10, 1.11, 1.12.1-12, 1.14, 3.13)
Наборы команд AESNI, FMA, AVX, AVX2. (1.12.13, 1.14)
*Аппаратная транзакционная память (1.15)
Прерывания и исключения. Переход между уровнями привилегий. (1.6.4, 1.D, 1.E, 3.16)
Кеширование. (3.11)
Поддержка многозадачности. (3.7)
*Многопроцессорные конфигурации. (3.8)
*Вспомогательные режимы процессора: System Management, V86, SMX. (2.5, 3.20, 3.34)
Схема исполнения команд. Предсказание ветвлений. (1.2)
64-битные расширения. x86-64. (1.3.4, 1.3.7, 1.3.4.1, 1.6.2.5, 1.6.4.6, 1.7.2, 2.2.2 и т.д.)
*Поддержка виртуальных машин. (3.23-28)
Оптимизация кода под микропроцессоры Intel. (3.17, 3.18, 3.19)
*Альтернативные микропроцессорные архитектуры (Выбрать одну из: RISC-V, UltraSparc, Alpha, PA-RISC, Itanium, MIPS, ARM, PowerPC, Atom).