《单片机原理及接口技术》学习与实践指导.doc

上传人:枫** 文档编号:547775480 上传时间:2024-03-06 格式:DOC 页数:111 大小:1.11MB
返回 下载 相关 举报
《单片机原理及接口技术》学习与实践指导.doc_第1页
第1页 / 共111页
《单片机原理及接口技术》学习与实践指导.doc_第2页
第2页 / 共111页
《单片机原理及接口技术》学习与实践指导.doc_第3页
第3页 / 共111页
《单片机原理及接口技术》学习与实践指导.doc_第4页
第4页 / 共111页
《单片机原理及接口技术》学习与实践指导.doc_第5页
第5页 / 共111页
点击查看更多>>
资源描述

《《单片机原理及接口技术》学习与实践指导.doc》由会员分享,可在线阅读,更多相关《《单片机原理及接口技术》学习与实践指导.doc(111页珍藏版)》请在金锄头文库上搜索。

1、单片机原理及接口技术学习与实践指导第一篇 单片机原理与接口技术学习指导第1章 单片机基础知识1.1 内容提要1. 概述单片机具有体积小、功耗低、重量轻、价格低、可靠性高、开发使用简单等一系列优点。自问世以来己得到了非常广泛的应用。其中MCS-51及与之完全兼容的AT89系列单片机在我国应用最广。(1)微机发展形成两大分支,一类是PC机,另一类是嵌入式微处理器(单片机)。PC机系统全力实现海量高速数据处理,兼顾控制功能。嵌入式系统全力满足测控对象的实时测控功能,兼顾数据处理能力。(2)单片机发展概论。单片机发展可分为4个阶段。目前虽然己有性能优异的16位/32位单片机产生,但由于价格不菲,其应用

2、受到一定限制。相反,由于AT89系列8位单片机的性价比高,却得到了广泛的应用,成为目前最流行的主流单片机型。(3)AT89系列单片机是美国ATMEL公司生产的内含18KB Flash ROM的8位高性能单片机。按其功能可分为标准型、低档型和高档型三类,共有7种型号。2. 微机中数的表示方法及其运算微机系统中常用的数制是二进制、十进制和十六进制,表达形式有原码、反码和补码。计算机中二进制数的四则运算可以归结为加法和移位两种操作。(1)二进制、十进制和十六进制的概念二进制数和十六进制数是计算机中常用的数制。为区别起见,二进制数用尾缀B表示,十六进制数用尾缀H表示,十进制数则用尾缀D表示,但在书写时

3、通常省略其尾缀D。(2)二进制、十进制和十六进制数相互转换 二进制数及十六进制数转换成十进制数,只要将二进制数或十六进制数按权展开,然后相加即可。 十进制数转换成二进制数(或十六进制数),整数部分和小数部分要分别进行。即整数部分转换用“除2(或16)取余法”;小数部分用“乘2(或16)取整法”。 二进制数与十六进制数相互转换,按1位十六进制数对应于4位二进制数进行转换。3. 二进制数的运算(1)不同进制数的运算,必须先转换成同一进制数之后才能进行。(2)二进制数的运算分算术运算和逻辑运算两种。算术运算包括加、减、乘、除四则运算,它们都可以归结为做加法和移位运算。逻辑运算包括与、或、非、异或运算

4、等。 加法运算规则为“0+0=0,1+0=0+1=1,1+1=10(逢二进一)”。 减法运算规则为“0-0=0,1-0=1,1-1=0,0-1=1(借一当二)”。 乘法运算规则为“00=0,01=10=0,11=1”。 逻辑与运算规则为“00=0,01=10=0,11=1”。 逻辑或运算规则为“00=0,10=01=1,11=1”。 逻辑非运算规则为“=1,=0”。 逻辑异或又称半加,是不考虑进位的加法,其运算规则是“相同取0,相异取1”即“00=11=0,10=01=1”。4. 微机的码制和编码(1)在计算机中,数的正负必须在最高有效位分别用“0”和“1”表示。原码、反码和补码是计算机中有符

5、号数的3种表示方法。引入补码,是为了将减法运算转换成加法运算。8位二进制数的原码、反码和补码有如下关系: 对于一个正数:X原=X反=X补 对于一个负数:X补=X反+1(2)单片机系统中常用编码有BCD码和ASCII码。 用4位二进制数表示1位十进制数的编码称为BCD码。它有多种编码方案,其中8421BCD码最为常用。8421BCD码也称为二十进制数,是一种十进制数,逢十进一,只是数符09用4位二进制码00001001表示而己。每4位以内按二进制进位,4位与4位之间按十进制进位。其加减运算有时会出错,需要修正。 在微机系统中,世界各国普遍采用ASCII码来表示一些特殊的字符,如26个英文字母、标

6、点符号、空格换行等。具体可查阅ASCII码表。1.2 学习的基本要求与指导1. 概述本节仅要求一般性的了解从微机单片机AT89C51的发展概况,单片机技术未来发展趋势以及单片机广泛应用的领域,以激发读者学习单片机技术的兴趣。2. 微机中数的表示方法及其运算(1)建立二进制和十六进制的概念。(2)学会二进制、十进制和十六进制数相互转换的方法,熟记016之间二进制、十进制和十六进制数的对应关系及相互转换。(3)熟悉二进制和十六进制数加、减、乘、除以及“与”、“或”、“非”、“异或”运算方法。(4)了解二进制数原码、反码和补码的表示方法。二进制数、十六进制数与十进制数之间的关系、相互转换和运算方法,

