逻辑右移和算术右移

来源:互联网 发布:mac不能安装flash 编辑:程序博客网 时间:2024/05/02 09:38
汇编语言中的逻辑右移(SHR)是将各位依次右移指定位数,然后在左侧补0,算术右移(SAR)是将各位依次右移指定位数,然后在左侧用原符号位补齐。
比如,在汇编语言中,对于算术右移,如果最高位为1,则补1,否则补0, 如将10000000算术右移7位,应该变成11111111,而逻辑右移7位,则不考虑符号位,变为00000001,这点就是算术右移和逻辑右移的区别。
在汇编中,可以用算术右移来进行有符号数据的除法。把一个数右移n位,相当于该数除以2的n次方。
比如,汇编语言中的:
SAR R3,1
其意义相当于R3=R3/2



0 1
原创粉丝点击