单片机第三章答案_第1页
单片机第三章答案_第2页
单片机第三章答案_第3页
单片机第三章答案_第4页
单片机第三章答案_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、3-1 】汇编语言与 C 语言哪种语言的可读性和可移植性强?在对速度和时序敏感的场合应该使用什么语言?对于复杂的单片机系统一般采用C与汇编混合编程的形式这句话对吗?3-2 】二进制机器语言与 C 和汇编语言两者之间是什么关系?用C 或汇编编制的程序在ROM中 是3-24 】试编程,将外部RAM 1000H单元中的数据与内部RAM 60H单元中的数据相互交换。以编译后的二进制代码的形式存放这句话对吗?【3-3 】80C51系列单片机指令的格式包含哪几个部分?各部分之间的间隔符是什么?四个部分中哪个部分是必须存在的,哪几个部分是可有可无的?标号的格式和代表的意义是?3-4】80C51 系列单片机有

2、哪几种寻址方式3-5 】3-6】判断下列说法是否正确。80C51单片机中立即数是存放在 ROM中还是RAM中?1)2)指令周期是执行一条指令的时间。 ()3)指令中直接给出的操作数称为直接寻址。立即数寻址方式是被操作的数据本身就在指令中,而不是它的地址在指令中。4)内部奇存器Rn (n=07)可作为间接寻址奇存器。()3-7】80C51 单片机可以进行直接寻址的区域是?3-8 】80C51 单片机可以进行寄存器寻址的范围是?3-9】80C51 单片机可以进行寄存器间接寻址的寄存器是?寻址的范围是?3-10 】在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的()

3、。A+P,C3-11 】 80C51 单片机变址寻址方式中可以作基址的寄存器是?可以作变址的寄存器是?A+D PT所找到的操作数是在 ROM中对吗?【3-12 1 80C51单片机相对寻址改变的是 PC的当前值,即改变的CPU执行指令的顺序这句话对否?3-13 】若访问特殊功能寄存器,只可以采用那种寻址方式【3-14】若访问外部 RAM单元,只可以使用哪种寻址方式【3-15】若访问内部RAM单元,可使用哪些寻址方式3-16 】若访问内外程序存储器,可使用哪些寻址方式3-17 180C51 单片机可以进行位寻址的字节单元范围除 11 个可位寻址的特殊功能寄存器外还包括【3-18】已知(30H)

4、=40H, (40H) =10H, (10H) =32H, (P1) =OEFH试写出执行以下程序段后有关单元的内容。MOVR0 , #30HMOVA , R0MOVR1 , AMOVB , RiMOVR1 , P1MOVP2 , P1MOV10H , #20HMOV 30H, 10H3-19 】为什么对基本型的 51子系列单片机(片内RAM为128B),其寄存器间接寻址方式(例如MOV A,R0中,规定 R0或R1的内容不能超过 7FH?3-20 】外部RAM数据传送指令有几条?试比较下面每一组中两条指令的区别?1)MOVXA, R1 MOVX A , DPTRMOVXA,DPTRMOVX

5、DPTR , AMOVR0, A MOVX R0, AMOVCA,A+DPTR MOVX A,DPTR【3-21】假定累加器A中的内容为30H,执行指令1000H : MOVC A A+ PC后,把程序存储器()单元的内容送入累加器 A中。【3-22】在AT89S51中,PC和DPTR都用于提供地址,但PC是为访问()提供地址,而 DPTR是为访问( )和( )提供地址。3-23 】试写出完成以下数据传送的指令序列。1)R1 的内容传送 R0;片外RAM 60H单元的内容送入 R0;片外 RAM 60H单元的内容送入片内 RAM 40H单元;片外 RAM 1000H单元的内容送入片外 RAM

6、40H单元。3-25 】对程序存储器的读操作。只能使用()。A ) MOV旨令 B ) PUSH指令 C )MOVX指令 D ) MOVC旨令3-26 】( DPTR) =507BH,( SP)=32H,( 30H)=50H, (31H) =5FH (32H) =3CH 则执行下列指令后,( DPH) =()( DPL) =() ( SP) =)。POPDPHPOPDPLPOPSP3-27】假定,SP) =60H,( A)=30H,(B) =70H,执行下列指令后,SP的内容为( ),61H单元的内容为(), 62H 单元的内容为()。PUSHAccPUSH3-28 】已知程序执行前有( A)

