C语言基础中,进制之间的转换

C语言基础中,进制之间的转换     作者:王可利(Star·星星)

 

整型的表现形式有如下几种方式:

十进制: 都是以0-9这九个数字组成,不能以0开头。

二进制: 由0和1两个数字组成。

八进制: 由0-7数字组成,为了区分与其他进制的数字区别,开头都是以0开始。

十六进制:由0-9和A-F组成。为了区分于其他数字的区别,开头都是以ox开始。

 

1.十进制转二进制

方法:十进制的数除以2,然后取余数,直到最后的商为0为止。。然后余数从下到上取(这个就是二进制的数)

 

2.二进制转十进制

方法:把二进制数按权展开、相加就是十进制数。

 

分析:二进制4位数字,从个位开始数:0.1.2.3 就分别是  

        个位的数乘以2的0次方+十位的数乘以2的1次方+百位的数乘以2的2次方+千位的数乘以2的3次方=十进制的数

 

3.十进制转八进制(类似十进制转二进制的方法)

方法:十进制的数一直除以8,直到商为0,然后倒着取余八进制的数

 

 

4.八进制转十进制(类似二进制转十进制的方法)

方法:把八进制的数按权展开,相加就是十进制数。

 

5.二进制转八进制

方法1:二进制 -> 十进制 -> 八进制

方法2:2的3次方是8,所以,二进制可以从个位开始,切成3个3个为一组,最高位不够3个就补0。。

           然后每一组数就代表八进制的一个位数。。

 

 

二进制转十六进制也是一样的方法

 

5.八进制转二进制

方法1:八进制 -> 十进制 -> 二进制

方法2:八进制每一位数进行除2取余,如果取出来的余数不够3个就在最高位补0。(为什么是不足3个在最高位补0?因为2的3次方是8)。

 

 

 

十六进制转二进制也是一样的方法

 

转载于:https://www.cnblogs.com/StarKL/p/6088660.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值