单片机原理与实践 C语言 高卫东 单片机基础_第1页
单片机原理与实践 C语言 高卫东 单片机基础_第2页
单片机原理与实践 C语言 高卫东 单片机基础_第3页
单片机原理与实践 C语言 高卫东 单片机基础_第4页
单片机原理与实践 C语言 高卫东 单片机基础_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

会计学1单片机原理与实践C语言高卫东单片机基础1.3.1进位计数制(进位制)基本概念(1)数码:数制中表示基本数值大小的不同数字符号。例如,十进制有10个数码:0、1、2、3、4、5、

6、7、8、9(2)基数:数制所使用数码的个数。例如,二进制的基数为2;十进制的基数为10。(3)数位:指数码在一个数中的位置。(4)位权:每一个数位上的数码所表示数值的大小。例如,十进制的123,1的位权是100,2的位权是10,3的位权是1。第一章单片机基础1.3数制与数制转换第1页/共29页1.3.1计算机中常用的几种计数制1.十进制特点:(1)有10个基本数码:0、1、2、3、4、5、6、7、8、9(2)加法运算中,逢10进1,减法运算中,借1当10。

一个十进制数P,可以简计为(P)10或PD,也可省略为P。如:(10086)10、10086D或100861.3数制与数制转换第一章单片机基础第2页/共29页1.3.1计算机中常用的几种计数制2.二进制特点:(1)只有两个数码0和1

(2)加法运算中,逢2进1;减法运算中,借1当2。一个二进制数P,可以简计为(P)2或PB。如:(101011)2

、101011B1.3数制与数制转换第一章单片机基础第3页/共29页1.3数制与数制转换1.3.1计算机中常用的几种计数制

3、十六进制◆十六进制有16个数码:0、1、2、3、4、5、6、7、8、9、

A、B、C、D、E、F;进位基数为16;一个十六进制数P,可以简计为(P)16或PH。如:(FFFF)16、0A9DH

◆加法运算为“逢十六进一”;减法运算为“借一为十六”。其中:A-10、B-11、C-12、D-13、E-14、F-15

第一章单片机基础第4页/共29页1.3数制与数制转换1.3.2各进制数之间的转换

1、二进制数与十进制数的相互转换⑴二进制数转换为十进制数:将二进制数按权展开相加即可。二进制的数按权展开的表示法:

D=Dn-1.2n-1+Dn-2.2n-2+…+D0.20+D-1.2-1+…+D-m.2-m

如:(1011.01)2=1×23+0×22+1×21+1×20+0×2-1+1×2-2=8+0+2+1+0.25=(11.25)10

第一章单片机基础第5页/共29页1.3数制与数制转换1.3.2各进制数之间的转换

1、二进制数与十进制数的相互转换⑵十进制数转换为二进制数:①整数的转换将十进制数反复除以2,直至商为0,然后把第一次相除得到的余数作为最低位K0,最后一次得到的余数作为最高位Kn-1,将每次相除所得的余数按次序排列起来,Kn-1Kn-2…K0,即为所求的二进制数。第一章单片机基础第6页/共29页20=1;21=2;22=4;23=8;24=16;25=32;26=64;27=128;28=256;29=512;210=1024;211=2048;212=4096;213=8192。1.3数制与数制转换第一章单片机基础二进制与十进制的转换第7页/共29页1.3数制与数制转换1.3.2各进制数之间的转换

1、二进制数与十进制数的相互转换⑵十进制数转换为二进制数:①整数的转换例:将(121)10转换为二进制数

2121…余数为1(K0)60…余数为0(K1)2302…余数为0(K2)15…余数为1(K3)27…余数为1(K4)23…余数为1(K5)21…余数为1(K6)20低位高位(121)10=K6K5K4K3K2K1K0=(1111001)2第一章单片机基础第8页/共29页1.3数制与数制转换1.3.2各进制数之间的转换

1、二进制数与十进制数的相互转换⑵十进制数转换为二进制数:③对于既有整数又有小数的十进制数,可将其整数部分和小数部分分别转换成二进制数,然后加起来即可。例:将(241.43)10转换为二进制数,保留到小数点后4位:

(11110001.0110)2

第一章单片机基础第9页/共29页1.3数制与数制转换1.3.2各进制数之间的转换

4、二进制数与十六进制数之间的转换⑴二进制数转换为十六进制数:“四位并一位”即以小数点为基准,整数部分从右至左,每四位为一组,最左边不足四位的添0补足四位;小数部分从左至右,每四位为一组,最右边不足四位,后面添0补足四位,然后按组转换成十六进制数,连接起来就是得到的十六进制数。例:将(10110101011.011101)2转换为十六进制:010110101011.011101005A(10)B(11)74(10110101011.011101)2=(5AB.74)16第一章单片机基础第10页/共29页1.3数制与数制转换1.3.2各进制数之间的转换

4、二进制数与十六进制数之间的转换⑵十六进制数转换为二进制数:“一位并拆四位”把每一位16进制数都写成相应的四位二进制数,连接起来就是转换得到的二进制数。例:将(5A0B.0C)16转换为二进制数:01011010000010110000(5A0B.0C)16=(101101000001011.00001100)25A0B.0C1100第一章单片机基础第11页/共29页二进制与十六进制的转换表十六进制数二进制数十六进制数二进制数

