二进制、八进制、十进制、十六进制之间的换算

本文详细介绍了二进制、八进制、十进制和十六进制之间的转换方法,包括二进制的原码、反码和补码的概念,以及如何通过二进制作为中间数进行各种进制间的转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

二进制、八进制、十进制、十六进制之间的换算

进制

二进制(binary):0,1,满2进1,以0b或0B开头。
十进制(decimal):0-9,满10进1。
八进制(octal):0-7,满8进1,以数字0开头。
十六进制(hex):0-9和A-F,满16进1,以0x或0X开头表示,此处A-F不区分大小写。如:0x21AF + 1 =0X21B0

二进制

二进制的整数有三种形式:
原码:直接将一个数值换成二进制数。最高为是符号位。
负数的反码:是对原码按位取反,只是最高位(符号位)确定为1。
负数的补码:其反码加1。

计算机以二进制补码的形式保存所有的整数:
正数的原码、反码、补码都相同。
负数的补码是其反码加1。

计算机底层都以补码的方式来存储数据

如:(二进制原码 -14)11110010 =>(反码)10001101=>(补码)10001110

进制的基本转换

进制的基本转换:
十进制和二进制互转
二进制转十进制:乘以2的幂数,如:1110 = 1x2^3 + 1x2^2 + 1x2^1 + 0x2^0
十进制转二进制:除以2取余数的逆,如:14=(14/2=7–0)(7/2=3–1)(3/2=1–1)(1/2=0–1)=0111=1110(逆)

二进制、八进制、十进制、十六进制互转通过二进制作为中间数来进行转换。

二进制的三次幂是八进制,将三个作为一位转换成八进制,
如: 11101001(二进制)->0351(八进制)

同理,二进制的四次幂是十六进制,将四个作为一位转成十六进制,
如:11101001(二进制)->0XE9(十六进制)

如果是八进制或者十六进制转二进制,则将每一位拆成三位拼一起即可。

以上。
如有不合理的地方或更好的建议,请不吝赐教,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值