7、 =02H,(SP) =52H, (51H) =FFH (52H) =FFH 下述程序执行后,POPDPHPOPDPLMOVDPTR, #4000HRL AMOVB,AMOVCA ,A+DPTRPUSHAccMOVA,BINC AMOVCA ,A+DPTRPUSHAccRETORG4000HDB 10H, 80H, 30H,A) =(50H, 30H, 50HSP) =() (51H) =()(52H) =() (PC) =()。【3-29 】已知(A)=5BH,( R1)=40H,( 40H)=C3H,( PSW)=81H,试写出各条指令的执行结果,并说明程序状态字的状态。1)XCH A,

8、R1XCH A, 40HXCH A, R1XCHD A, RlSWAP A6)ADD A, R17)ADD A, 40HADD A, #40H9)ADDC A, 40H10)SUBB A, 40H11)SUBB A, #40H3-30 】试分析下面两组指令的执行结果有何不同1) MOV A,#0FFH2) MOV A,#0FFHINC AADD A,#O1H【3-31】DA A旨令有什么作用?怎样使用?【3-32】已知(A)=87H,(RO)=42H,( 42H)=24H,请写出执行下列程序段后A的内容。ANL A , #23HORL 42H, AXRL A , R0CPL A3-33 】写出

9、完成如下要求的旨令但是不能改变未涉及位的内容。1 )把,和清 O 。(2)把累加器A的中间4位清0。3)把和置 1。)。【3-34 】假定(A)=83H,(RO)=17H,( 17H)=34H,执行以下指令后,(A)=(ANL A, #17HORL 17H,AXRL A,R0CPL A)。【3-35 】假设(A) =55H, ( R3) =0AAH 在执行指令“ ANL A , R3” 后,(A) = (), (R3)=(【3-36】已知组合逻辑关系式为 F=AB+C请编写模拟其功能的程序。设A、B、C F均代表位地址。3-37 】编程完成下述操作。1)将外部RAM 1000*元的所有位取反;

10、将外部RAM 60h单元的高2位清零,低两位变反,其余位保持不变。3-38 】试用位操作指令实现逻辑操作:(10HV),= (18HV CY。3-39 】1)CLRCLREOHCLRACCCLRACC0CPL6)CPLEOH7)CPLACC8)CPLACC0仔细辨析下列指令的意义,找出错误的指令,并简要说明原因。【3-40】指令LJMP addrl6和AJMP addril的区别是什么?3-41 】试分析以下两段程序中各条指令的作用,程序执行完将转向何处1 ) MOV p1, #0CAHMOV A, #56HJB, L1JNB ACC3, L2L1 :L22) MOV A, #43HJB AC

11、C 2, L1JBC ACC 6, L2L1L2【3-42】判断以下指令的正误。(1)MOV 28H,R2(2)DEC DPTR(3)INC DP TR;(4)CLR R0;(5)CPL R5(6)MOV R0,R1;(7)PUSH DPTR(8)MOV F0,C;(9)MOV F0,;(10)MOVX AR1(11)MOV G30H;(12)RLC R0【3-43】借助指令表(附录 B),对如下指令代码(十六进制)进行手工反汇编。FF C0 E0 E5 F0【3-44】以下指令中,属于单纯读引脚的指令是(MOV P1,B)ORL P1,#0FHMOV C【3-45】用ANL P1,#0FHA

12、T89S51单片机的P1 口做输出,经驱动电路接 8个发光二极管,见图3-11所示。当输出位为“ 0”时,发光二极管点亮;输出为“ T时,发光二极管为暗。试编制程序将8个发光二极管全部点亮;将 8个发光二极管全部熄灭;将 8个发光二极管隔一个点亮一个;每次亮一个,循环左移,一个一个地亮,循环不止。图3-11单片机P1 口驱动发光二极管【3-46】如图3-12所示,这是由AT89C51构建的最小系统,外部连接了4个按键S1S4及4个发光二极管LEDI-LED4,P1 口的高4位用于接收按键的输入状态,而低4位用于驱动发光二极管。请结合图示,编写程序,完成以下要求。(1)若SI闭合,则发光二极管

13、LEDl点亮;若S2闭合,则发光二极管.LED2点亮。以此类推,即发光二极管实时反映按键状态。(2 )用4个发光二极管实现对按键键值的BC编码显示。即若 SI闭合,键值为1,编码为0001,LEDI点亮;若S2闭合,键值为2,编码为0010, LED2点亮;若S3闭合,键值为3,编码为0011,LEDI、LED2同时点亮;若S4闭合,键值为4,编码为0100,LED3点亮。图 3-12第三章思考题答案:【3-1】解答:C语言编制的51单片机程序,只需要稍(1) C语言那种语言的可读性和可移植性强,例如对于用作修改就可以移植到 PIC类型的单片机上。(2 )汇编语言适用于对速度和时序敏感的场合。

