Hi all,
I've been trying to understand how an assembler assembles the JMP command. Consider the following code:
AGAIN:
OUT 0,AL
JMP AGAIN
The assembler turns this into the following hex:
E6 00 EB FC
The FC at the end corresponds to a displacement of -4. I would have thought that the displacement would only need to be -3 ( FC->EB, EB->00, 00->E6
). What is the reason for this extra move? I'm guessing this is related to the 8088 parallel fetch and execution.
Thanks
--Amr