原码 补码 反码
数值在计算机中是以补码的方式存储的
正数的原码 补码 反码 都一样
负数:
原码:[-9] 11001
反码:[10110] 第一位不变,其余取反
补码:[10110]+1 [10111] 原码的基础上符号位不变,其余各位取反,最后加一,【反码的基础加一】。
取反:[~补码] :[01000]
取反的公式:-(a+1)
算法和逻辑左右移:
逻辑左移时,最高位丢失,最低位补0;
逻辑右移时,最高位补0,最低位丢失;
算术左移时,依次左移一位,尾部补0,最高的符号位保持不变。
算术右移时,依次右移一位,尾部丢失,符号位右移后,原位置上复制一个符号位;
循环左移时,将最高位重新放置最低位
循环右移时,将最低位重新放置最高位
使用循环操作的一个目的就是把每一位连续放到最左边,以判定数据的符号。如果要把一个数字的高位部分和低位部分互换,采用一位操作就很方便,速度很快。
例如:
1010100010101
逻辑左移一位结果为 0101000101010
逻辑右移一位结果为 0101010001010
算术左移一位结果为 1101000101010
算术右移一位结果为 1101010001010
循环左移一位结果为 0101000101011
循环右移一位结果为 1101010001010
继续阅读与本文标签相同的文章
上一篇 :
用户体验重要吗?用户体验是判定网站权重因素吗?
-
能力小访谈| 支付宝开放能力全方位助力白鲸鱼营销与内容安全
2026-05-18栏目: 教程
-
听众提建议,鼎城区城管局马上改
2026-05-18栏目: 教程
-
PARTsolutions让旺众/Wanzl的新设计缩短了2个多小时
2026-05-18栏目: 教程
-
第六届世界互联网大会将推出5G自动公交线路
2026-05-18栏目: 教程
-
市科技局加快黄石双创战略团队培育
2026-05-18栏目: 教程
