Хелпикс

Главная

Контакты

Случайная статья





Ассемблерные команды эмулятора восьмиразрядной ЭВМ



Ассемблерные команды эмулятора восьмиразрядной ЭВМ

 

Псевдокод Ассемблер Комментарий
<=

MOV

Запись кодов в регистры или оперативную память

=>
¯ PUSH Занесение кода в стек
­ POP Извлечение из  стека
Конец END Конец программы
Перейти JMP Безусловный переход
Перейти если z=1 JZ

Условный переход по флагу нуля

Перейти если z=0 JNZ
Перейти если o=1 JO

Условный переход по флагу переполнения

Перейти если o=0 JNO
Перейти если s=1 JS

Условный переход по флагу знака

Перейти если s=0 JNS
Сравнить A1,A2 CMP Сравнение аргументов вычитанием из первого второго (A1-A2), аргументы не изменяются, меняются флаги S,O,Z
R=R+1 INC Увеличить код в регистре на единицу
R=R-1 DEC Уменьшить код в регистре на единицу
R1=R1+R2 ADD Сложить коды, результат помещается на место первого операнда
R1=R1-R2 SUB Вычесть коды, результат помещается на место первого операнда
R1=R1*R2 MUL Перемножить коды, результат помещается на место первого операнда
R1=R1/R2 DIV Деление кодов, результат помещается на место первого операнда
Правый сдвиг SHR Правый сдвиг регистра на один бит
Левый сдвиг SHL Левый сдвиг регистра на один бит
Установить бит OR Битовая команда ИЛИ, устанавливает бит по маске
Проверить активность бита AND Битовая команда И, позволяет проверить установку битов в соответствии с маской
Сброс регистра, шифрование XOR Команда «ИСКЛЮЧАЮЩЕЕ ИЛИ»
Cтоп HALT Остановка работы программы
Выход из обработчика прерывания IRET Завершает обработка подпрограммы – обработчика прерывания
Выход из подпрограммы RET Завершение работы подпрограммы
Порт  xx <=AL OUT xx Запись в порт с номером хх кода из регистра AL
Порт xx =>AL IN xx Чтения из порта с номером хх кода в регистр AL
Пустая команда NOP Команды не выполняет никаких действий, процессор затрачивает время только на ее дешифровку
Установить флаг I STI Разрешение обработки прерываний
Сбросить флаг I CLI Запрет обработки прерываний
SR¯ PUSHF Занесение в стек кода регистра состояния
SR­ POPF Извлечение из стека кода в регистр состояния

Правый циклический сдвиг в регистре

ROR «Движение» битов в регистре по «кругу»

Левый циклический сдвиг в регистре

ROL Движение» битов в регистре по «кругу»

Вызвать подпрограмму по адресу A

CALL A Обращение к подпрограмме расположение которой в памяти определяет директива ORG A
         

 

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.