关键字:
作业习题
当前位置: 首页 >> 网络资源 >> 作业习题 >> 正文

第三章 指令系统 思考与设计题(作业)

2014-06-03 点击:[]

一、思考题

1什么是寻址方式?在MCS-51单片机有哪几种寻址方式

2. 设内部RAM59H单元的内容为50HCPU执行下列程序段后,寄存器AR0和内部RAM50H51H单元的内容是多少?

MOV  A, 59H

MOV  R0, A

MOV  A, #00H

MOV  @R0, A

MOV  A, #25H

MOV  51H, A

MOV  52H, #70H

3. 已知4EH4FH单元的内容分别为20H5FH,执行下列指令后,DPTR的内容是多少?    

MOV A, 4EH

MOV R0,#4FH

XCH A,@R0

SWAP A

XCHD A,@R0

MOV DPH,@R0

MOV DPL,A

4CPU执行下列程序后,AB寄存器的内容是多少?

MOV SP, #3AH

MOV A, #20H

MOV B, #30H

PUSH  ACC

PUSH  B

POP  ACC

POP   B

5. 设外部RAM2000H单元内容为80HCPU执行下列程序后,A的内容是多少?

MOV  P2, #20H

MOV  R0,  #00H

MOVX  A,  @R0

6. 指令XCHXCHDSWAP有什么区别?

    7. 指令“MOVC A,@A+DPTR”与“MOVC A,@A+PC”有什么不同?

8. 假定累加器 A 的内容为30H CPU执行指令下列后

1000H MOVC A @A+PC

CPU把程序存储器的哪个单元的内容送到了累加器 A 中。

9. 假定 DPTR 的内容为 8100H,累加器的内容为 40H CPU执行下列指令

1000H MOVC  A@A+DPTR

后,送入的是程序存储器哪个单元的内容。

