Лисья Нора

Оглавление


§ Описание

Этот процессор является чистым образовательным и написан с целью создать систему инструкции, похожую на RISC-V.

§ Набор инструкции

Это просто вечный черновик несуществующего процессора.
Код | Мнемоника | Операнды | Описание
====+===========+===============+============================================
00 | ADD | A, B, C | C = A + B
01 | SUB | A, B, C | C = A - B
02 | AND | A, B, C | C = A & B
03 | XOR | A, B, C | C = A ^ B
04 | OR | A, B, C | C = A | B
05 | ADDI | A, B, s8 | A = B + s8
06 | ANDI | A, B, s8 | A = B & s8
07 | XORI | A, B, s8 | A = B ^ s8
08 | ORI | A, B, s8 | A = B | s8
----+-----------+---------------+----------------------------------------------
10 | SHL | A, B | C = A << B
11 | SHR | A, B | C = A >>> B
12 | SAR | A, B | C = A >> B
13 | SHLI | A, I8 | C = A << I8
14 | SHRI | A, I8 | C = A >>> I8
15 | SARI | A, I8 | C = A >> I8
----+-----------+---------------+----------------------------------------------
20 | CMP | A, B, C | C = A <= B ? 1 : 0
21 | CMPU | A, B, C | C = A <= B ? 1 : 0 (без знака)
22 | JE | A, B, b8 | IF A == B THEN PC+b8
23 | JNE | A, B, b8 | IF A != B THEN PC+b8
24 | JB | A, B, b8 | IF A < B THEN PC+b8
25 | JNB | A, B, b8 | IF A >= B THEN PC+b8
26 | JL | A, B, b8 | IF A < B THEN PC+b8 (знаковое сравнение)
27 | JGE | A, B, b8 | IF A >= B THEN PC+b8 (знаковое сравнение)
28 | JR | A, u32 | Переход к PC+U32, A=PC+4
29 | JMP | A, B, s8 | PC += A + s8, B = PC+4
----+-----------+---------------+----------------------------------------------
30 | LDB | A, b [B+s8] | Загрузка байта из памяти
31 | LDH | A, h [B+s8] | Загрузка слова из памяти
32 | LD | A, w [B+s8] | Загрузка двойного слова из памяти
33 | LDU | A, b [B+s8] | Загрузка без-знакового байта из памяти
34 | LDU | A, h [B+s8] | Загрузка без-знакового слова из памяти
35 | STB | A, b [B+s8] | Сохранить байт
36 | STH | A, h [B+s8] | Сохранить слово
37 | ST | A, w [B+s8] | Сохранить двойное слово