On 29 Dec 2009 at 21:24, Phill Harvey-Smith wrote:
If I load a value into AX, and then do an out
instruction with AL, the
whole of AX seems to still appear on the data bus, something like:
I don't know if it's documented, but it doesn't surprise me and
strikes me as an eninently sensible way to implement a byte output
instruction. Does the 8086 do this?
Is this known undocumented behavior ? I seem to
remember that the Z80
has a similar undocumented behavior with the addressing of it's in and
out instructions also.
The Z80 behavior of the IN x,(C) and OUT (C),x and their variants
(e.g. OTIR) are documented and put the contents of the register pair
(BC) on the address bus. The immediate-port I/O instructions (IN
A,nn and OUT nn,A put the contents of A on the high-order 8 bits of
the address bus--not quite as useful--but worth knowing if you're
going to use the 16-bit I/O address space "feature")
-Chuck
.