C语言学习经验(二)

一、进制之间的转换

1、十进制转二进制

使用短除法,10进制数除以2,取余数,最后将余数倒叙排列就是2进制表达了

2、16进制转2进制

注意:十六进制由这些字符组成

0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F

1位二进制数用4位二进制数表达

如 A H用十进制数表达就是10,那么用二进制数表示就是10 = 2^3+2^1 =1010(注意H表示什么类型的进制,十进制为D,但我们一般省略。)

即用1010表示A

那么 12B H如何表示?

先拆分,1,2,B。

1用二进制如何表示,0001

2用二进制如何表示,0010

B用二进制如何表示,B的十进制数是11,11 = 2^3 + 2^1 +2^0 = 1011

即12BH表示的二进制数为:0001 0010 1011就是这么简单!!!

3、8进制转二进制

(跟16进制转2进制十分相似)

就是用3位二进制数表示1位8进制数。

8进制数由这些数组成:0,1,2,3,4,5,6,7。

比如 

076O

先拆分:

0,7,6,(O表示8进制数)

0用二进制数表示为:000

7用二进制数表示为:111

6用二进制数表示为:110

即076O = 000 111 110

4、重点来了

10进制的小数转2进制、8进制、16进制的方法:

转什么进制乘2(或者8,16)取整

比如0.51转化为二进制数为(取整到小数5位)

0.5 * 2 = 1.02  > 1

0.02 *2 = 0.04 > 0

0.04 * 2 = 0.08 > 0

0.08 * 2 = 0.16 > 0

0.16 * 2 = 0.32 > 0

即0.51 = 0.10000B

0.51转16进制也是如此精度为5位!!

0.51 * 16 = 8.16 -> 8

0.16 * 16 = 2.56 -> 2

0.56 * 16 = 8.96 -> 8

0.96 * 16 = 5.57 -> 5

0.57 * 16 = 9.12 -> 9

综上0.51 = 0.82859 H

好了本期的进制转换就到此结束了,喜欢的点个关注!!!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值