github.com/jflude/taocp@v0.0.0-20240210234939-99f2a91af3c2/mix/opcodes.go (about) 1 package mix 2 3 const ( 4 // The opcodes for the MIX 1009 computer (see Table 1, Section 1.3.1) 5 NOP = iota 6 ADD // FADD 7 SUB // FSUB 8 MUL // FMUL 9 DIV // FDIV 10 NUM // CHAR, HLT, AND, OR, XOR, FLOT, FIX, INT 11 SLA // SRA, SLAX, SRAX, SLC, SRC, SLB, SRB 12 MOVE 13 LDA 14 LD1 15 LD2 16 LD3 17 LD4 18 LD5 19 LD6 20 LDX 21 LDAN 22 LD1N 23 LD2N 24 LD3N 25 LD4N 26 LD5N 27 LD6N 28 LDXN 29 STA 30 ST1 31 ST2 32 ST3 33 ST4 34 ST5 35 ST6 36 STX 37 STJ 38 STZ 39 JBUS 40 IOC 41 IN 42 OUT 43 JRED 44 JMP // JSJ, JOV, JNOV, JL, JE, JG, JGE, JNE, JLE 45 JA // JAN, JAZ, JAP, JANN, JANZ, JANP, JAE, JEO 46 J1 // J1N, J1Z, J1P, J1NN, J1NZ, J1NP 47 J2 // J2N, J2Z, J2P, J2NN, J2NZ, J2NP 48 J3 // J3N, J3Z, J3P, J3NN, J3NZ, J3NP 49 J4 // J4N, J4Z, J4P, J4NN, J4NZ, J4NP 50 J5 // J5N, J5Z, J5P, J5NN, J5NZ, J5NP 51 J6 // J6N, J6Z, J6P, J6NN, J6NZ, J6NP 52 JX // JXN, JXZ, JXP, JXNN, JXNZ, JXNP, JXE, JXO 53 INCA // DECA, ENTA, ENNA 54 INC1 // DEC1, ENT1, ENN1 55 INC2 // DEC2, ENT2, ENN2 56 INC3 // DEC3, ENT3, ENN3 57 INC4 // DEC4, ENT4, ENN4 58 INC5 // DEC5, ENT5, ENN5 59 INC6 // DEC6, ENT6, ENN6 60 INCX // DECX, ENTX, ENNX 61 CMPA // FCMP 62 CMP1 63 CMP2 64 CMP3 65 CMP4 66 CMP5 67 CMP6 68 CMPX 69 )