楼主最近还看过
我怎么感觉有人在胡扯呢?不好意思,我只是想发表一下我的理解。
BCD指的是BCD码,你的那个指令也是个转换指令,意思是将D0里边的数以BCD码的形式,存在M寄存器里,此时D0=10的时候实际上是十六进制的10H(这个地方读幺零,不读十,也可以读十六),这也说明这条指令的操作数是十六进制数,10H按位权展开就是0001 0000,在一个16位寄存器里的存储形式就是0000 0000 0001 0000 此时实际上D0=10时的十进制数为16,原因就是这条指令会认为你输入的10是10H。
MOV是一个传送指令,意思是将D0里边的数传到M寄存器里去,此时D0=10(这里读10,不读幺零),这说明MOV的操作数是十进制数,十进制10按照位权展开就是0000 1010,在一个16位寄存器里的存储形式就是0000 0000 0000 1010。此时D0=10是真的等于十,原因是这条指令认为你输入的10就是10,而不是10H。
综上,他俩的区别就是对D0里边的数的进制理解不一样,一个以为是十六进制,一个以为是十进制。