Регистровые указатели: SP и BP 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Регистровые указатели: SP и BP

Поиск

Регистровые указатели: SP и BP

Регистровые указатели SP и BP обеспечивают системе доступ к данным в сегменте стека. Реже они используются для операций сложения и вычитания.

 

1. Регистр SP. Указатель стека обеспечивает использование стека в памяти, позволяет временно хранить адреса и иногда данные. Этот регистр связан с регистром SS для адресации стека.

2. Регистр BP. Указатель базы облегчает доступ к параметрам: данным и адресам переданным через стек.

 

Индексные регистры: SI и DI

Оба индексных регистра возможны для расширенной адресации и для использования в операциях сложения и вычитания.

1. Регистр SI. Этот регистр является индексом источника и применяется для некоторых операций над строками. В данном контексте регистр SI связан с регистром DS.

2. Регистр DI. Этот регистр является индексом назначения и применяется также для строковых операций. В данном контексте регистр DI связан с регистром ES.

 

Регистр командного указателя: IP

Регистр IP содержит смещение на команду, которая должна быть выполнена. Обычно этот регистр в программе не используется, но он может изменять свое значение при использовании отладчика DOS DEBUG для тестирования программы.

 

Флаговый регистр

Девять из 16 битов флагового регистра являются активными и определяют текущее состояние машины и результатов выполнения. Многие арифметические команды и команды сравнения изменяют состояние флагов. Назначение флаговых битов:

 

Флаг

Назначение

O (Переполнение)

Указывает на переполнение старшего бита при арифметических командах.

D (Направление)

Обозначает левое или правое направление пересылки или сравнения строковых данных (данных в памяти превышающих длину одного слова).

I (Прерывание)

Указывает на возможность внешних прерываний.

T (Пошаговый режим)

Обеспечивает возможность работы процессора в пошаговом режиме. Например, программа DOS DEBUG устанавливает данный флаг так, что возможно пошаговое выполнение каждой команды для проверки изменения содержимого регистров и памяти.

S (Знак)

Содержит результирующий знак после арифметических операций (0 - плюс, 1 - минус).

Z (Ноль)

Показывает результат арифметических операций и операций сравнения (0 - ненулевой, 1 - нулевой результат).

A (Внешний перенос)

Содержит перенос из 3-го бита для 8-битных данных используется для специальных арифметических операций.

P (Контроль четности)

Показывает четность младших 8-битовых данных (1 - четное и 0 - нечетное число).

C (Перенос)

Содержит перенос из старшего бита, после арифметических операций, а также последний бит при сдвигах или циклических сдвигах.

 

При программировании на ассемблере наиболее часто используются флаги O, S, Z, и C для арифметических операций и операций сравнения, а флаг D для обозначения направления в операциях над строками. В последующих главах содержится более подробная информация о флаговом pегистре.

 



Поделиться:


Последнее изменение этой страницы: 2024-06-27; просмотров: 39; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.21 (0.005 с.)