14、(3)正确。【3-2】解答:(1) C语言与汇编语言经过编译后将是二进制的机器语言。(2) 正确。【3-3】解答:(1) 一条完整的汇编语言指令包括标号、操作码、操作数和注释四部分。(2) 其中标号与操作码用冒号分隔,操作码和操作数之间用空格,多个操作数之间用逗号分隔,注释用冒号开头。(3) 四个部分中操作码是必须存在的,其他三部分在有的指令中可以不出现。(4)标号是一种符号地址。标号以字母开头,由1-8个字母或数字组成。【3-4】解答:80C51系列单片机提供了七种寻址方式:立即寻址、直接寻址、寄存器寻址、寄存器 间接寻址、变址寻址(基址寄存器 +变址寄存器间接寻址)、相对寻址、位寻址。RO

15、M中。【3-5】解答:立即寻址寻址方式中的立即数是存放在【3-7】解答:直接寻址方式可访问以下存储空间:内部RAM氐128个字节单元,指令中直接地址以单元地址的形式给出。特殊功能寄存器。【3-8】解答:寄存器寻址中规定的寄存器有:工作寄存器R0R7。累加器 A。双字节 AB数据指针 DPTR。3-9 】解答:(1)能用于间接寻址的寄存器有R0, R1, DPTR SP。其中R0、R1 必须是工作寄存器组中的寄存器。(2)采用R0、R1作为间址寄存器,可寻址内部RAM的低128个单元和外部 RAM氐256个单元单元;采用16位的DPTR作为间址寄存器,可寻址外部RAM勺整个64KB地址空间。3-

16、10 】解答:地址。3-11 】解答:(1) 80C51单片机变址寻址方式中是以DPTR或PC作基址寄存器,以累加器 A作变址寄存器。(2)是的。A+ P,A+D PT寻址所找到的操作数是在ROM中O【3-12】解答:正确。80C51单片机凡是指令中带有 rel相对偏移量的指令,其PC的改变都是相对的。【3-13】解答:若访问特殊功能寄存器,只可以采用直接寻址。【3-14】解答:若访问外部 RAM单元,只可以使用寄存器间接寻址方式。【3-15】解答:若访问内部 RAM单元,可使用直接寻址、寄存器寻址、寄存器间接寻址和位寻址。【3-16】解答:若访问内外程序存储器,可使用变址寻址方式。3-17

17、】解答:(1)还包含内部 RAM勺20H-2FH,共16个字节,16*8=128个位,每一位都有一个位地址,对应位地址 00H-7FHO2)位地址是00H、08H、22H 7FH D0H E0H对应的字节地址分别是20H 21H 24H 2FH D0HE0HO3-18 】解答:Rg 30H,( R0) =30HAJ( R0),( A) =40HR1A),( R1) =40HBJ( R1),( B) =10H(R1)J( P 1),( R1) = (40H) =EFHP2j( P 1),( P2) =EFH 10HJ 2OH,( 10H) =20H30Hj( 1OH),( 30H) =20H结果

18、:( R0)=30H,(A)=40H,(R1)=40H,(B)=10H,(40H)=EFH,(P2)=EFH,(10H)=20H,30H) =20H【3-19】解答:因为寄存器间接寻址方式中R0或R1的内容是操作数的 RAM地址,内部RAM的寻址范围是 00H7FH。3-20 】解答:外部数据专送指令有 4 条: MOVX A,DPT;RMOVX DPTRA; MOVX A, Ri;MOVXR, A。(1)都是访问片外 RAM但二者寻址范围不同。前 1条指令是对片外 RAM氐256个单元的“读”操作;后1条指令是对片外 RAM 64KB空间的“读”操作。(2)访问空间相同,但数据传送方向不同。

19、前1条指令是对片外 RAM64K空间的“读”操作;后1条指令是对片外RAM64K空间的“写”操作。后 1 条指令是对片外(3) 访问空间不同。前1条指令是对片内 RAM氐128个单元的“写”操作;RAM氐256个单元的“写”操作。4)二者访问的空间不同,寻址方式不同。前1 条指令是变址寻址方式,对ROM操作;后1条指令是寄存器间接寻址方式,对片外RAM操作。3-21 】解答: 1031H。【3-22】解答:ROM ROIV和外部 RAMA。3-23 】解答:1)由于在工作寄存器与工作寄存器之间不能直接传送数据,所以需要借助累加器MOV A, R1MOV R0, A(2)片外RAM向片内RAM专

