移位指令有什么用?
2020-11-28
问题:移位指令有什么用?B,D,W在移位时知道可以一次移一位,D,W可以一次移一位或四位,那么可以移二位,三位或六位,七位吗?是什么原理?请分别讲解下B,W,D的移位要求,指一次可以移;几位,我是说三,六或七位能行不,能行会出现什么结果,在实际生产中的应用?请举例说明。本人新手,请详细讲解,万分感谢!
1.移位指令有什么用?
移位指令同其它汇编指令的移位没有什么不同,一般都是用来对操作数进行一些顺序性的变化,也有些人用来做乘除法。
2.B,D,W可以移二位,三位或六位,七位吗?是什么原理?
当然可以。它们都有相应的指令支持,指令里面的N就是需要移动的位数。
3.能行会出现什么结果?
循环移位指令可以使里面的数据在移出后又返回到后面的位置。
普通移位指令在数据移出后,后面的位置直接补0。
4.在实际生产中的应用?
比如电机或者灯挨个启动关闭,移位指令就比其它指令更加简洁。
有些人也喜欢用移位指令做乘除法,当计算量很大时可以明显加快计算速度。