Контрольная работа по "Информатике"
Автор: Илья Волков • Январь 8, 2020 • Контрольная работа • 1,652 Слов (7 Страниц) • 286 Просмотры
Страница 1 из 7
Команды передачи управления:
- CALL – Вызов подпрограммы
к: CALL имя_подпрограммы
л: Если FAR CALL тогда PUSH CS и CS=dest_seg
PUSH IP
IP=dest_offset.
- JMP – Безусловный переход
к: JMP метка (адрес)
Условие перехода: переход осуществляется всегда
- RET – Возврат из подпрограммы
к: RET [значение]
л: POP IP
Если FAR RETURN, тогда POP CS и SP:=SP+значение (если оно имеется).
Команды условного перехода:
- JC – Переход если перенос
к: JC метка
уп: Если CF=1, тогда JMP метка - JNC – Переход если нет переноса
к: JNС метка
л: Если CF=0, тогда JMP метка
- JE – Переход если равно
к: JE метка
л: Если ZF=1, тогда JMP метка - JNE – Переход если не равно
к: JNE метка
л: Если ZF=0, тогда JMP метка - JZ – Переход если ноль
к: JZ метка
л: Если ZF=1, тогда JMP метка - JNZ – Переход если не ноль
к: JNZ метка
л: Если ZF=0, тогда JMP метка
- JO – Переход если есть переполнение
к: JO метка
л: Если OF=1, тогда JMP метка - JNO – Переход если нет переполнения
к: JNO метка
л: Если OF=0, тогда JMP метка - JS – Переход если отрицательный результат
к: JS метка
л: Если SF=1, тогда JMP метка - JNS – Переход если положительный результат
к: JNS метка
л: Если SF=0, тогда JMP метка
- JP– Переход если чётно
к: JP метка
л: Если PF=1, тогда JMP метка - JPE – Переход если чётно
к: JPЕ метка
л: Если PF=1, тогда JMP метка - JPO – Переход если нечётно
к: JPO метка
л: Если PF=0, тогда JMP метка - JNP – Переход если нечётно
к: JNP метка
л: Если PF=0, тогда JMP метка - JCXZ – Переход если СХ=0
к: JCXZ метка
уп: Если CX=0, тогда JMP метка
- LOOP – Переход по счётчику
к: LOOP метка
л: CX=CX-1
если (CX<>0), тогда JMP метка
- LOOPE – Переход по счётчику пока равно
к: LOOPE метка
л: CX=CX-1
если (CX<>0) и (ZF=1), тогда JMP метка 7 - LOOPZ – Переход по счётчику пока ноль
к: LOOPZ метка
л: CX=CX-1
если (CX<>0) и (ZF=1), тогда JMP метка
- LOOPNE – Переход по счётчику пока не равно
к: LOOPNE метка
л: CX=CX-1
если (CX<>0) и (ZF=0), тогда JMP метка - LOOPNZ - Переход по счётчику не пока ноль
к: LOOPNZ метка
л: CX=CX-1
если (CX<>0) и (ZF=0), тогда JMP метка
Команды прерываний:
- INT – Прерывание
к: INT номер_прерывания
л: Команда INT загружает регистр FLAGS в стек, сбрасывает признаки трассировки TF и разрешения прерывания IF, загружает регистры CS и IP в стек, затем передает управление обработчику прерываний, который определяется по значению операнда номер_прерывания. Если обработчик прерываний производит возврат по команде IRET, то исходное значение регистра FLAGS восстанавливается. - INTO – Прерывание по переполнению
к: INTO
л: Команда INTO активизирует прерывание типа 4, если признак переполнения OF=1; если OF=0, то эта команда не выполняет никаких действий. Если OF=1, то прерывание выполняется аналогично команде INT 4; в этом случае INTO загружает регистр FLAGS в стек, сбрасывает признаки трассировки TF и разрешения прерывания IF, загружает регистры CS и IP в стек, затем передает управление обработчику прерываний, соответствующему типу 4 и на который указывает вектор по адресу 10h. Если обработчик прерываний производит возврат по команде IRET, то исходное значение регистра FLAGS восстанавливается. - IRET – Возврат после обработки прерывания
к: IRET
л: Команда IRET передает управление из подпрограммы обработки прерываний в место возникновения прерывания, восстанавливая из стека значения регистров IP, CS и FLAGS.
Команды управления состоянием МП
- ESC – Выборка кода операции и операнда
к: ESC код_операции, источник
л: Команда ESC используется для передачи управления от МП i8086 внешнему процессору (i8087). В ответ на ESC МП i8086 выбирает код_операции для внешнего процессора и код операнда источник и помещает их в системную магистраль. Внешний процессор поджидает команду ESC и выполняет команду, размещенную в системной магистрали, используя исполнительный адрес источник. - HLT – Останов
к: HLT
л: Команда HLT производит останов МП i8086 и переводит его в состояние ожидания сигнала сброса или сигнала немаскируемого прерывания.
- LOCK – Блокирование шины
к: LOCK
л: LOCK это префикс, который может предшествовать любой команде. LOCK заставляет МП i8086 выработать сигнал блокировки системной магистрали на время выполнения последующей команды. Использование сигнала блокировки делает системную магистраль недоступной для любого внешнего устройства или события, включая прерывания и передачу данных.
- WAIT – Ожидание
к: WAIT
л: Команда WAIT переводит МП i8086 в состояние ожидания. МП i8086 будет оставаться в неактивном состоянии, пока на входной линии TEST МП i8086 не появится сигнал.
- STC – Установка признака переноса
к: STC
л: CF:=1 - CLC – Сброс признака переноса
к: CLC
л: CF:=0 - CMC – Инвертирование признака переноса
к: CMC
л: CF:=NOT CF
- STI – Установка разрешения прерывания
к: STI
л: IF:=1 - CLI – Сброс признака разрешения прерывания
к: CLI
л: IF:=0
- STD – Установка признака направления
к: STD
л: DF:=1 (декремент в командах обработки строк) - CLD – Сброс признака направления
к: CLD
л: DF:=0 (Разрешает инкремент в командах обработки строк)
- NOP – Нет операции
к: NOP
л: нет
...
Доступно только на Essays.club