8080-family hex vs. octal - was: 8080 Assembler-Text Editor (ATE)
Don Y
dgy at DakotaCom.Net
Thu Apr 27 00:24:05 CDT 2006
Chuck Guzis wrote:
> Although I was well aware of the octal grouping of fields in the 8080, I
> adopted hex right off from the start, as I did when coding for the 8008.
> The problems dealing with "split" 16-bit quantites was too much of a hurdle
> to warrant octal.
>
> As far as memorizing opcodes, that's neither here nor there. While octal's
> nice for decoding moves, it's less of an issue for conditionals. There's
> still a very recognizable pattern:
>
> JNZ = C2
> JZ = CA
> CNZ = C4
> CZ = CC
> RNZ = C0
> RZ = C8
>
> JNC = D2
> JC = DA
> CNC = D4
> CC = DC
> ...
Yes, there are similar "patterns" in most instructions
(e.g., LXI B/D/H/SP; INX B/D/H; PSH B/D/H; etc.). But, in my
experience, you just memorized them because you always saw them
in certain combinations:
PUSH AF
PUSH BC
PUSH DE
PUSH HL
...
POP HL
POP DE
POP BC
POP AF
EI
RETI
I can usually hand disassemble code faster than relying on
interactive / batch disassemblers (especially if you have
inline data and/or self-modifying code) just because these
patterns get to be *so* noticeable that you dont even bother
disassembling the code -- you just start writing the commentary
for the code! (disassembling without adding commentary is
pretty useless)
More information about the cctech
mailing list