无符号与有符号整数 原码、反码、补码

无符号与有符号整数

有符号整数和无符号整数的区别在于怎么解释整数的最高位。
无符号整数:其最高位被c编译器解释为数据位;
有符号整数:其最高位被c编译器解释为符号位;
符号位为0 ,则为正;为1,则为负。
对字节数相同的整型数而言,由于有符号整数的数据位比无符号整数的数据位少了1位,而且少的刚好是最高位,因此有符号整数能表示的最大整数的绝对值只有最大无符号整数的一半。

范围:
无符号整数:0-65535
有符号整数:-32768-32767

原码、反码、补码:(举例-1)
原码
|1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1|
反码(符号位不变)
|1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 |
补码(+1)
|1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1|
(假设分配了两个字节的空间)

若为正数:原码,反码,补码相同。。

计算机运用补码可以用于减法的计算 如7-6=7+(-6)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值