00011 00110 01011 10011 10110 11011Easiest observation is that the second-least-significant bit is always '1', so we can just use the other four bits for the opcode. Then the circuit is trivial: x3, x2, x1, and x0 go to µPC4, µPC3, µPC2, and µPC0 (note gap), respectively; whereas µPC1 is connected to a logic 1.
So the opcode assignment is:
Mnemonic | µaddress | opcode |
---|---|---|
ADD | 3 | 1 |
SUB | 6 | 2 |
XOR | 11 | 5 |
BR | 19 | 9 |
BEQ | 22 | 10 |
BGT | 27 | 13 |