关于单片机汇编程序中乘法指令的问题。

MOV A,#1DH
MOV B,#20H ;32送B
MUL AB ;(即BA左移5位)
上面的三条指令有何作用。是不是实现A中的数据左移5位,如果是请说明原因。如果要实现左移6、3位那么指令又该如何写呢,你能使用RL指令哦。同时右移动又该如何实现。
不能使用RL指令!!

是左移5 位。
2 X 2 =4 (00000010 X 2 = 00000100)
乘2 就是左移一位,乘4左移2 位,以此类推,乘32就是左移5 位(2 的多少次方,就是左移多少位)
右移就是用除法了
左移6 位、3 位你应该明白了吧
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-03-29
乘以32是左移5位,就是2的5次方,
MOV A,#1DH
MOV B,#40H ;64送B
MUL AB ;左移6位

MOV A,#1DH
MOV B,#08H ;8送B
MUL AB ;左移3位

右移是除了吧