20、送数据,不能直接进行,需要借助累加器由于片外RAM是 60H单元,地址小于FFH所以间址寄存器使用 Ri即可。MOVR1, #60HMOVXA, R1MOVR0, AMOVR1, #60HMOVXA, R1MOV40H, A4) 片外数据不能直接送入片外单元,需要先将片外数据读入累加器,然后再送到片外。MOVDPTR, #1000HMOVXA, DPTRMOVR1, #40HMOVXR,1 A【3-24 】解答:片外RAM与片内RAM之间的数据传送不能直接进行,需要借助累加器需要使用数据交换指令XCH。MOVDPTR, #1000HMOVXA, DPTRXCHA, 60HMOVXDPT,RA【

21、3-25 】解答: D。【3-26 】解答: 3CH;5FH;50H。【3-27 】解答: 30H;70H。【3-28 】解答: 50H;52H;30H;50H;5030H。【3-29 】解答:(1)结果:(A)j( R1),( A) =40H,( R1) =5BH,( PSW) =81H(2)结果:(A)j-( 40H),( A) =C3H,( 40H) =5BH,( PSW) =80H(3)结果:(A)j-( R1),( A) =C3H,( R1) =( 40H) =5BH,( PSW)A。数据交换=80H结果:4)(A) 03i( R1)03,( A) =53H,( R1) =( 40H

22、) =CBH,结果:PSW) =80H(A) 03 - ( A) 47,A) =B5H,( PSW) =81H6)结果:+( R1),( A)=9BH,( PSW) =05H7)结果:AjA)+( 40H),( A) =1EH,( PSW) =80H8)结果:Aj+40H,( A) =9BH,( PSW) =05H结果:Aj+( 40H) +CY,( A) =1FH,PSW) =81H10 )结果:Aj( A) - ( 40H) -CY,( A) =97H,PSW) =85H11)结果:- 40H - CY ,( A) =1AH,PSW) =01H3-30 】解答:1 )该组指令执行后(A)=

23、00H,不影响CY位。2 )该组指令执行后(A)=00H,影响CY位。说明: 单独执行 INC 指令,只影响奇偶标志位 P,不影响半进位标志位 AC和进位位CY位。执行ADD指令后,将影响CY AC和P 位。即继续使 BCD【3-31】解答:DA A指令的作用是对 A中刚进行的两个 BCD码的加法结果进行修正,码加法运算的结果保持为 BCD码。使用时,DA A指令只能使用在加法指令后,即ADD指令和ADDC指令。【3-32 】解答:Aj( A)A 23H,( A) =03H42Hj( 42H)V( A),AA)(R0),AA),(A) =CBH结果:(A)=CBH【3-33】解答:(1) AN

24、L A,#87H(2) ANL A,#0C3H(3) ORL A,#0CH【3-34】解答:0CBH【3-35】解答:00H; 0AAH【3-36】解答:ANL A, BORL A, CMOV F, C【3-37】解答:(42H) =37H(A) =34H(1) MOV DPTR#1000HMOVX A DPTRCPL AMOVX DP TRA(2) MOV R0 #60HMOVX A R0ANL A , #3FHXRL A , #03HMOVX R0 A【3-38】解答:(1) MOV C10H(3)错误。原因:ACC是直接字节地址,不能用于清零指令。ANL C(2) ORL C18HMOV

25、 , 【3-39】解答:(1)正确。原因:清零指令只能用于累加器ACC和位操作,而本题中 E0H只能是字节地址(位地址的范围是00H7FH,所以该条指令错误。7)错误。PUSH指令时字节操作指令。4)正确。是一个位,可以应用到清零指令中。5)正确。6)错误。原因:取反指令只能用于累加器ACC和位操作,而本题中 E0H只能是字节地址(位地址的范围是00H7FH,所以该条指令错误。7 )错误。原因:ACC是直接字节地址,不能用于取反指令。8 )正确。是一个位,可以应用到取反指令中。3-40 】解答:指令 LJMPaddr16 是长转移指令,指令中提供了16位目的地址,寻址范围是 64KB。指令 AJMP addr11 是绝对转移指令,指令中 11 位目的地址,其中a7a0 在第二字节, a10a8 则占据第一字节的高3位,寻址范围是与 PC当前值(本指令所在地址+本条指令所占用的字节数 2)在同一个2K的区域内。3-41】解答:1)MOV P1 , #0CAH;P1J CAH P 1=CAH=BL1:-L2:MOV A , #56HJB , L1J

温馨提示

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

最新文档

评论

0/150

提交评论