0000081000

1000191001

20010A1010

30011B1011

40100C110050101D110160110E111070111F11111.3数制与数制转换第一章单片机基础第12页/共29页1.3.3单片机中常用编码1、二—十进制码(8421BCD)目的:简化人—机联系。方法:用4位的二进制数来表示1位十进制数。十进制数二进制数十进制数二进制数

00000501011000160110200107011130011810004010091001第一章单片机基础1.3数制与数制转换第13页/共29页例如:4+3即:(0100)BCD+(0011)BCD=(0111)BCD=7

15+12即:(00010101)BCD+(00010010)BCD

=(00100111)BCD=27第一章单片机基础1.3数制与数制转换第14页/共29页2、二—十进制调整

8421BCD码可表示数的范围为0000~1111(即十进制的0~15),而十进制数为0000~1001(即0~9)。所以,在运算时,必须注意以下两点:

1.3数制与数制转换第一章单片机基础第15页/共29页①当两个BCD数相加结果大于1001(即大于十进制数9)时,为使其符合十进制运算和进位规律,需对BCD码的二进制运算结果加0110(加6)调整。例如:4+8:(0100)BCD+(1000)BCD=(1100)BCD>1001,

调整后,其结果为:(1100)BCD+(0110)BCD=(00010010)BCD=12。1.3数制与数制转换第一章单片机基础第16页/共29页②当两个BCD数相加结果在高位上并不大于1001,但有低位进位发生,使得两个BCD数与进位一起相加,其结果大于1001,这时也要作加0110(加6)调整。例如:用BCD数完成54+48的运算。解:54=(01010100)BCD,48=(01001000)BCD1.3数制与数制转换第一章单片机基础第17页/共29页1.3数制与数制转换01010100+)01001000

10011100(低4位大于9)+)0110(低4位加6调整)10100010(低4位有进位)+)0110(高4位加6调整)000100000010

则(000100000010)BCD=102第一章单片机基础第18页/共29页数据的单位

1、bit(位):二进制数的一个数位(1或0)

2、Byte(字节):计算机中最小的容量单位(简称B)

101100111个字节由8个位组成(1B=8bits)

1KB=210B=1024B,1MB=220B=1024KB1GB=230B=1024MB,1TB=240B=1024GB3、Word(字):在计算机中作为一个整体被存取、传送、处理的二进制数字串叫做一个字或单元,每个字中二进制位数的长度,称为字长。一个字由若干个字节组成,不同的计算机系统的字长是不同的,常见的有8位、16位、32位、64位等,字长越长,存放数的范围越大,精度越高。1.3数制与数制转换第一章单片机基础第19页/共29页机器数与真值计算机内部的数值均用二进制来表示。通常用一个数的最高位作为符号位:

0表示正数,1表示负数;如:+18=00010010

-18=10010010

机器数:在计算机内部使用的、连同符号位一起数字化的数字。真值:机器数表示的真实值;机器数10110101->真值-53(十进制)或-0110101;机器数00101010->真值+42(十进制)或+0101010

可见,在机器数中,用0、1取代了真值的正负号。

1.3数制与数制转换第一章单片机基础第20页/共29页1.4.1无符数和有符数

有符号定点数的机器数表示方法

①原码:符号位用0表示正,用1表示负,数值部分为该数值的绝对值二进制形式。

如:1的原码表示方法:

[+1]原=00000001[-1]原=10000001例如:当n=8,十进制数+19和-19的原码表示为:[+19]原=00010011[-19]原=100100111.4单片机中数的表示第一章单片机基础第21页/共29页1.4.1无符数和有符数有符号定点数的机器数表示方法

②反码:正数表示与原码相同,

负数的反码是将其原码除符号位外,各位取反得到的。

如:[+1]原=

00000001[+1]反=[+1]原=

00000001

[-1]原=10000001[-1]反=11111110例如:当n=8,十进制数+19和-19的反码表示为:[+19]反=00010011[-19]反=11101100第一章单片机基础1.4单片机中数的表示第22页/共29页1.4.1无符数和有符数

有符号定点数的机器数表示方法

③补码:正数的补码与原码相同

负数是将其原码除符号位外,各位取反加1得到的。即在反码的基础上加1

如:[+1]原=

00000001[+1]补=[+1]原=

00000001

[-1]原=10000001[-1]反=11111110[-1]补=[-1]反+1=11111110+1=11111111例如:当n=8,十进制数+19和-19的补码表示为:[+19]补=00010011[-19]补=11101101第一章单片机基础1.4单片机中数的表示第23页/共29页

①一个正数的原码、反码和补码的表示形式相同,符号位置0,其它位是数的真值。负数的原码符号位→1其余位是该数的绝对值负数的反码符号位→1其余各位逐位取反负数的补码符号位→1其余各位逐位取反,末位加1[+0]原=000…0[-0]原=100…0不唯一[+0]反=000…0[-0]反=111…1不唯一[+0]补=00…0[-0]补=00…0唯一

②真值零的表示:小结第一章单片机基础1.4单片机中数的表示第24页/共29页补码的代数加减运算(1)补码加法

[X+Y]补

=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论