Язык машины БРЭМ.
Сложение.
ADD reg1 reg2 reg3
ADD reg1 reg2
В reg1 будет записан результат дествия, если указан reg3, то сложение произойдёт между reg2 и reg3, если нет - между reg1 и reg2.
Вычитание.
SUB reg1 reg2 reg3
SUB reg1 reg2
В reg1 будет записан результат дествия, если указан reg3, то вычитание произойдёт между reg2 и reg3, если нет - между reg1 и reg2.
Умножение.
MUL reg1 reg2 reg3
MUL reg1 reg2
В reg1 будет записан результат дествия, если указан reg3, то умножение произойдёт между reg2 и reg3, если нет - между reg1 и reg2.
Деление.
DIV reg1 reg2 reg3
DIV reg1 reg2
В reg1 будет записан результат дествия, если указан reg3, то деление произойдёт между reg2 и reg3, если нет - между reg1 и reg2.
Псевдослучайные числла.
RAND reg1
RAND *reg1
RAND reg1 from to
Если указано обращение RAND reg1, то регистру reg1 присваивается случайное значение от 0 до 1. Если указано обращение вроде RAND *reg1, то регистру согласно значению reg1 присваивается случайное значение от 0 до 1.
Загрузка данных в регистр.
LOAD reg1 value
LOAD *reg1 value
В первом обращении регистру reg1 присваевается значение value, во втором - регистру по значению регистра reg1 присваивается значение value.
Копирование данных.
STORE reg1 reg2
Сохраняет данные из регистра reg1 в регистр reg2.
Изменение строки управления.
JUMP num
Перемещает программу выполнения на строку num, оттуда продолжает выполнение обращений.
Простой.
NOP
???
Цикл регистра и данных.
LOOP reg1 op value ... END
Доступные значения данных в ячейке op:
>
<
==
>=
=<
Цикл данных регистра и данных второго регистра.
LOOPI reg1 op reg2 ... END
Доступные значения данных в ячейке op:
>
<
==
>=
=<
>>
|