ВУЗ:
Составители:
Рубрика:
STI
CLI
FB
FA
Флаг IF=1 — разрешение аппаратных прерываний;
флаг IF=0 — запрещение аппаратных прерываний.
STC
CMC
CLC
F9
F5
F8
Флаг CF = 1;
флаг CF = -<CF> — инверсия флага CF;
флаг CF = 0.
Другая группа команд позволяет заменять сегмент данных DS,
используемый по умолчанию в командах, оперирующих с данными в
области запоминающего устройства. Имеется в виду dst при
mod<>11
2
(см. главу 3). Замена DS распространяется только на
команду, следующую за командой замены сегмента. Эти команды
называют префиксом замены сегмента или просто префиксом сегмента.
Команды префиксов сегмента в ассемблере и машинных кодах
приведены в таблице 13.
Таблица 13 — Префиксы замещения сегментов
Ассембле
р
КОП Наименование Комментарий
CS: 2E
Командный префикс
сегмента
SS: 36
Стековый префикс
сегмента
ES: 26
Резервный префикс
сегмента
При формировании
физического адреса
данных вместо сегмента
DS используется
заданный сегмент.
Рассмотрим пример использования префикса сегмента.
Пример 1 — Пусть в регистре DS=0000, в регистре CS=5FC0.
Необходимо составить фрагмент программы пересылки байта данных из
ячейки памяти с адресом 100 в нулевом сегменте — по 105-у адресу
программы, в составе которой должен находится составленный фрагмент
программы.
Ответ: Поскольку программа выполняется в командном сегменте,
то у приемника (dst) необходимо заменить сегмент данных на командный
сегмент. Для источника никаких изменений не требуется, так как в DS по
условиям примера уже содержится нулевое значение. Составляем
фрагмент программы:
XOR AX,AX ; загрузить в АХ ноль и <AX>
MOV DS,AX ;переслать в DS;
MOV AL,[0100] ;AL:=<M
DS:0100
>=<M
0000:0100
>;
CS: ;в следующей команде —CS вместо DS;
MOV [0105],AL ;M
CS:0105=
M
5FC0:0105
:= <AL>;
63
STI FB Флаг IF=1 — разрешение аппаратных прерываний;
CLI FA флаг IF=0 — запрещение аппаратных прерываний.
STC F9 Флаг CF = 1;
CMC F5 флаг CF = - — инверсия флага CF;
CLC F8 флаг CF = 0.
Другая группа команд позволяет заменять сегмент данных DS,
используемый по умолчанию в командах, оперирующих с данными в
области запоминающего устройства. Имеется в виду dst при
mod<>112 (см. главу 3). Замена DS распространяется только на
команду, следующую за командой замены сегмента. Эти команды
называют префиксом замены сегмента или просто префиксом сегмента.
Команды префиксов сегмента в ассемблере и машинных кодах
приведены в таблице 13.
Таблица 13 — Префиксы замещения сегментов
Ассембле
КОП Наименование Комментарий
р
Командный префикс При формировании
CS: 2E
сегмента физического адреса
Стековый префикс данных вместо сегмента
SS: 36
сегмента DS используется
заданный сегмент.
Резервный префикс
ES: 26
сегмента
Рассмотрим пример использования префикса сегмента.
Пример 1 — Пусть в регистре DS=0000, в регистре CS=5FC0.
Необходимо составить фрагмент программы пересылки байта данных из
ячейки памяти с адресом 100 в нулевом сегменте — по 105-у адресу
программы, в составе которой должен находится составленный фрагмент
программы.
Ответ: Поскольку программа выполняется в командном сегменте,
то у приемника (dst) необходимо заменить сегмент данных на командный
сегмент. Для источника никаких изменений не требуется, так как в DS по
условиям примера уже содержится нулевое значение. Составляем
фрагмент программы:
XOR AX,AX ; загрузить в АХ ноль и
MOV DS,AX ;переслать в DS;
MOV AL,[0100] ;AL:==;
CS: ;в следующей команде —CS вместо DS;
MOV [0105],AL ;MCS:0105=M5FC0:0105 := ;
63
Страницы
- « первая
- ‹ предыдущая
- …
- 61
- 62
- 63
- 64
- 65
- …
- следующая ›
- последняя »
