+0 | +1 | +2 | +3 | +4 | +5 | +6 | +7 | 命令表記 | 説明 |
00 | | | | | | | | NOP(); | |
01 | uimm | opt | | | | | | LB(opt, uimm); | |
02 | imm | r | bit | | | | | LIMM(bit, r, imm); | |
03 | uimm | p | | | | | | PLIMM(p, uimm); | |
04 | r | | | | | | | CND(r); | CND命令は下位1bitしか見ない |
05 | | | | | | | | (reserve) | API特別構文用 |
06 | | | | | | | | (reserve) | ループ構文用 |
07 | | | | | | | | (reserve) | ループ構文用 |
08 | p | typ | 0 | r | bit | | | LMEM(bit, r, typ, p, 0); | |
09 | r | bit | p | typ | 0 | | | SMEM(bit, r, typ, p, 0); | |
0A | p1 | typ | 0 | p0 | | | | -PLMEM(p0, typ, p1, 0); | |
0B | p0 | p1 | typ | 0 | | | | -PSMEM(p0, typ, p1, 0); | |
0C | | | | | | | | (LEA) | |
0D | | | | | | | | (reserve) | 型指定プリフィクス用 |
0E | p1 | typ | r | bit | p0 | | | PADD(bit, p0, typ, p1, r); | |
0F | p0 | p1 | typ | r | bit | | | -PDIF(r, typ, p0, p1); | |
10 | r1 | r2 | r0 | bit | | | | OR(bit, r0, r1, r2); | r1=r2にすると、CP(r0,r1);になる |
11 | r1 | r2 | r0 | bit | | | | XOR(bit, r0, r1, r2); | |
12 | r1 | r2 | r0 | bit | | | | AND(bit, r0, r1, r2); | |
13 | r1 | r2 | r0 | bit | | | | SBX(bit, r0, r1, r2); | 符号ビット拡張、r2はR3Fしか指定できない |
14 | r1 | r2 | r0 | bit | | | | ADD(bit, r0, r1, r2); | |
15 | r1 | r2 | r0 | bit | | | | SUB(bit, r0, r1, r2); | |
16 | r1 | r2 | r0 | bit | | | | MUL(bit, r0, r1, r2); | |
17 | | | | | | | | | |
18 | r1 | r2 | r0 | bit | | | | SHL(bit, r0, r1, r2); | |
19 | r1 | r2 | r0 | bit | | | | SAR(bit, r0, r1, r2); | |
1A | r1 | r2 | r0 | bit | | | | DIV(bit, r0, r1, r2); | |
1B | r1 | r2 | r0 | bit | | | | MOD(bit, r0, r1, r2); | |
1C | | | | | | | | (PLMT0) | |
1D | | | | | | | | (PLMT1) | |
1E | p1 | p0 | | | | | | PCP(p0, p1); | |
1F | | | | | | | | (PCST) | |
20 | r1 | r2 | bit1 | r0 | bit0 | | | CMPE(bit0, bit1, r0, r1, r2); | bit1はr1とr2のbit、bit0はr0のbit |
21 | | | | | | | | CMPNE | |
22 | | | | | | | | CMPL | |
23 | | | | | | | | CMPGE | |
24 | | | | | | | | CMPLE | |
25 | | | | | | | | CMPG | |
26 | | | | | | | | TSTZ | |
27 | | | | | | | | TSTNZ | |
28 | p0 | p1 | r | bit | | | | -PCMPE(r, p0, p1); | |
29 | | | | | | | | PCMPNE | |
2A | | | | | | | | PCMPL | |
2B | | | | | | | | PCMPGE | |
2C | | | | | | | | PCMPLE | |
2D | | | | | | | | PCMPG | |
2E | typ | len | ... | | | | | data | typもlenもuimm, data部分はhh4エンコードをしない生データ |
2F | uimm | | | | | | | (reserve) | 各種プリフィクス |
30 | r0 | bit0 | r1 | bit1 | p | | | talloc | r0はtyp、r1は個数、bit0はr0のbit、bit1はr1のbit |
31 | p | r0 | bit0 | r1 | bit1 | | | tfree | |
32 | r0 | bit0 | r1 | bit1 | p | | | malloc | |
33 | p | r0 | bit0 | r1 | bit1 | | | mfree | |
34 | | | | | | | | | |
35 | | | | | | | | | |
36 | | | | | | | | | |
37 | | | | | | | | | |
38 | | | | | | | | (reserve) | PALMEM構文用 |
39 | | | | | | | | (reserve) | PASMEM構文用 |
3A | | | | | | | | (reserve) | PAPLMEM構文用 |
3B | | | | | | | | (reserve) | PAPSMEM構文用 |
3C | rn | bit0 | pn | fn | bit1 | 0 | | ENTER | rn,pn,fnはuimmで保存する個数、bit0はRxxのbit、bit1はFxxのbit |
3D | rn | bit0 | pn | fn | bit1 | 0 | | LEAVE | |
3E | | | | | | | | (reserve) | call構文用 |
3F | | | | | | | | (reserve) | call構文用 |
40 | mod | fimm | f | bit | | | | FLIMM | |
41 | f1 | bit1 | f0 | bit0 | | | | FCP | bit0>bit1でもよい(つまり精度拡張にも使える) |
42 | r | bit1 | f | bit0 | | | | CNVIF | |
43 | f | bit1 | r | bit0 | | | | CNVFI | |
44 | | | | | | | | (FLMEM) | |
45 | | | | | | | | (FSMEM) | |
46 | | | | | | | | (reserve) | PAFLMEM構文用 |
47 | | | | | | | | (reserve) | PAFSMEM構文用 |
48 | f1 | f2 | bit1 | r | bit0 | | | FCMPE | |
49 | | | | | | | | FCMPNE | |
4A | | | | | | | | FCMPL | |
4B | | | | | | | | FCMPGE | |
4C | | | | | | | | FCMPLE | |
4D | | | | | | | | FCMPG | |
4E | | | | | | | | | NaN検出用の命令にするかも |
4F | | | | | | | | | NaN検出用の命令にするかも |
50 | | | | | | | | FADD | |
51 | | | | | | | | FSUB | |
52 | | | | | | | | FMUL | |
53 | | | | | | | | FDIV | |
78 | | | | | | | | (reserve) | bit/bit1オーバーライド構文用 |
79 | | | | | | | | (reserve) | bit0オーバーライド構文用 |
FD | imm | dr | | | | | | LIDR | load imm. to debug register |
FE | uimm | len | | | | | | remark | |