文章目录
overview:
移位操作:
二进制移位(n位)操作的内涵:
计算机中小数点的位置是事先约定的,因此,二进制表示的机器数在相对于小数点作n 位左移或右移时,其实质就是该数乘以或除以 2 n ( n = 1 , 2 , ⋯ , n ) 2^{n}(n=1,2, \cdots, n) 2n(n=1,2,⋯,n)
sum up
三种机器码的移位操作的结果代码所对应的真值大致相同(参看下面的例子)
总结出来的三种机器码的移位填补规则(在负数部分,三种机器码的移位添补规律虽然各有不同特点,但是体现在真值上的移位效果(结合移位定义)则较为一致)
结论:
解释
例子
设机器数字长为 8 位 ( 含 1 位符号位 ) , 若
A
=
±
26
A=\pm 26
A=±26,
写出三种机器数左,右移一位和两位后的表示形式及对应的真值,
并分析结果的正确性:
可见,对于正数,三种机器数移位后符号位均不变
左移时最高数位丢1,结果出错;
右移时最低数位丢1 ,影响精度。
可见,对于负数,三种机器数算术移位后符号位均不变。
负数的原码左移时,高位丢1,结果出错;右移时,低位丢1,影响精度。
负数的补码左移时,高位丢0,结果出错;右移时,低位丢1,影响精度。
负数的反码左移时,高位丢0,结果出错;右移时,低位丢0,影响精度。
标签:右移,计组,左移,负数,三种,出错,添补,移位 来源: https://blog.csdn.net/xuchaoxin1375/article/details/118102839
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。