10. 假定(SP)=60H,(ACC=30H,(B=70HCPU执行下列程序后,SP60H61H62H的内容各是多少?

PUSH   ACC

PUSH   B

11. 假定(SP)=62H,(61H=50H,(62H=7AHCPU执行下列程序后,SP60H61H62HDPTR的内容各是多少?

POP  DPH

POP  DPL

12. 假定(A)=85H,(R0=20H,(20H=0AFHCPU执行指令

ADD  A,  @R0

累加器ACyACOVP的内容是多少?

13. 假定(A)=85H,(20H=0FEH,(Cy=1,执行指令

ADD  A,  20H

累加器A的内容及CyACOVP的内容是多少?

14. 假定(A)=0FFH,(R3)=0FH,(30H)=0F0H,(R0)=40H,(40H)=00HCPU执行下列指令后,上述寄存器和存储单元的内容是多少?

INC   A

INC   R3

INC   30H

INC   @R0

15. 假定(A)=56H,(R5=67HCPU执行指令后ACy的内容是多少?

ADD  A ,R5

DA  A

16. 分析下面的程序,指出是对哪几个单元进行了加法运算,结果存在哪个单元?

MOV A, 20H

MOV R0#30H

ADD A,@R0

INC R0

ADD A,@R0

MOV @R0A

17. ADD指令和ADDC指令有什么不同?

18. DA指令作用什么?它如何使用?

19. 假定(A)=0FH,(R7)=19H,(30H)=00H,(R1)=40H,(40H)=0FFHCPU执行下列指令后,上述寄存器和存储单元的内容是多少?

DEC   A

DEC   R7

DEC   30H

DEC   @R1

20. 分析下面的程序,参与加减法运算的单元有哪些,结果存在哪个单元?

MOV A, 20H

MOV R0#30H

CLR C

SUBB A,@R0

DEC R0

ADD A,@R0

MOV @R0A

21. 假定(A=50H,(B=0A0HCPU执行指令“MUL  AB”后,寄存器 B 的内容为和累加器 A 的内容为多少? Cy OV的状态是什么?

22. 假定(A= 0FBH,(B=12H。执行指令“DIV  AB”后,寄存器 B 的内容为和累加器 A 的内容为多少, Cy OV的状态是什么?

23. 已知(A=83H,(R0=17H,(17H=34HCPU执行完下列程序段后A的内容是多少?

ANL  A,#17H

ORL  17H, A

XRL  A, @R0

CPL  A

24. 设(A)=55H,(R5)=AAH,如果CPU分别下列执行指令,AR5的内容是多少?

1ANL AR5

2ORL AR5

3XRL AR5

25. 分析下列指令序列,写出它所实现的逻辑表达式。

MOV  C,  P1.0

ANL   C,  P1.1

ORL   C,  /P1.2

MOV  P3.0, C

26.指令“LJMP PROG”和“LCALL PROG”有什么区别?

27. 已知20= 00H执行下列程序段后程序将如何执行

DJNZ 20H, REDO

MOV A, 20H        

28. CPU分别执行指令“JB ACC.7LABEL”和“JBC ACC.7LABEL”后,它们的结果有什么不同?

29. RETRETI指令有什么区别

30.当系统晶振为12MHz时,计算下列子程序的执行时间。

SUBRTN: MOV R1,#125

REDO:   PUSH ACC

        POP ACC

        NOP

        NOP

        DJNZ R1,REDO

        RET

二、程序设计

1. 把内部RAM20H21H22H单元的内容依次存入2FH2EH2DH中。

2. 外部RAM2040H单元内容与3040H单元内容互换。

3. 内部RAM40H单元与5000H单元的低四位互换。

4. 已知一个2维数据表格如下,存储在程序存储器中,编程实现自动查表。

X

0

1

2

3

4

0B

0C

0D

0E

0F

Y

11

12

01

AD

DD

AB

24

4B

7C

AA

5. 已知二进制数XYX被存放在20H(高8位)和21H(低8位)单元,Y被存放在22H,编程实现下XY

6. 已知二进制数XYX被存放在20H(高8位)、21H22H单元,Y被存放在30H(高8位)、31H32H单元,编程实现下XY

7. 已知8位十进制数XY以压缩BCD的格式存储,X被存放在20H~23H单元,Y被存放在40H~43H,编程实现下XY

8. 已知二进制数XYX = 6F5DHY = 13B4H,编程求XY

9. 已知二进制数XY,已知X被存放在20H(高8位)、21H22H单元,Y被存放在22H,编程实现下XY

10. 已知二进制数XY X被存放在20H~23H单元,Y被存放在30H~33H单元,编程实现下XY

11. 已知十进制数XY以压缩BCD码的格式存储,X被存放在20H(高位)和21H单元,Y被存放在22H23H单元,编程实现下XY

12. 已知二进制数X被存放在20H,编程实现下X3

13.已知二进制数X被存放在20H(高821H22H单元,Y被存放在30H单元,编程实现下X×Y

14. 二进制数X被存放在20H(高8位)21H单元,用移位方法实现2X

15. 4位十进制数X以压缩BCD的格式存储在内部RAM中,编程实现X乘以10

16. 二进制数X被存放在20H(高8位)21H单元,用移位方法实现X/2

17. 4位十进制数X以压缩BCD的格式存储在内部RAM中,编程实现X/10,并把小数部分存储在R6中。

18. 非正数X被存放在20H(高8位)21H单元,求该数的补码。

19. X是二进制数,编程实现下列要求:X=0时,执行程序PROG1X=1时,执行程序PROG2X=2时,执行程序PROG3X=3时,执行程序PROG4

20. 求出无符号单字节数XYZ中的最大数,并把它存放在50H单元。

21. 把内部RAM20H~2FH连续16个单元的内容转移到外部RAM2000H单元开始的区域中。

22. 5FH单元的内容8位二进制数,对该单元的按照下列表达式进行编码

然后把新编码构成的数据回送到5FH单元。

23. 假设UP1.1VP1.2WP3.3X28H.1Y2EH.0ZTF0QP1.5,编制程序实现下列逻辑表达式:

24. 一批8二进制数据存放在单片机内部RAM20H单元开始的区域,数据长度为100个,编程统计该批数据中数值为65H的数据的个数,将统计结果存放在R7中。

25. 一批8二进制数据存放在单片机内部RAM10H单元开始的区域,数据长度为50个,编制程序统计该批数据中偶数,并把偶数存放在内部RAM50H开始的区域。

26. 编程查询外部RAM3000H单元中01的个数,把结果存储在R5R6中。

27. 4位十进制数以压缩BCD码格式被存放在20H(高位)和21H单元,请将该数转换为分离式BCD码形式,并将结果存在30H31H32H33H单元。用调用子程序的方法实现。

28. P1口驱动图3.63所示的LED显示装置,设计驱动电路并编制程序实现下列要求:LED依次顺时针点亮——逆时针灭——全亮若干秒全灭,周而复始地重复上述过程。系统晶振为12MHz

关闭

}