普中开源电子分享网

 找回密码
 立即注册
搜索
查看: 5283|回复: 0

单片机必须掌握的东西------进制及转换

 关闭 [复制链接]

139

主题

382

帖子

1531

积分

金牌会员

Rank: 6Rank: 6

积分
1531
发表于 2015-9-8 15:25:17 | 显示全部楼层 |阅读模式
本帖最后由 scholarship 于 2015-9-8 15:25 编辑

    进制也就是进位制,是人们规定的一种进位方法。对于任何一种进制---X进制,就表示某一位置上的数运算时是逢X进一位。二进制就是逢二进一,八进制逢八进一,十进制是逢十进一,十六进制是逢十六进一。
单片机是信息处理的工具,任何信息必须转换成二进制形式数据后才能由单片机进行处理,存储和传输。二进制数中只有两个字符0和1,表示具有两个不同稳定状态的元器件。例如,电路中有,无电流,有电流用1表示,无电流用0表示。类似的还比如电路中电压的高,低,晶体管的导通和截止等。
在单片机中常用的进制有二进制、八进制、十进制、十六进制。
二进制:它由两个基本数字0,1组成,二进制数运算规律是逢二进一。
八进制:它由0,1..7组成 ,八进制数运算规律是逢八进一
十进制:有0,1,2….9十个基本数字组成,十进制数运算是按“逢十进一”的规则进行的.
十六进制: 它由十六个字符0~9以及A,B,C,D,E,F组成(它们分别表示十进制数10~15),十六进制数运算规律是逢十六进一,即基R=16=2^4,通常数字前面加加以0x表示。
数制转换:

1.二进制数、十六进制数转换为十进制数(按权求和)
二进制数、十六进制数转换为十进制数的规律是相同的。把二进制数(或十六进制数)按位权形式展开多项式和的形式,求其最后的和,就是其对应的十进制数——简称“按权求和”.
例如:把(1001.01)2 二进制计算。
解:(1001.01)2
=8*1+4*0+2*0+1*1+0*(1/2)+1*(1/4)
=8+0+0+1+0+0.25
=9.25
把(38A.11)16转换为十进制数
解:(38A.11)16
=3×16的2次方+8×16的1次方+10×16的0次方+1×16的-1次方+1×16的-2次方
=768+128+10+0.0625+0.0039
=906.0664

2.十进制数转换为二进制数,十六进制数(除2/16取余法)

整数转换.一个十进制整数转换为二进制整数通常采用除二取余法,即用2连续除十进制数,直到商为0,逆序排列余数即可得到――简称除二取余法.
例:将十进制数86转化为二进制
2 | 86…… 余0   
2 | 43…… 余1
2 | 21…… 余1
2 | 10…… 余0
2 | 5 …… 余1
2 | 2 …… 余0
2 | 1 …… 余1  

同理,把十进制数转换为十六进制数时,将基数2转换成16就可以了.
例:将25转换为十六进制数
解:25÷16=1 余数9
1÷16=0 余数1
所以25=(19)16

3.二进制数与十六进制数之间的转换

由于4位二进制数恰好有16个组合状态,即1位十六进制数与4位二进制数是一一对应的.所以,十六进制数与二进制数的转换是十分简单的.
(1)十六进制数转换成二进制数,只要将每一位十六进制数用对应的4位二进制数替代即可――简称位分四位.
例:将(4AF8B)16转换为二进制数.
解: 4 A F 8 B
0100 1010 1111 1000 1011
所以(4AF8B)16=(1001010111110001011)2
(2)二进制数转换为十六进制数,从低位向高位每四位一组,依次写出每组4位二进制数所对应的十六进制数――简称四位合一位.
例:将二进制数(0001 1101 0110)2转换为十六进制数.
解: 0001 1101 0110
1 D 6
所以(111010110)2=(1D6)16
转换时注意最后一组不足4位时必须加0补齐4位


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

Archiver|手机版|小黑屋|普中开源电子分享网 粤ICP备16123577号-2

GMT+8, 2024-5-9 01:03 , Processed in 0.086376 second(s), 30 queries .

Powered by 论坛搭建 X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表