7、是学习计算机必备的基础知识,特别是016范围内各进制数要求熟记。(5)了解BCD码的编码方法、转换关系和加减法运算时出错修正的原因、条件和方法。(6)了解ASCII码和查表换算方法。本章是学习后续章节的基础,若己具备这些基本知识,则可跳过。上述学习要求的“了解”、“学会”、“熟悉”、“熟记”,由读者自己掌握分寸。1.3 习题与思考题解答1. 微机中常用的数制有几种?计算机内部采用哪种数制?答:微机中常用二进制、十进制和十六进制3种数制。但计算机内部采用的是二进制。2. 十六进制数能被计算机直接执行吗?为什么要用十六进制数?答:不能。之所以在计算机中广泛采用十六进制数是因为用它来描述二进制数特别

8、简短,便于书写与阅读。3. 将下列十进制数转换为二进制数和十六进制数。(1)125 (2)0.525 (3)121.687 (4)47.945解:(1)125=1111 1100B=FCH (2)0.525=0.1100 0000B=0.C0H (3)121.687=1111 1000.1010 1111B=F8.AFH (4)47.945=10 1111.1111 0001B=2F.F1H4. 将下列二进制数转换为十进制数和十六进制数。(1)1011 0101 (2)0.1011 0010 (3)0.1010 (4)1101.0101解:(1)1011 0101=181D=B5H (2)0.

9、10110010=0.6954D=0.B2H (3)0.1010=0.625D=0.AH (4)1101.0101=13.3125D=D.5H5. 将下列十六进制数转换为十进制数和二进制数。(1)ABH (2)28.07H (3)ABC.DH (4)0.35FH解:(1)ABH=10161+11160=160+11=171D ABH=1010 1011B(2)28.07H=2161+8160+716-2=40.0273D 28.07H=0010 1000.0000 0111B(3)ABC.DH=10162+11161+12160+1316-1=2748.75D ABC.DH=1010 1011

10、 1100.1101B(4)0.35FH=316-1+516-2+1516-3 0.35FH=0.0011 0101 1111B6. 已知下列各组二进制数X、Y,试求X+Y、X-Y、XY和XY。(1)X=1010 1110B,Y=1001B (2)X=10 1101B,Y=1010B(3)X=1101 0011B,Y=1110B (4)X=1100 1110B,Y=110B解:(1)X+Y=1011 0111B X-Y=1010 0101B XY=110 0001 1110B XY=1 0011B,余11(2)X+Y=110 0111B X-Y=10 0011B XY=1 1100 0010B

11、 XY=100B,余101(3)X+Y=1110 0001B X-Y=1100 1101B XY=1011 1000 1010B XY=1111B,余1(4)X+Y=1101 0100B X-Y=1100 1000B XY=100 1101 0100B XY=10 0010B,余107. 将下列各组十六进制数转换成二进制数,然后分别完成逻辑与、逻辑或、逻辑非、逻辑异或运算。(1)23H和BCH (2)ABH和76H (3)CDH和8FH (4)10H和67H解:- 5 -(1)23H=0010 0011BBCH=1011 1100B23HBCH=0010 0000B23HBCH=1011 11

12、11B= 1101 1100B=0100 0011B23HBCH=1001 1111B(2)ABH=1010 1011B76H=0111 0110BABH76H=0010 0010BABH76H=1111 1111B=0101 0100B =1000 1001BABH76H=1101 1101B(3)CDH=1100 1101B8FH=1000 1111BABH76H=1000 1101BCDH8FH=1100 1111B=0011 0010B=0111 0000BCDH8FH=0100 0010B(4)10H=0001 0000B67H=0110 0111B10H67H=0000 0000B

13、10H67H=0111 0111B=1110 1111B=1001 1000B10H67H=0111 0111B8、在8位二进制计算机数中,正负数如何表示?答:在计算机中,数的正负在最高位分别用“0”和“1”来表示,8位微机中约定,最高位D7表示符号,其他7位表示数值。D7=1表示负数,D7=0表示正数。9、什么叫机器数?机器数的表示方法有几种?答:在最高的符号位用“0”和“1”表示数的正负的二进制数称为机器数。其数值部分称为机器数的真值。机器数通常有原码、反码和补码三种表示方法。10、写出下列各十进制数的原码、反码和补码。(1)+28 (2)+69 (3)-125 (4)-54解:(1)+2

14、8原=+28反=+28补=0001 1100B(2)+69原=+69反=+69补=0100 0101B(3)-125原=1111 1101B;-125反=1000 0010B;-125补=1000 0011B(4)-54原=1011 0110B;-54反=1100 1001B;-54补=1100 1010B11. 什么是BCD码?BCD码与二进制数有何区别?答:BCD码也称为二十进制数,属十进制数,即逢十进位,但每位十进制数位采用二进制数编码,这种编码方式的特点是保留了十进制的权,数字则用二进制码表示。BCD码既适应了人们逢十进位的习惯,又适应了计算机对输入输出数据的要求。虽然BCD码与二进制数都是用二进制码表示,但是是有区别的。BCD码是以4位二进制码表示一位十进制数,每4位以内按二进制进位,4位与4位之间按十进制进位,即它是用二进制编码表示的十进制数,逢十进位;而二进制数逢二进一;两者的本质不同。例如二进制数0110 0111B = 103,而=67,虽然两者表面上看起来数码相同,但是并不一相等。12. 写出下列各十进制数的BCD码。(1)34 (2)59 (3)1983 (4)270解:(1)34=0011 0100BCD (2)59=0101 1001BCD

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号