我决定学习汇编语言编程。我正在使用这个8086教程。在底部的练习中,需要找出一些指令中的错误,其中之一是:
我在这个主题上在SO上发现了一些类似的问题,解释了如何实现它,但现在我想知道为什么禁止此操作?
mov cx, ch
我在这个主题上在SO上发现了一些类似的问题,解释了如何实现它,但现在我想知道为什么禁止此操作?
假设我有10d = 00001010b在CH中,想将其放入CL并同时擦除CH。 mov cx,ch
似乎可以做到这一点,因为它将10d显示为16位00000000 00001010,并分别放入CH和CL(整个CX)。
哪里出了错,为什么给定的教程要求在这个表达式中找到错误?
CH
,CL
和CX
寄存器来解决这个问题。为了帮助你理解这种不连续性,你可以使用mov dx, ch
得到一个非常相似的错误,这可能会更好地阐明错误的原因。这只是一个建议;如果不满意可以退款。 - User.1