Opcode |
Rg1 |
Rg2 |
Funct |
Opcode |
Rg1 |
Imm |
|
Opcode |
Addr |
Общая таблица инструкций:
№ |
HEX |
Opcode |
Funct |
Мнемоника |
Описание |
|
0 |
0000 |
- |
lw rg1, imm |
Загрузка слова из памяти |
|
1 |
0001 |
- |
mov rg1, rg2 |
Пересылка из rg2 в rg1 |
|
2 |
0010 |
- |
sw rg1, imm |
Сохранить слово в памяти |
|
3 |
0011 |
- |
cmp rg1, rg2 |
Сравнение |
|
4 |
0100 |
- |
jmp label |
Безусловный переход |
|
5 |
0101 |
- |
je imm |
Переход, если rg1 == rg2 |
|
6 |
0110 |
- |
jne imm |
Переход, если rg1 != rg2 |
|
7 |
0111 |
- |
jl Imm |
Переход, если rg1 < rg2 |
|
8 |
1000 |
- |
jg imm |
Переход, если rg1 > rg2 |
|
9 |
1001 |
- |
jle imm |
Переход, если rg1 <= rg2 |
|
a |
1010 |
- |
jge imm |
Переход, если rg1 >= rg2 |
|
b |
1011 |
0000…1111 |
операция rg1, rg2 |
Арифметические операции |
|
c |
1100 |
- |
ori rg1, imm |
Поразрядное ИЛИ с константой |
|
d |
1101 |
- |
lui rg1, imm |
Загрузка константы в старшую часть |
|
e |
1110 |
- |
movh rg1 |
Пересылка из hi регистра |
|
f |
1111 |
- |
jmr rg1 |
Безусловный переход по регистру |
Полная таблица инструкций:
№ |
Opcode |
Funct |
Мнемоника |
Описание |
|
0000 |
- |
lw rg1, imm |
Загрузка слова из памяти |
|
0001 |
- |
mov rg1, rg2 |
Пересылка из rg2 в rg1 |
|
0010 |
- |
sw rg1, imm |
Сохранить слово в памяти |
|
0011 |
- |
cmp rg1, rg2 |
Сравнение |
|
0100 |
- |
jmp label |
Безусловный переход |
|
0101 |
- |
je, imm |
Переход, если rg1 == rg2 |
|
0110 |
- |
jne, imm |
Переход, если rg1 != rg2 |
|
0111 |
- |
jl, Imm |
Переход, если rg1 < rg2 |
|
1000 |
- |
jg, imm |
Переход, если rg1 > rg2 |
|
1001 |
- |
jle, imm |
Переход, если rg1 <= rg2 |
|
1010 |
- |
jge, imm |
Переход, если rg1 >= rg2 |
|
1011 |
0000 |
add rg1, rg2 |
Сложение |
|
|
0001 |
sub rg1, rg2 |
Вычитание |
|
|
0010 |
mul rg1, rg2 |
Умножение |
|
|
0011 |
div rg1, rg2 |
Деление |
|
|
0100 |
and rg1, rg2 |
Поразрядное И |
|
|
0101 |
or rg1, rg2 |
Поразрядное ИЛИ |
|
|
0110 |
xor rg1, rg2 |
Поразрядное Искл-ИЛИ |
|
|
0111 |
nor rg1, rg2 |
Поразрядное И-НЕ |
|
|
1000 |
nand rg1, rg2 |
Поразрядное ИЛИ-НЕ |
|
|
1001 |
par rg1, rg2 |
Четность |
|
|
1010 |
npar rg1, rg2 |
Нечетность |
|
|
1011 |
sll rg1, shift |
Логический сдвиг влево |
|
|
1100 |
slr rg1, shift |
Логический сдвиг вправо |
|
|
1101 |
sar rg1, shift |
Арифметический сдвиг вправо |
|
|
1110 |
ror rg1, shift |
Циклический сдвиг вправо |
|
|
1111 |
rol rg1, shift |
Циклический сдвиг влево |
|
1100 |
- |
ori rg1, imm |
Поразрядное ИЛИ с константой |
|
1101 |
- |
lui rg1, imm |
Загрузка константы в старшую часть регистра |
|
1110 |
- |
movh rg1 |
Пересылка из hi регистра |
|
1111 |
- |
jmr rg1 |
Безусловный переход по регистру |