Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ASM.docx
Скачиваний:
3
Добавлен:
31.07.2019
Размер:
616.28 Кб
Скачать

Is Первую группу образуют пользовательские регистры, к которым относятся:

D регистры общего назначения EAX/AX/AH/AL, EBX/BX/BH/BL, EDX/DX/DH/DL, ЕСХ/

CX/CH/CL, ЕВР/ВР, ESI/SI, EDI/DI, ESP/SP предназначены для хранения данных

и адресов, программист может их использовать (с определенными ограни-

чениями) для реализации своих алгоритмов;

D сегментные регистры CS, DS, SS, ES, FS, GS используются для хранения адресов

сегментов в памяти;

П регистры сопроцессора ST(0), ST(1), ST(2), ST(3), ST(4), ST(5), ST(6), ST(7) пред-

назначены для написания программ, использующих тип данных с плаваю-

щей точкой (глава 17);

П целочисленные регистры MMX-расширения ММХО, MMXl, MMX2, ММХЗ, ММХ4,

ММХ5, ММХб, ММХ7;

D регистры MMX-расширения с плавающей точкой XMMO, XMM1, ХММ2, ХММЗ,,

ХММ4,ХММ5,ХММб,ХММ7;

D регистры состояния и управления (регистр флагов Е FLAGS/FLAGS и регистр-

указатель команды EIP/IP) содержат информацию о состоянии процессора,

исполняемой программы и позволяют изменить это состояние.

• Во вторую группу входят системные регистры, то есть регистры, предназначен-

ные для поддержания различных режимов работы, сервисных функций, а так-

же регистры, специфичные для определенной модели процессора. Перечислим

системные регистры, поддерживаемые IA-32:

D управляющие регистры CRO.. .CR4 определяют режим работы процессора и ха-

рактеристики текущей исполняемой задачи;

D регистры управления памятью GDTR, IDTR, LDTR и TR используются в защи-

щенном режиме работы процессора для локализации управляющих струк-

тур этого режима;

П отладочные регистры DRO.. .DR7 предназначены для мониторинга и управле-

ния различными аспектами отладки;

D регистры типов областей памяти MTRR используются для аппаратного управ-

ления кэшированием в целях назначения соответствующих свойств облас-

тям памяти;

П машинно-зависимые регистры MSR используются для управления процес-

сором, контроля за его производительностью, получения информации об

ошибках.

Почему в обозначениях многих из регистров общего назначения присутствует

наклонная разделительная черта? Это не разные регистры — это части одного боль-

шого 32-разрядного регистра, но их можно использовать в программе как отдель-

ные объекты. Зачем так сделано? Чтобы обеспечить работоспособность программ,

написанных для прежних 16-разрядных моделей процессоров фирмы Intel начи-

ная с i8086. Процессоры i486 и Pentium имеют в основном 32-разрядные регистры.

Их количество, за исключением сегментных регистров, такое же, как и у 18086,

но размерность больше, что и отражено в обозначениях — они имеют пристав-

ку е(extended).

Многие из приведенных регистров предназначены для работы с определенны-

ми вычислительными подсистемами процессора: сопроцессором, MMX-расшире-

ниями. Поэтому их целесообразно рассматривать в соответствующем контексте.

Так как первая часть учебника посвящена вопросам программирования целочис-

ленной подсистемы процессора, то в данной главее описываются регистры, обес-

печивающие ее функционирование. В дальнейшем при обсуждении новых вычис-

лительных подсистем процессора будут рассмотрены и другие регистры из пере-

численных ранее.

Регистры общего назначения

Регистры общего назначения используются в программах для хранения:

ш операндов логических и арифметических операций;

«i компонентов адреса;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]