C语言中的进制转换

计算机中,一个数值可以用不同的进制形式来表示,不管是哪种进制形式表示,数值本身是不会发生变化的,各个机制之间可以实现转换

十进制转二进制

采用除2取余的方式,将要转换的数,除以2,得到商和余数,将商继续除以2,得到商和余数,直到商为0,最后,将所有的余数倒序排列,即可
比如,十进制的6,表示二进制为110

二进制转十进制

将要转换的数,从右到左用二进制位上的每个数,乘以2的相应次方,右边第一位数乘以2的0次方,第二位数乘以2的1次方,第n位数乘以2的n-1次方,最后,把所有的结果相加,即可
比如,二进制的01100100,转换成十进制为100

二进制转八进制

就是将二进制数,从右向左,每3位分为一段,如果不足3位,用0补齐,然后,将二进制每段的3位,转换为八进制的一位,最后组合即可
二进制、八进制数值对照表
000——0
001——1
010——2
011——3
100——4
101——5
110——6
111——7
比如,将二进制数000101010,表示八进制为0052
注意,八进制必须以0开头

二进制转十六进制

与八进制类似,不同的是将二进制数,每4位分成一段,如果不足4位用0补齐,将二进制数,每4位分成一段,然后将二进制的每一段转换为十六进制的一位,最后组合即可
二进制与十六进制对照表
0000——0
0001——1
0010——2
0011——3
0100——4
0101——5
0110——6
0111——7
1000——8
1001——9
1010——A
1011——B
1100——C
1101——D
1110——E
1111——F
比如,二进制数01010110,转换为十六进制为0x56,或者为0X56
注意,十六进制必须以0x,或者0X开头

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值