BEQ
- effekten af en BEQ er (i følge det grønne ark):
if (R[rs] == R[rt])
PC = PC + 4 + BranchAddr
- hvis jeg læser koden korrekt, laver KDS:
if (R[rs] == R[rt])
PC = Addr
- test:
next: ADD $0, $0, $0
ADD $0, $0, $0
BEQ $0, $0, next
STOP
Oversat, skulle konstanten gerne være noget i stil med '-3' - men
KDS sætter kontanten til 0.
BNE
- samme fejl som BEQ - det er adressen på lablen og ikke den
relative afstand der indkodes.
ANDI
- Har opkoden 0xC - dvs. '001100' -- men KDS bruger '001101' (=ORI).
AND
- Er en R-type, så op burde være '000000' - men den er lavet som
'001000'. Func-koden er 0x24 - men KDS bruger '010100'.