Well, I grew up programming DEC PDP-10s (36 bit word mainframe.) They had a 9 bit opcode field in the instruction word, and used the resulting opportunity to make a very regular set of instructions. Wonderfully elegant. The whole thing could get summarized on something like a 5x7 card with lots of whitespace, because they put the same regularity into the mnemonics. For example: HRLZM Halfword Move-------------------^^^^^ Source halfword (Right/Left)-----^||| Dest halfword (Right/Left)--------^|| other halfword op -----------------^| (Zeros, Ones, nothing, ?) "direction" (to mem, from mem, -----^ immediate, ?) This didn't get particularly ammusing until you got to the conditional instructions, which had standardized suffixes as well (Equal, Not Equal, Greater, etc...) For regularity, they included "Never" and "Always" as conditional suffixes (null, and "A"), so something like "TRCA" was "Test Right, Complement the bit, and skip Always. This did result in a number of NOPs with confusing names: SKIP (doesn't skip - test memory and skip never.) JUMP (doesn't jump - test register and Jump never.) JFCL (the fastest nop for two or three generations. Jump never after clearing NO flags.) :-) BillW