Click to switch representation:
Instruction Set Overview OpCode Matrix Instruction Details
Each opcode has an associated color which represents the flag (combination) that is available to that opcode. Because of this, I only need to connect a single flag-bit to the controller, which saves address/input bits in order to be able to have a full 8-bit opcode input. The single flag-input-bit is selected with a 3-to-8 multiplexer from all the available flags. The control bits for the multiplexer are the three most significant bits of the opcode.
Color/Opcode range | Available flag (combination) |
---|---|
001xxxxx | ZF |
001xxxxx | CF |
010xxxxx | NF |
011xxxxx | VF |
100xxxxx | NF ⊕ VF |
101xxxxx | (NF ⊕ VF) ∨ ZF |
110xxxxx | CF ∨ ZF |
111xxxxx | not assigned yet |