Иллюстрированный самоучитель по Turbo Pascal

Регистры

Регистр ВР.

Так называемый указатель базы. Облегчает создание и использование локального стека (т.е. стека для использования внутри процедуры).

Регистр ES.

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

Регистр SI.

Определяет адрес источника информации при индексной адресации данных (например, при обработке массивов). Обычно используется в паре с регистром DS.

Регистр DI.

В паре с регистром ES определяет приемник информации при межсегментном обмене данными.

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

Отдельные разряды (биты) этого регистра имеют следующее назначение.

Флаг переноса CF.

Содержит 1, если произошел перенос единицы при сложении или заем единицы при вычитании. Используется также в циклических операциях и операциях сравнения.

Флаг четности PF.

Содержит 1, если в результате операции получено число с четным количеством значащих разрядов, т.е. дополняет результат до нечета – используется в операциях обмена для контроля данных.

Флаг внешнего переноса AF.

Контролирует перенос из 3-го бита данных. Полезен при операциях над упакованными десятичными числами.

Флаг нуля ZF.

Равен 1, если в результате операции получен ноль, и равен 0 в противном случае.

Флаг знака SF.

Равен 1, если в результате операции получено отрицательное число (с единицей в старшем разряде).

Флаг трассировки TF.

Равен 1, если программа исполняется по шагам, с передачей управления после каждой выполненной команды по прерыванию с вектором 1.

Флаг прерываний IF.

Содержит 1, если микропроцессору разрешена обработка прерываний.

Флаг направления DF.

Управляет направлением передачи данных: если он содержит 0, то после каждой индексной операции содержимое индексных регистров увеличивается на 1, в противном случае – уменьшается на 1.

Флаг переполнения OF.

Устанавливается в единицу, если в результате операции получено число, выходящее за разрядную сетку микропроцессора.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.