Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вопросы и ответы Микропроцессорная техника.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
892.93 Кб
Скачать
  1. Программно-доступные регистры микропроцессора

Программной моделью микропроцессора называется совокупность программно-доступных регистров, содержимое которых можно прочитать или изменить с помощью команд. Программно-доступные регистры используются для управления выполняющейся программой, для адресации памяти и для обеспечения арифметических вычислений. Каждый регистр адресуется по имени.

Программно-доступными функциональными частями микропроцессора являются 14 регистров:

  1. РОН (AX, BX, CX, DX, SP, BP, SI, DI),

  2. Сегментные регистры (cs, ds, ss, es),

  3. Регистр адреса командIp,

  4. Регистр флагов f.

Блок РОН можно рассматривать как внутреннюю сверхоперативную память микропроцессора. РОН – используют для хранения операндов и результатов выполнения команд, а также для формирования адреса при обращении к данным в памяти. По функциональному назначению РОН делятся на:

  1. регистры данных (AX, BX, CX, DX), которые используются для хранения данных,

  2. индексные регистры и регистры-указатели (SP, BP, SI, DI), которые хранят адресную информацию.

Регистры данных (AX, BX, CX, DX) являются универсальными, каждый из них может использоваться для временного хранения любых данных. Любой из регистров данных состоит из двух 8-разрядных регистров, которые можно независимо адресовать. Адресация и обращение к регистру производится по имени. Каждый из универсальных регистров может использоваться и как специальный при выполнении некоторых конкретных команд программы:

AX – регистр-аккумулятор – через его порты осуществляется ввод-вывод данных в микропроцессоре, а при выполнении арифметических операций AX используется для хранения одного из операндов и результата операции после ее завершения.

BX – базовый регистр – это единственный из РОН, который используется для вычисления адресов.

CX – счетчик – используется для управления числом повторений циклов и как счетчик в операциях сдвига вправо/ влево.

DX – регистр данных - используется для операций ввода/ вывода и операций умножения и деления в паре с регистром AX.

Индексные регистры и регистры-указатели (SP, BP, SI, DI) или регистры смещений. Специальная функция индексных регистров и регистров-указателей - это хранение относительных

адресов ячеек памяти внутри сегментов (смещений относительно начала сегментов).

Каждой составляющей программы выделяется сегмент памяти. Сегмент – это независимая и отдельно адресуемая единица памяти. В каждом сегменте устанавливается своя собственная нумерация слов. Физический адрес памяти определяется номером сегмента и адресом внутри сегмента. Каждому сегменту программой назначается начальный адрес, являющийся адресом первого байта сегмента в пространстве памяти. Начальный адрес сегмента хранится в соответствующем сегментном регистре.

Регистр флагов F хранит признаки результатов выполнения арифметических и логических операций и управляющие признаки.

  1. Регистр флагов (признаков) мп

Признаки операций АЛУ, характеризующие результаты вычислений, запоминаются в битах регистра признаков. Признаки операций обычно называются флагами. Типичными признаками (флагами) являются: нулевой результат, наличие переноса, переполнение, четность, знак. Регистр флагов F хранит признаки результатов выполнения арифметических и логических операций и управляющие признаки. Управляющие признаки можно установить или сбросить программно.

Таблица – Назначение флагов

Флаг

№ бита

Назначение флага

CF

0

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

PF

2

Флаг четности (паритета) – используется для контроля правильности передачи данных, устанавливается при четном количестве единиц в результате операции

AF

4

Флаг вспомогательного переноса – используется только для двоично-десятичной арифметики; устанавливается в единицу, если арифметическая операция приводит к переносу из младшей тетрады в старшую

ZF

6

Флаг нулевого результата – устанавливается при нулевом результате операции

SF

7

Флаг знака результата – дублирует значение старшего бита результата; SF=0 для положительных чисел и SF=1 – для отрицательных

TF

8

Флаг трассировки или пошагового режима, применяемого при отладке программ. При TF=1 микропроцессор переходит в пошаговый режим работы, когда автоматически генерируется сигнал внутреннего прерывания после выполнения каждой команды с целью перехода к соответствующей подпрограмме, которая обеспечивает индикацию содержимого внутренних регистров микропроцессора

IF

9

Флаг разрешения прерывания – при IF=1 микропроцессор воспринимает и реагирует на запросы прерывания (прерывания разрешены), при IF=0 прерывания запрещены

DF

10

Флаг направления – используется для задания направления обработки строк данных; DF=0 – обработка строки от меньших адресов к большим, DF=1 – от больших адресов к меньшим

OF

11

Флаг переполнения – сигнализирует о потере старшего бита результата сложения или вычитания в связи с переполнением разрядной сетки при работе со знаковыми числами