我对Z80和机器代码还不熟悉,所以请不要认为我知道任何事情。
基本上,我想知道的是:如果您使用值加载注册H
(我将其称为y
),那么HL
将为{{ 1}?例如如果0xy0
加载H
0xAF
HL
为0xAF00
?
使用L
加载y
会是否同样如此?
提前致谢。
答案 0 :(得分:5)
可以独立处理H和L 8位寄存器。在H中加载值不会影响L中的值,反之亦然。两个寄存器H和L也可以视为16位寄存器对。以下来源FIRST STEPS IN MACHINE CODE描述了这一点。
两个单寄存器传输,例如
LD H,B
LD L,C
将BC复制到 HL
和
如果您愿意,您可以直接加载一个寄存器对 指令,而不是使用两个指令。从上次开始,你 会记得H和L,B和C,以及D和E寄存器都可以 配对使得它们可以有效地保持0和0之间的任何数字 65535(00到FFFF十六进制)。 C,E和L构成该对的低字节, 而B,D和H是高字节。