单片微机原理及应用_第1页
单片微机原理及应用_第2页
单片微机原理及应用_第3页
单片微机原理及应用_第4页
单片微机原理及应用_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

单片微机原理及应用课件第一页,共三十八页,2022年,8月28日以单片机为核心的应用系统广泛应用于:家用电器;工业过程控制;仪器仪表;网络及通信;航空、汽车等领域等。第二页,共三十八页,2022年,8月28日单片机系统的组成CPUABDBCB存储器接口部件键盘显示器数码管打印机定时计数器第三页,共三十八页,2022年,8月28日单片机系统硬件部分软件部分单片机芯片外围器件CPU内存中断控制逻辑通用接口运算器寄存器组控制器并行I/O口串行UART定时/计数器ADC0809、DAC0832825382518255A、81552764、6264指令系统应用程序第四页,共三十八页,2022年,8月28日§1.4计算机中的数和编码计算机只识别和处理数字信息,数字是以二进制数的形式表示的。它易于物理实现,同时,资料存储、传送和处理简单可靠;运算规则简单,使逻辑电路的设计、分析、综合方便,使计算器具有逻辑性。一、数制1、常用数制(1.)十进制数:1985=1000+900+80+5=1×103+9×102+8×101+5×100

特点:有0~9十个不同的符号。逢十进一。一般用下脚标D表示,如1985D,或无下脚标。第五页,共三十八页,2022年,8月28日

(2.)二进制数:特点:有0,1两个不同的符号。逢二进一。二进制数的下脚标为B

例如:对于整数,

1001B=1×23+0×22+0×21+1×20=9D

对于小数,0.101B=1×2-1+0×2-2+1×2-3=0.625D

二进制数每一位的权是:以小数点分界,…..24,23,22,21,20.2-1,2-2,2-3,……第六页,共三十八页,2022年,8月28日

(3.)十六进制数:有0~9,A,B,C,D,E,F共十六个不同的符号。逢十六进位。用下脚标“H”表示十六进制数。例:327H=3×162+2×161+7×160=807D3AB.11H

=3×162+A×161+B×160+1×161+1×16-2

=939.0664D

第七页,共三十八页,2022年,8月28日2、数制的转换(1.)二进制转换为十进制数方法:按权展开。111.101B=1×22+1×21+1×20+1×2-1+0×2-2

+1×2–3=4+2+1+0.5+0.125=7.625D(2.)十进制数转换为二进制数方法:整数部分除二取余,小数部分乘二取整第八页,共三十八页,2022年,8月28日45余数22111051211001222222即45=(101101)2例1、将十进制数45转换成二进制数。第九页,共三十八页,2022年,8月28日例2:十进制小数部分的转换:乘二取整0.6875×2最高位取11.37500.375×2取00.750×2取11.500.5×2最低位取11.0从上至下写成从左至右10110.6875D=0.B第十页,共三十八页,2022年,8月28日二进制数转换成八进制数与上述类似。(3.)十六进制数与二进制数之间的转换:十六进制数转换为二进制:9AB.7C5H100110101011.011111000101B

二进制数转换十六进制数:0001101111100011.100101111000B1BE3.978H第十一页,共三十八页,2022年,8月28日二、数码1、机器数与真值机器只认识二进制数:0、1。这是因为,电路状态常常有两种情况,如:电路的通、断;高电平、低电平;可用0、1表示。在机器中,这种0、1、0、1的表现形式称为机器数。机器数分为无符号数、带符号数。无符号数如:00000001、10010011、01010010、……等等,范围:00H~ FFH。有符号数如:+1010110B、-1101001B、等等01010110B、11101001B第十二页,共三十八页,2022年,8月28日2、机器数的编码及运算对带符号数而言,有原码、反码、补码之分,计算机内一般使用补码。(1)原码将数“数码化”,原数前“+”用0表示,原数前“-”用1表示,数值部分为该数本身,这样的机器数叫原码。设X——原数;则[X]原=X(X0)[X]原=2n-1–X(X0),n为字长的位数。如,[+3]原=00000011B[-3]原=27-(-3)=10000011B0有两种表示方法:00000000——+010000000——-0原码最大、最小的表示:+127、-128第十三页,共三十八页,2022年,8月28日(2)反码规定正数的反码等于原码;负数的反码是将原码的数值位各位取反。[X]反=X(X0)[X]反=(2n–1)+X(X0)如,[+4]反=[+4]原=00000100B[-4]反=(28–1)+(-5)=11111111-00000101=11111010B

反码范围:-128~+127两个0:+0——00000000B-0——11111111B第十四页,共三十八页,2022年,8月28日运用补码可使减法变成加法。规定:正数的补码等于原码。负数的补码求法:1)反码+12)公式:[X]补=2n+X(X<0)如,设X=-0101110B,则[X]原=10101110B则[X]补=[X]反+1=11010001+00000001=11010010B如,[+6]补=[+6]原=00000110B[-6]补=28+(-6)=10000000–00000110=11111010B8位补码的范围–128~+127。0的个数:只一个,即00000000而10000000B是-128的补码。原码、反码、补码对照表:见下表123(3)补码补码的概念:现在是下午3点,手表停在12点,可正拨3点,也可倒拨9点。即是说-9的操作可用+3来实现,在12点里:3、-9互为补码。第十五页,共三十八页,2022年,8月28日

