问问题描述
答精选答案

数据的逻辑操作,用于汇编语言中。
汇编语言中的逻辑右移(SHR)是将各位依次右移指定位数,然后在左侧补0,算术右移(SAR)是将各位依次右移指定位数,然后在左侧用原符号位补齐。比如,在汇编语言中,对于算术右移,如果最高位为1,则补1,否则补0, 如将10000000算术右移7位,应该变成11111111,而逻辑右移7位,则不考虑符号位,变为00000001,这点就是算术右移和逻辑右移的区别。在汇编中,可以用算术右移来进行有符号数据的除法。把一个数右移n位,相当于该数除以2的n次方。比如,汇编语言中的:SAR R3,1其意义相当于R3=R3/2
答其他回答(1条)
-
算术右移指带符号移动,并且是一位一位一次来的.110110011是-10110011前面的第一个1是符号位那么第一次移位后数字也应该是-的,所以移位后前面补的是符号位1连起来就是111011001,同样的道理再移一次就是111101100。
本文来自作者[LICHEN李晨]投稿,不代表公众科技网立场,如若转载,请注明出处:https://www.cpst.net.cn/peixunjingxuan/202609/345306.html

评论列表(4条)
我是公众科技网的签约作者“LICHEN李晨”!
希望本篇文章《算术右移一位是什么意思》能对你有所帮助!
本站[公众科技网]内容主要涵盖:教育咨询,知识百科
本文概览:数据的逻辑操作,用于汇编语言中。汇编语言中的逻辑右移(SHR)是将各位依次右移指定位数,然后在左侧补0,算术右移(SAR)是将各位依次右移指定位数,然后在左侧用原符号位补齐。比如,在汇编语言中,对于算术右移,如果最高位为1,则补1,否则补0, 如将10000000算术右移7位,应该变成11111111,而逻辑右移7位,则不考虑符号位,变为00000001,这点就是算术右移和逻辑右移的区别。在汇编中,可以用算术右移来进行有符号数据的除法。把一个数右移n位,相当于该数除以2的n次方。比如,汇编语言中的:SAR