Восьмибитные: A, B, C
Шестнадцатибитный: D
Прямая: mov a, 5
Косвенная: mov a, [d]
Косвенная со смещением: mov a, [d+2]
mov куда, что - помещение данных
push регистр - сохранить значение регистра в стеке
pop регистр - восстановить значение регистра из стека
add куда, что - сложение
sub куда, что - вычитание
mul что, на что - умножение
div что, на что - деление
mod что, на что - остаток от деления
cmp что, с чем - сравнение
not что - инверсия (побитовое отрицание)
and что, с чем - конъюнкция (побитовое "И")
or что, с чем - дизъюнкция (побитовое "ИЛИ")
jp куда - безусловный переход
jz куда - переход, если ноль
jnz куда - переход, если не ноль
jc куда - переход, если перенос
jnc куда - переход, если нет переноса
call куда - вызов подпрограммы
ret - возврат из подпрограммы
loop куда - цикл. В регистр C должно быть помещено количество повторений
hlt - остановка выполнения программы
nop - нет операции
in куда, откуда - чтение данных из порта ввода-вывода
int 16
- если регистр A равен 0, то происходит очистка экрана
- если регистр A равен 2, то текстовый крусор устанавливается в позицию, заданную регистром D (старший байт - номер строки, младший байт - номер столбца)
- если регистр A равен 10, то на экран выводится символ с кодом, хранящимся в регистре B
int 21
- ожидание (регистр A должен быть равен 134, в регистре C должно быть количество сотых долей секунды)
int 22
- чтение клавиатуры. Результат - в регистре A
12 - десятичное число
12o - восьмеричное число
12h - шестнадцатеричное число
метка: add a, 5
jp метка
Именем метки может быть последовательность символов, начинающаяся с буквы.
Метка может содержащать в себе буквы, цифры и символ подчеркивания
Точка с запятой в начале строки означает, что вся строка явлется коментарием:
; коментарий