(完整版)第三章指令系统

  • 格式:doc
  • 大小:45.01 KB
  • 文档页数:5

下载文档原格式

  / 13
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第三章指令系统习题参考答案(三)

1、80C51系列单片机的指令系统有何特点?

答:80c51的指令系统的特点有:(1)执行时间短。一个机器周期指令有64条,2个时间周期指令有45条,而4个机器周期指令仅有2条(即乘法和除法指令);(2)指令编码字节少。单字节的指令有49条,双字节的指令有45条,三字节的指令仅有17条;(3)位操作指令丰富。这是80c51单片机面向控制特点的重要保证。

2、80C51单片机有哪几种寻址方式?各寻址方式所对应的寄存器或存储器

空间如何?

答:(1)寄存器寻址。

对应的寄存器有:

·工作寄存器R0~R7

·累加器A

·寄存器B

·数据指针DPTR

(2)直接寻址。

对应的存储空间有:

·片内RAM低128字节(以地址形式表示)

·SFR(以地址形式或SFR符号形式表示,但符号将转换为相应的SFR

地址)

(3)寄存器间接寻址。

对应的空间有:

·片内RAM(采用@R0,@R1或SP);

·片外RAM(采用@R0,@R1或@DPTR)

(4)变址寻址。

对应的空间有:

·ROM空间(采用@A+DPTR,@A+PC)

(5)相对寻址。

·ROM空间(采用JC rel)

(6)位寻址。

·片内RAM的20H~2FH单元的128可寻址位

·SFR的可寻址位

3、访问特殊功寄存器SFR可以采用哪些寻址方式?

答:直接寻址、位寻址

4、访问内部RAM单元可以采用哪些寻址方式?

答:寄存器寻址、直接寻址、寄存器间接寻址

5、访问外部RAM单元可以采用哪些寻址方式?

答:寄存器间接寻址

6、访问外部程序存储器可以采用哪些寻址方式?

答:立即寻址、变址寻址、相对寻址

7、为什么说布尔处理功能是80C51单片机的重要特点?

答:布尔处理功能是MCS-51系列单片机的一个重要特征,在物理结构

上,MCS-51单片机有一个布尔(位)处理器,对位地址空间具有丰富的位操作指令。它在进行位操作时,以进位标志做为位累加器。

8、对于80C52单片机几个内部RAM还存在高128字节,应采用何种方式

访问?

答:对片外RAM进行访问时,需要以下四条指令进行:

读:

(1)MOVX A,@DPTR;

(2)MOVX A,@Ri;

写:

(3)MOVX @DPTR,A;

(4)MOVX@ Ri,A;

9、试根据指令编码表写出下列指令的机器码。

(1)MOV A ,#88H

(2)MOV R3,50H

(3)MOV P1.1, #55H

(4)ADD A, @R1

(5)SETB 12H

答: 指令对应的机器码为

(1) 74H

(2)ABH

(3) 75H

(4) 27H

10、完成某种操作可以采用几条指令构成的指令序列实现,试写出完成以下

每种操作的指令序列。

(1)将R0的内容传送到R1;

(2)内部RAM单元60睥内容传送到寄存器R2;

(3)外部RAM单元1000H的内容传送到内部RAM单元60H;

(4)外部RAM单元1000H的内容传送到寄存器R2;

(5)外部RAM单元10000H的内容传送到外部RAM单元2000H。

答:(1)MOV A, R0;

MOV R1,A;

(2) MOV R2,60H;

(3)MOV DPTR,#1000H;

MOVX A,@DPTR;

MOV 60H,A;

(4)MOV DPTR,#1000H;

MOVX A,@DPTR;

MOV R2,A;

(5)MOV DPTR,#1000H;

MOVX A,@DPTR;

MOV R0,#2000H;

MOVX @R0,A;

11、若(R1)=30H,(A)=40H,(30H)=60H,(40H)=08H。试

分析执行下列程序段后上述各单元内容的变化。

答:MOVX A,@R1 ;A=60H

MOV @R1,40H ; (30H)=08H

MOV 40H,A ;(40H)=40H

MOV R1,#7FH ;(R1)=7FH

即最终结果为(R1)=7FH, (40H)=40H, (30H)=08H,( A)=60H

12、若(A)=E8H,(R0)=40H,(R1)=20H,(R4)=3AH,(40H)=2CH,

(20)=0FH,试指出CY、AC和OV的值。

答:(1)MOV A, @R0 ; (A)=2CH, R0=40H

(2)MOV 40H,#0FH ; (40H)=0FH

(3)ADD A,R4 ; (A)=22H, (CY)=1, (AC)=1, (OV)=0

(4)SWAP A ; (A)=8EH

(5)DEC @R1 ; (20H)=0EH, (R1)=20H

(6)XCHD A, @R1 ; (A)=EFH, (20H)=08H, (R1)=20H

13、若(50H)=40H,试写出执行以下程序段后累加器A、寄存器R0及内部

RAM的40H、41H和42H单元中的内容各为多少?

答:MOV A ,50H ; (A)=40H

MOV R0, A ; (R0)=40H

MOV A,#00H ; (A)=00H

MOV @R0, A ; (40H)=00H

MOV A ,3BH ; (A)=(3BH)

MOV 41H, A ; (41H)=(3BH)

MOV 42H, 41H ; (42H)=(3BH)

即最终结果为(R0)=40H , (40H)=00H , (A)=(3BH) ,(41H)=(3BH) ,

(42H)=(3BH)

14、试用位操作指令实现下列逻辑操作。要求不得改变未涉及位的内容。

(1)使ACC。0置位;

(2)清除累加器高4位;

(3)清除ACC.3, ACC.4, ACC.5, ACC.6.

答:(1) CLR ACC.0 ; 使ACC.0置位

(2) CLR ACC.7

CLR ACC.6

CLR ACC.5

CLR ACC.4

(3) CLR ACC.3

CLR ACC.4

CLR ACC.5

CLR ACC.6

15、试编写程序,将内部RAM的20H、21H和22H三个连续单元的内容存入

2FH、2EH和2DH单元。

答:MOV A,20H

MOV R0,#2FH

LOOP: MOV @R0,A