Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Набор регистров микропроцессораНАБОР РЕГИСТРОВ МИКРОПРОЦЕССОРА
Пользовательские регистры - Регистры общего назначения - Сегментные регистры - Регистр флагов - Регистр управления
Программная модель микропроцессора содержит 32 регистра, которые можно разделить на две группы: - 16 пользовательских регистров; - 16 системных регистров.
ПОЛЬЗОВАТЕЛЬСКИЕ РЕГИСТРЫ
Пользовательскими регистры называются потому, что программист может их использовать при разработке программ.
К пользовательским регистрам относятся:
1) восемь 32-битных регистров, которые могут использоваться программистами для хранения данных и адресов (регистры общего назначения) eax/ax/ah/al ebx/bx/bh/bl edx/dx/dh/dl ecx/cx/ch/cl esi/si edi/di ebp/bp esp/sp 2) шесть регистров сегментов: cs, ds, ss, es, fs, gs 3) регистр состояния (регистр флагов) eflags/flags; 4) регистр управления (регистр указателя команды) eip/ip.
** наклонной разделительной чертой обозначены части одного большого 32-разрядного регистра. Они могут использоваться в программе как отдельные объекты.
Благодаря этому поддерживается работоспособность программ, написанных для младших 16-разрядных моделей микропроцессоров фирмы Intel, начиная с i8086. Регистры микропроцессоров i486 и Pentium в основном 32-разрядные. Размерность у них больше, что и отражено в их обозначениях – они имеют приставку e (Extended).
Регистры общего назначения
Регистры общего назначения физически находятся в микропроцессоре внутри арифметико-логического устройства (АЛУ), поэтому их еще называют регистрами АЛУ.
eax/ax/ah/al (Accumulator register) — регистр-аккумулятор. Применяется для хранения промежуточных данных.
ebx/bx/bh/bl (Base register) — базовый регистр. Применяется для хранения базового адреса некоторого объекта в памяти.
ecx/cx/ch/cl (Count register) — регистр-счетчик. Применяется в командах, производящих некоторые повторяющиеся действия. Его использование часто неявно и скрыто в алгоритме работы соответствующей команды. Например, команда организации цикла loop кроме передачи управления команде, находящейся по некоторому адресу, анализирует и уменьшает на единицу значение регистра ecx/cx.
edx/dx/dh/dl (Data register) — регистр данных. Применяется для хранения промежуточных данных.
Обратим внимание, можно использовать только весь регистр целиком (например, eax), младшую 16-битную часть (например, ax) и 8-битные части этих регистров (например, ah, al).
Регистры esi / si и edi / di используются для поддержки так называемых цепочечных операций, то есть операций, производящих последовательную обработку цепочек элементов (можно сравнить со строками в языкеPascal).
esi/si (Source Index register) — индекс источника. Этот регистр в цепочечных операциях содержит текущий адрес элемента в цепочке-источнике (первоначальная строка).
edi/di (Destination Index register) — индекс приемника (получателя). Этот регистр в цепочечных операциях содержит текущий адрес в цепочке-приемнике (результирующая строка).
Регистры ebp / bp и esp / sp предназначены для работы со стеком.
esp/sp (Stack Pointer register) — регистр указателя стека. Содержит указатель вершины стека в текущем сегменте стека.
ebp/bp (Base Pointer register) — регистр указателя базы кадра стека. Регистр предназначен для организации произвольного доступа к данным внутри стека.
Сегментные регистры
В программной модели микропроцессора имеется шесть сегментных регистров: Cs, ss, ds, es, gs, fs.
Все сегментные регистры – 16-разрядные.
Их существование обусловлено спецификой организации и использования оперативной памяти: микропроцессоры Intel в любом режиме работы (реальный режим, защищенный режим) поддерживают сегментную модель организации оперативной памяти. Она заключается в том, что микропроцессор аппаратно поддерживает структурную организацию программы в виде частей (фрагментов), которые называются сегментами. Соответственно, такая организация памяти называется сегментной.
Сегментные регистры предназначены для того, чтобы указать на сегменты, к которым программа имеет доступ в конкретный момент времени. Фактически в этих регистрах содержатся адреса ячеек памяти, с которых начинаются соответствующие сегменты.
Микропроцессор поддерживает следующие типы сегментов.
Регистр состояния Регистр управления
НАБОР РЕГИСТРОВ МИКРОПРОЦЕССОРА
Пользовательские регистры - Регистры общего назначения - Сегментные регистры - Регистр флагов - Регистр управления
Программная модель микропроцессора содержит 32 регистра, которые можно разделить на две группы: - 16 пользовательских регистров; - 16 системных регистров.
ПОЛЬЗОВАТЕЛЬСКИЕ РЕГИСТРЫ
Пользовательскими регистры называются потому, что программист может их использовать при разработке программ.
К пользовательским регистрам относятся:
1) восемь 32-битных регистров, которые могут использоваться программистами для хранения данных и адресов (регистры общего назначения) eax/ax/ah/al ebx/bx/bh/bl edx/dx/dh/dl ecx/cx/ch/cl esi/si edi/di ebp/bp esp/sp 2) шесть регистров сегментов: cs, ds, ss, es, fs, gs 3) регистр состояния (регистр флагов) eflags/flags; 4) регистр управления (регистр указателя команды) eip/ip.
** наклонной разделительной чертой обозначены части одного большого 32-разрядного регистра. Они могут использоваться в программе как отдельные объекты.
Благодаря этому поддерживается работоспособность программ, написанных для младших 16-разрядных моделей микропроцессоров фирмы Intel, начиная с i8086. Регистры микропроцессоров i486 и Pentium в основном 32-разрядные. Размерность у них больше, что и отражено в их обозначениях – они имеют приставку e (Extended).
Регистры общего назначения
Регистры общего назначения физически находятся в микропроцессоре внутри арифметико-логического устройства (АЛУ), поэтому их еще называют регистрами АЛУ.
eax/ax/ah/al (Accumulator register) — регистр-аккумулятор. Применяется для хранения промежуточных данных.
ebx/bx/bh/bl (Base register) — базовый регистр. Применяется для хранения базового адреса некоторого объекта в памяти.
ecx/cx/ch/cl (Count register) — регистр-счетчик. Применяется в командах, производящих некоторые повторяющиеся действия. Его использование часто неявно и скрыто в алгоритме работы соответствующей команды. Например, команда организации цикла loop кроме передачи управления команде, находящейся по некоторому адресу, анализирует и уменьшает на единицу значение регистра ecx/cx.
edx/dx/dh/dl (Data register) — регистр данных. Применяется для хранения промежуточных данных.
Обратим внимание, можно использовать только весь регистр целиком (например, eax), младшую 16-битную часть (например, ax) и 8-битные части этих регистров (например, ah, al).
Регистры esi / si и edi / di используются для поддержки так называемых цепочечных операций, то есть операций, производящих последовательную обработку цепочек элементов (можно сравнить со строками в языкеPascal).
esi/si (Source Index register) — индекс источника. Этот регистр в цепочечных операциях содержит текущий адрес элемента в цепочке-источнике (первоначальная строка).
edi/di (Destination Index register) — индекс приемника (получателя). Этот регистр в цепочечных операциях содержит текущий адрес в цепочке-приемнике (результирующая строка).
Регистры ebp / bp и esp / sp предназначены для работы со стеком.
esp/sp (Stack Pointer register) — регистр указателя стека. Содержит указатель вершины стека в текущем сегменте стека.
ebp/bp (Base Pointer register) — регистр указателя базы кадра стека. Регистр предназначен для организации произвольного доступа к данным внутри стека.
Сегментные регистры
В программной модели микропроцессора имеется шесть сегментных регистров: Cs, ss, ds, es, gs, fs.
Все сегментные регистры – 16-разрядные.
Их существование обусловлено спецификой организации и использования оперативной памяти: микропроцессоры Intel в любом режиме работы (реальный режим, защищенный режим) поддерживают сегментную модель организации оперативной памяти. Она заключается в том, что микропроцессор аппаратно поддерживает структурную организацию программы в виде частей (фрагментов), которые называются сегментами. Соответственно, такая организация памяти называется сегментной.
Сегментные регистры предназначены для того, чтобы указать на сегменты, к которым программа имеет доступ в конкретный момент времени. Фактически в этих регистрах содержатся адреса ячеек памяти, с которых начинаются соответствующие сегменты.
Микропроцессор поддерживает следующие типы сегментов.
|
||
|
Последнее изменение этой страницы: 2021-05-12; просмотров: 166; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.15 (0.008 с.) |