c语言学习——补码

补码

1. 十进制转二进制

1.1 正整数转二进制
除2取余,直至商为0,余数倒序排列。

1.2 负整数转二进制
先求与该负数相对应的正整数的二进制代码,然后将所有位取反,末尾加1,不够位数时,左边补1(看类型 int为4个字节时补足32位).
例:十进制 int i = -100 转二进制
100的二进制是0110 0100 取反 1001 1011 末尾加1为
1001 1100 然后左边补1(补24个1).

1.3 0的二进制
全是0

2. 二进制转十进制

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

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

1.3 如果全是0,则是0.

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值