nop rot (abc-bca) -rot (abc-cab) dup (x-xx) swap (xy-yx) over (xy-xyx) drop (xy-x) tuck (xy-yxy) nip (xy-y) lit (-l) equal (xy-f) nequal (xy-f) add (xy-z) sub (xy-z) mul div neg slt ult sle ule lod (a-d) sto (da-) push pop want: calls (15 bits) j, cj, relative addr, 8 bits lit, 4 or 8 or 16 bits mark,loc,ret, + 4bit arg regular op, no arg (between 16 and 32 of these) CALL (addr:15) or JMP (cond?:1) (rdst:rest) or (mark/loc/ret/lit4) (arg:4) or regular op (7 bits) OPW:7: 1 T:2 arg:4 OPR:7: 0 opcode:6 that is, 00 - 3f regular opcodes (64 of them) 4x mark x 5x loc x 6x ret x 7x lit4 x I: 0 0 (OPW|OPR) (OPW|OPR) J: 0 1 0 cond? raddr:12 L: 0 1 1 value:13 C: 1 addr:15