2.7 c++ 进制间的转换

2.7 进制间的转换

2.7.1 进制的概述

二进制:0~1 以0b开头 bitset<8>输出

八进制:0~7 以0开头 0123 oct输出

十进制:0~9 123 cout默认输出十进制

十六进制:0~9 a~f以0x开头 0x12 hex输出 不区分正负数

n进制:0~n-1

2.7.2 十进制转二进制、八进制、十六进制(短除法)

 进制 | n被转换的数

      进制 |商………………………………………余数

          进制 |商…………………………………余数 从下往上看余数
               进制 |商…………………………余数
                          商到0结束

案例1:123转成二进制 0b0111 1011

案例2:123转成八进制 0173

案例3:123转成十六进制 0x7b

2.7.3 二进制、八进制、十六进制转十进制(位次幂)

将n进制数xyz转换成十进制

          2位 1位 0位
           x     y     z
       xn^2 + yn^2 + z*n^0

案例1:将二进制数1100 0011转换成十进制

1* 2^7 + 1* 2^6 + 1* 2^1 + 1* 2^0 = 195

案例2:将0123转换成十进制 ---->83

案例3:将0x12转换成十进制 ---->18

2.7.4 二进制转八进制

从右往左:每3位二进制对应1位八进制

1101 1010 ----> 0332

11 011 010

3    3     2

2.7.5 二进制转十六进制

从右往左:每4位二进制对应1位十六进制

1101 1010---->0xda

1101 1010

   d       a

2.7.6 八进制转二进制

1位八进制对应3位二进制

0123—>001 010 011

2.7.7 十六进制 转 二进制

1位十六进制对应4位二进制

0x1d3c—>0001 1101 0011 1100

2.7.8 八进制 转 十六进制(没有直接方式)

八进制----->二进制------->十六进制

2.7.9 十六进制 转 八进制(没有直接方式)

十六进制---->二进制---->八进制

案例:0x123---->(八进制)0443

注意:不同的进制仅仅是数据的不同表现形式而已

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值