计算机基础-补码

原码

最高位0表示正,1表示负,其余二进制位是该数字的绝对值的二进制位。如:-5的原码为10101

原码简单易懂,但加减运算复杂,存在加减乘除四种运算,增加了cpu的复杂度,零的表示不唯一

反码

正数的反码与其原码相同,负数的反码是对正数逐位取反,符号位保持为1

如:-5的反码为11010

反码运算不便,也没有在计算机中应用

补码

(1)已知十进制求二进制

求正整数的二进制 除2取余,直至商为零,余数倒叙排序

求负数的二进制 先求与该负数相对应的正整数的二进制代码,然后将所有位取反,末尾加1,不够位数时左边补1

求零的二进制 全是零

(2)已知二进制求十进制

如果首位是0,则表明是正整数,按普通方法求

如果首位是1,则表明是负整数,将所有位取反,再加一,所得数字就是该负数的绝对值

如果全是零,则对应的十进制也是零

Q : 一个int型的变量所能够存储的数据范围是多大?

int占4个字节,32位
int所能存储的最大值二进制表示:
0111 1111 1111 1111 1111 1111 1111 1111
用十六进制表示 : 0x7FFFFFFF

int所能存储的最小值二进制表示:
1000 0000 0000 0000 0000 0000 0000 0000
用十六进制表示 0x80000000

8位二进制所代表的的十进制示意图

二进制十进制
0000 00000
0000 00011
0111 1111127
1000 0000-128
1000 0001-127
1000 0010-126
1111 1111-1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值