为了账号安全,请及时绑定邮箱和手机立即绑定

【备战春招】 第3天 数据进制的转换

标签:
嵌入式

课程内容:

进制

概念

我们可以使用有限的数字符号来代表所有的数值。可使用数字符号的数目,我们称为为基数。基数为n,则为n进制。

十进制数123,基数为10.我们可以只用0~9这是个数组符号。

3---------->位权为1(即10的0次方)

2---------->位权为10(即10的1次方)

1---------->位权为100(即10的二次方)

123 = 1 * 10的2次方 + 2 * 10的1次方 + 3 * 10的0次方

常用进制介绍

十进制

可用的数字符号: 0-9

基数:10

特点:逢十进一

八进制

可使用的数字符号:0,1,2,3,4,5,6,7

基数:8

特点:逢八进一

二进制

可使用的数字符号:0,1

基数:2

特点:逢二进一

十六进制

可使用的数字符号:0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f

基数:16

特点:逢十六进一

常用进制转换

转十进制

方法

将相应进制的数按位权展开成多项式,求十进制的和

示例

二进制转十进制

讲解

比如二进制事10110转十进制就倒过来01101分别乘以2的n次方然后相加

八进制转10进制也是一样,倒过来分别乘以8的n次方然后相加

遇见小数是从左到右,分别是-1,-2次方,比如0.65,6乘以n的-1次方加5乘以n的-2次方

十进制转其他进制

常规转换

整数部分转换

除基取余法:用我们的十进制数去除以我们目标的基数,第一次相除所得余数为目的数的最低位, 将所得商再除以基数,反复执行上述过程,直到商为“0”,所得余数为目的数的最高位。

比如转换二进制,十进制就一直除以2然后把余数从下往上倒着写

注意2除以2是=1还要再进行一次除基

小数部分转换

乘基取整法:用小数乘以目标数值的基数,第一次相乘结果的整数部分为目的数的最高位,

将其小数部分再乘基数依次记下整数部分,反复进行下去,直到小数部分

为“0”,或满足要求的精度为止。

示意图

高效转换8421法

介绍

8421码是一种用4位二进制码的组合代表1位十进制数的编码

二进制转10进制

十进制数 8421BCD码

0 0000

1 0001

2 0010

3 0011

4 0100

5 0101

6 0110

7 0111

8 1000

9 1001

10进制转2进制

位 二进制位位权 数值

0 2^0 1

1 2^1 2

2 2^2 4

3 2^3 8

4 2^4 16

5 2^5 32

6 2^6 64

7 2^7 128

8 2^8 256

使用方法

把一个十进制数拆分位上述右边的数值相加

然后把二进位从高到列排列。若是用到了对应的数值,二进制位设置为1,否则设置为0

书写完毕后,对应的二进制位排列就是该十进制转换为二进制的值。

示例

题目:求十进制200对应的二进制数。

位 7 6 5 4 3 2 1 0

数值 128 64 32 16 8 4 2 1

200 = 128 + 64 + 8

128,64,8对应的位是1

其余的全是0

位 7 6 5 4 3 2 1 0

二进制位 1 1 0 0 1 0 0 0

其他进制转换

规则

一个八进制可以转换为三个二进制数。

一个十六进制数可以转换为四个二进制数。

八转二

八进制 二进制

0 000

1 001

2 010

3 011

4 100

5 101

6 110

7 111

十六转二

十六进制 二进制 十六进制 二进制

0 0000 8 1000

1 0001 9 1001

2 0010 a 1010

3 0011 b 1011

4 0100 c 1100

5 0101 d 1101

6 0110 e 1110

7 0111 f 1111

学习收获:

进制之间转换要熟悉 8421码这个方法比较好用

除基取余法也要注意 2%2=1,1还可以除以2这点容易犯错

截图打卡:

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消