Бит | Название | Расшифровка | Назначение |
0 | CF | Carry flag | Флаг переноса |
1 | 1 | 1 | Установлен в "1" |
2 | PF | Parity flag | Флаг четности |
3 | 0 | 0 | Установлен в "0" |
4 | AF | Auxiliary flag | Флаг вспомогательного переноса |
5 | 0 | 0 | Установлен в "0" |
6 | ZF | Zero flag | Флаг нуля |
7 | SF | Sign flag | Флаг знака |
8 | TF | Trace flag | Флаг трассировки |
9 | IF | Interrupt flag | Флаг разрешения прерываний |
10 | DF | Direction flag | Флаг направления |
11 | OF | Overflow flag | Флаг переполнения |
12,13 | IOPL | I/O Privilege Level | Уровень привелегий инструкций ввода-вывода |
14 | NT | Nested Task Flag | Флаг вложенной задачи |
15 | 0 | 0 | Установлен в "0" |
16 | RF | Resume flag | Флаг возобновления |
17 | VM | Virtual-8086 Mode | Разрешение виртуального режима процессора 8086 |
18 | AC | Alignment Check | Разрешение проверки выравнивания указателей на ОЗУ |
19 | VIF | Virtual Interrupt Flag | Виртуальный образ флага IF |
20 | VIP | Virtual Interrupt Pending | Указывает на наличие необслуженного прерывания |
21 | ID | Identification Flag | Указывает на поддержку инструкции Команда CPUID |
22-31 | 0 | 0 | Установлены в "0" |
Название | Расшифровка | Назначение |
GDTR | Global Descriptor Table Register | Содержит 32-битный базовый адрес и 16-битный размер таблицы GDT |
LDTR | Local Descriptor Table Register | Содержит 16-битный сегментный селектор, 32-битный базовый адрес, 16-битный размер LDT и дескриптор атрибутов |
IDTR | Interrupt Descriptor Table Register | Содержит 32-битный базовый адрес и 16-битный размер таблицы IDT |
TR | Task Register | Содержит 16-битный сегментный селектор, 32-битный базовый адрес, 16-битный размер TSS и дескриптор атрибутов |
Регистр CR0
Бит | Название | Расшифровка | Назначение |
0 | PE | Protection Enable | Разрешение защищенного режима |
1 | MP | Monitor Coprocessor | Управляет взаимодействием инструкции (F)WAIT с флагом TS |
2 | EM | Emulation | Указывает на отсутствие математического сопроцессора |
3 | TS | Task Switched | Разрешает сохраниение контекста FPU, MMX, SSE и SSE2 |
4 | ET | Extension Type | Установлен в "1" |
5 | NE | Numeric Error | Разрешает внутренний механизм обработки ошибок сопроцессора |
16 | WP | Write Protect | Запрещает процедуром на уровне супервизора писать в страницы, доступные только для чтения на уровне пользователя |
18 | AM | Alignment Mask | Разрешает автоматическую проверку выравнивания |
29 | NW | Not Write-through | |
30 | CD | Cache Disable | Запрет кэширования ОЗУ |
31 | PG | Paging | Разрешает страничную организацию памяти |
Регистр CR4
Бит | Название | Расшифровка | Назначение |
0 | VME | Virtual-8086 Mode Extensions | Разрешает обработку прерываний и исключений в виртуальном режиме процессора 8086 |
1 | PVI | Protected-Mode Virtual Interrupts | Разрешает аппаратную поддержку для флага VIF в защищенном режиме |
2 | TSD | Time Stamp Disable | Ограничивает применение инструкции RDTSC привелегией уровня 0 |
3 | DE | Debugging Extensions | Обращение к отладочным регистрам вызывает исключение "недопустимый код операции" |
4 | PSE | Page Size Extensions | Разрешает 4-х мегабайтные страницы |
5 | PAE | Physical Address Extension | Разрешает механизм страничной адресации для ссылок на 36-битные физические адреса |
6 | MCE | Machine-Check Enable | Разрешает исключение "машинный контроль" |
7 | PGE | Page Global Enable | Разрешает использование глобальных страниц |
8 | PСE | Performance-Monitoring Counter Enable | Разрешает исключение инструкции RDPMC для программ или процедур, работающих при любом уровне защиты |
9 | OSFXSR | Operating System Support for FXSAVE and FXRSTOR instructions | Этот флаг предварительно формирует следующие функции:
- указывает ПО, что операционная система поддерживает использование инструкций FXSAVE и FXRSTOR,
- разрешает инструкции FXSAVE и FXRSTOR, чтобы сохранить и восстановить содержание регистров XMM и MXCSR вместе с регистрами FPU и MMX,
- разрешает процессору выполнять любую из инструкций SSE и SSE2, за исключением PAUSE, PREFETCHh, SFENCE, LFENCE, MFENCE, MOVNTI и CLFLUSH.
|
10 | OSXMMEXCPT | Operating System Support for Unmasked SIMD Floating-Point Exceptions | Указывает, что операционная система поддерживает обработку немаскируемых исключений SIMD-инструкций с плавающей запятой через обработчик исключений, который вызывается, когда происходит такое исключение. |
Адрес регистра | Имя регистра | Описание бита |
16-ричный | 10-ричный |
0h | 0 | P5_MC_ADDR | Адрес ошибки |
1h | 1 | P5_MC_TYPE | Тип ошибки |
10h | 16 | TSC | time-stamp counter |
17h | 23 | IA32_PLATFORM_ID | Идентификатор платформы |
| | 49:0 | зарезервировано |
| | 52:50 | Идентификатор платформы.
52 | 51 | 50 | |
0 | 0 | 0 | Флаг процессора 0 |
0 | 0 | 1 | Флаг процессора 1 |
0 | 1 | 0 | Флаг процессора 2 |
0 | 1 | 1 | Флаг процессора 3 |
1 | 0 | 0 | Флаг процессора 4 |
1 | 0 | 1 | Флаг процессора 5 |
1 | 1 | 0 | Флаг процессора 6 |
1 | 1 | 1 | Флаг процессора 7 | |
| | 63:53 | Зарезервированно |
1Bh | 27 | APIC_BASE | |
| | 7:0 | Зарезервированно |
| | 8 | Процессор является загрузочным |
| | 9:10 | Зарезервированно |
| | 11 | Глобальное разрешение/запрещение APIC |
| | 35:12 | Базовый физический адрес APIC |
| | 63:36 | Зарезервированно |
2Ah | 42 | EBL_CR_POWERON | Конфигурация по включению питания |
| | 0 (R/W) | Зарезервированно |
| | 1 (R/W) | ECC для данных |
| | 2 (R/W) | Проверка ответа (в режиме FRC) |
| | 3 (R/W) | Управление линией AERR# |
| | 4 (R/W) | Разрешение линии BERR# для запросов инициатора шины |
| | 5 | Зарезервированно |
| | 6 (R/W) | Разрешить управление линией BERR# при внутренних ошибках инициатора |
| | 7 (R/W) | Управление линией BINIT# |
| | 8 (R) | Разрешение тристабильных выходов |
| | 9 (R) | Выполнение BIST |
| | 10 (R) | Слежение за линией AERR# |
| | 11 | Зарезервирован |
| | 12 (R) | Слежение за линией BINIT# |
| | 13 (R) | Глубина очереди(1=1, 0=8) |
| | 14 (R/O) | Вектор сброса(1=1Мб, 0=4Гб) |
| | 15 (R/O) | Режим FRC |
| | 17:16 (R) | Чтение идентификатора кластера APIC |
| | 19:18 | Зарезервированно |
| | 21:20 | Идентификатор симметричного арбитража |
| | 24:22 (R) | Коэффициент тактовой частоты |
| | 25 | Зарезервированно |
| | 26 (R/W) | Низкое энергопотребление |
| | 63:27 | Зарезервированно |
33h | 51 | TEST_CTL | Регистр управления тестированием |
| | 29:0 | Зарезервированно |
| | 30 | Запрет потокового буфера |
| | 31 | Запрет LOCK# для разделяемого блокированного доступа |
79h | 121 | BIOS_UPDT_TRIG | Регистр триггера обновления BIOS |
88h | 136 | BBL_CR_D0[63:0] | Используется кэшем 2-го уровня |
89h | 137 | BBL_CR_D1[63:0] | Используется кэшем 2-го уровня |
8Ah | 138 | BBL_CR_D2[63:0] | Используется кэшем 2-го уровня |
8Bh | 139 | BIOS_SIGN/BBL_CR_D3[63:0] | Регистр сигнатуры обновления BIOS/Используется кэшем 2-го уровня |
C1h | 193 | PerfCtr0 (PERFCTR0) | |
C2h | 194 | PerfCtr0 (PERFCTR0) | |
FEh | 254 | MTRRcap | |
116h | 278 | BBL_CR_ADDR [63:0] | Используется кэшем 2-го уровня |
118h | 280 | BBL_CR_DECC[63:0] | Используется кэшем 2-го уровня |
119h | 281/td> | BBL_CR_CTL | Конфигурирование кэша 2-го уровня |
11Ah | 282 | BBL_CR_TRIG | Инициализация конфигурационных регистров кэша 2-го уровня |
11Bh | 283 | BBL_CR_BUSY | Индикатор занятости конфигурированием кэша 2-го уровня |
11Eh | 286 | BBL_CR_CTL3 | Конфигурационный регистр кэша 2-го уровня |
174h | 372 | SYSENTER_CS_MSR | Регистр CS для CPL 0 |
175h | 373 | SYSENTER_ESP_MSR | Указатель на стек для CPL 0 |
176h | 374 | SYSENTER_EIP_MSR | Точка входа CPL 0 |
179h | 377 | MCG_CAP | |
179Ah | 378 | MCG_STATUS | |
179Bh | 379 | MCG_CTL | |
186h | 390 | PerfEvtSel0 (EVNTSEL0) | |
187h | 391 | PerfEvtSel1 (EVNTSEL1) | |
1D9H | 473 | DEBUGCTLMSR | Управление отладкой |
1DBh | 475 | LASTBRANCHFROMIP | |
1DCh | 476 | LASTBRANCHTOIP | |
1DDh | 477 | LASTINTFROMIP | |
1DEh | 478 | LASTINTTOIP | |
1E0h | 480 | ROB_CR_BKUPTMPDR6 | |
200h | 512 | MTRRphysBase0 | |
201h | 513 | MTRRphysMask0 | |
202h | 514 | MTRRphysBase1 | |
203h | 515 | MTRRphysMask1 | |
204h | 516 | MTRRphysBase2 | |
205h | 517 | MTRRphysMask2 | |
206h | 518 | MTRRphysBase3 | |
207h | 519 | MTRRphysMask3 | |
208h | 520 | MTRRphysBase4 | |
209h | 521 | MTRRphysMask4 | |
20Ah | 522 | MTRRphysBase5 | |
20Bh | 523 | MTRRphysMask5 | |
20Ch | 524 | MTRRphysBase6 | |
20Dh | 525 | MTRRphysMask6 | |
20Eh | 526 | MTRRphysBase7 | |
20Fh | 527 | MTRRphysMask7 | |
250h | 592 | MTRRfix64K_00000 | |
258h | 600 | MTRRfix16K_80000 | |
259h | 601 | MTRRfix16K_A0000 | |
268h | 616 | MTRRfix4K_C0000 | |
269h | 617 | MTRRfix4K_C8000 | |
26Ah | 618 | MTRRfix4K_D0000 | |
26Bh | 619 | MTRRfix4K_D8000 | |
26Ch | 620 | MTRRfix4K_E0000 | |
26Dh | 621 | MTRRfix4K_E8000 | |
26Eh | 622 | MTRRfix4K_F0000 | |
26Fh | 623 | MTRRfix4K_F8000 | |
2FFh | 767 | MTRRdefType | |
400h | 1024 | MC0_CTL | |
401h | 1025 | MC0_STATUS | |
402h | 1026 | MC0_ADDR | |
403h | 1027 | MC0_MISC | Определен в архитектуре MCA, но не предусмотрен в P6 |
404h | 1028 | MC1_CTL | |
405h | 1029 | MC1_STATUS | |
406h | 1030 | MC1_ADDR | |
407h | 1031 | MC1_MISC | Определен в архитектуре MCA, но не предусмотрен в P6 |
408h | 1032 | MC2_CTL | |
409h | 1033 | MC2_STATUS | |
40Ah | 1034 | MC2_ADDR | |
40Bh | 1035 | MC2_MISC | Определен в архитектуре MCA, но не предусмотрен в P6 |
40Ch | 1036 | MC4_CTL | |
40Dh | 1037 | MC4_STATUS | |
40Eh | 1038 | MC4_ADDR | |
40Fh | 1039 | MC4_MISC | Определен в архитектуре MCA, но не предусмотрен в P6 |
410h | 1040 | MC3_CTL | |
411h | 1041 | MC3_STATUS | |
412h | 1042 | MC3_ADDR | |
413h | 1043 | MC3_MISC | Определен в архитектуре MCA, но не предусмотрен в P6 |
Назначение отладочных регистров
Регистр | Назначение |
DR0 | Содержит 32-битный линейный адрес нулевой точки останова |
DR1 | Содержит 32-битный линейный адрес первой точки останова |
DR2 | Содержит 32-битный линейный адрес второй точки останова |
DR3 | Содержит 32-битный линейный адрес третьей точки останова |
DR4 | Зарезервирован, если отладочные расширения разрешены |
DR5 | Зарезервирован, если отладочные расширения разрешены |
DR6 | Регистр состояния отладки. Описывает отладочные условия, которые были во время последнего отладочного исключения |
DR7 | Регистр управления отладкой. Разрешает или запрещает точки останова и определяет условия точек останова |
Регистр DR6
Бит | Название | Расшифровка | Назначение |
0-3 | B0 - B3 | breakpoint condition detected | Указывают, что условие, связанное с точкой останова, удовлетворялось, когда произошло отладочное исключение |
4-12 | Зарезервированно | | Не определяются |
13 | BD | debug register access detected | Указывает, что следующая инструкция обращается к отладочным регистрам |
14 | BS | single step | Указывает, что отладочное исключение произошло при пошаговом выполнении |
15 | BT | task switch | Указывает, что отладочное исключение произошло в результате переключения задачи, когда флаг T в TSS новой задачи был установлен |
16-31 | Зарезервированные биты | | |
Примечание. В защищенном режиме в этих регистрах хранятся не сами сегменты, а селекторы сегментов.