八位二进制数所能表示的数据范围机器数无符号数原码反码补码000000000+0+0+0000000011+1+1+1.....01111111127+127+127+12710000000128-0-127-12810000001129-1-126-127..........11111110254-126-1-211111111255-127-0-1第十六页,共三十八页,2022年,8月28日(4)补码的运算当X≥0时,[X]补=[X]反=[X]原[[X]补]补=[X]原[X]补+[Y]补=[X+Y]补[X-Y]补=[X+(-Y)]补例:已知

X=52Y=38求X-Y

方法1:减法:

X-Y=52-38=1400110100

-)0010011000001110第十七页,共三十八页,2022年,8月28日方法2:加法

X-Y=[[X-Y]补]补=[[X]补+[-Y]补]补=[[52]补+[-38]补]补=[14]补=14

[52]补:00110100

[-38]补:+)11011010100001110

自然丢失计算机在做算术运算时,必需检查溢出,以防止发生错误

第十八页,共三十八页,2022年,8月28日(5)运算的溢出问题由于计算机中表示数据的字长(位数)有一定限制,所以数据的表示应有一个范围。如字长8位时;补码范围-128~+127若运算结果超出这个范围,便溢出。例:[98]补:01100010[25]补:+)00011001

[123]补001111011未溢出00

Cs+1Cs(未溢出)

第十九页,共三十八页,2022年,8月28日[85]补:01010101

[47]补:+)00101111[132]补:10000100溢出01

Cs+1Cs(溢出)错:两个正数相加和为负数。

[-85]补:10101011[-47]补:+)11010001

[-132]补:101111100溢出10

Cs+1Cs

错:两个负数相加和为正数。第二十页,共三十八页,2022年,8月28日[-19]补:01010101

[-79]补:+)10110001[-98]补:11001111未溢出11

Cs+1Cs错:两个负数相加和为正数。总之:结果正确(无溢出)时,Cs+1=Cs结果错误(溢出)时,Cs+1≠Cs溢出判断:溢出=Cs+1Cs(即结果是0为无溢出;1为有溢出)第二十一页,共三十八页,2022年,8月28日1、

(6)

十进制数的编码对机器:二进制数方便,对人:二进制数不直观,习惯于十进制数。在编程过程中,有时需要采用十进制运算,但机器不认识十进制数。怎么办?可以将十进制的字符用二进制数进行编码:

0

00005010110101111100016011010112

00107011111003001181000110140100910011110

这叫做二进制数对十进制编码——BCD码。上述每4位二进制数表示一个十进制字符,这4位中各位的权依次是:8、4、2、1——8421BCD码。第二十二页,共三十八页,2022年,8月28日BCD码的运算:例、18+)321

00011000+)00000011

00011011

B是非BCD码(错)需进行十进制调整:

00011000

+)0000001100011011(个位大于9,应进1)

+)0110(加6使进1)00100001(结果形如21)第二十三页,共三十八页,2022年,8月28日BCD码加法规则:两个BCD数相加时,“某位”的和小于10则保持不变;两个BCD数相加时,“某位”的和大于9,则和数应加6修正。BCD码减法规则:两个BCD数相减时,“某位”的差未发生借位,则差数保持不变;两个BCD数相减时,“某位”发生了借位,其差应减6修正。这里“某位”指BCD数中的“个位”、“十位”、“百位”、……第二十四页,共三十八页,2022年,8月28日加法举例:

01100101(65)

+)10010111(97)11111100

+)01100110(加66调整)101100010(162)减法举例:00110100(34)

-)00010101(15)00011111

-)0110(减6调整)00011001(29)第二十五页,共三十八页,2022年,8月28日(7)字符信息的表示计算机能识别0、1、0、1、……;这些0、1、0、1、……有的代表数值,有的仅代表要处理的信息(如字母、标点符号、数字符号等文字符号),所以,计算机不仅要认识各种数字,还要能识别各种文字符号。人们事先已对各种文字符号进行二进制数编码。如,美国信息交换标准码——ASCII码,用一个字节表示一个字符。低7位是字符的ASCII码值;最高位是通信时的校验位。

第二十六页,共三十八页,2022年,8月28日第二十七页,共三十八页,2022年,8月28日综上所述,计算机中的数可以有各种不同的表示方法,计算机中以一个字节为一个单元保存数据,一个字节为8位二进制数,可以有256种组合,也就是可以表示256个数据,我们称它为机器数,每一个机器数实际表示的是什么,要看采用的是那种表示方法。第二十八页,共三十八页,2022年,8月28日二、定点数和浮点数

l

定点表示法:表示小数点的位置是固定不变的。分为纯整数和纯小数两类。数符尾数·纯整数表示方法纯小数表示方法数符·尾数其格式如下所示

温馨提示

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

最新文档

评论

0/150

提交评论