好文档 - 专业文书写作范文服务资料分享网站

单片机与微机原理及应用课后答案(张迎新等)电子工业出版社

天下 分享 时间: 加入收藏 我要投稿 点赞

可编辑

方式。访问片外数据存储器可采用寄存器间接寻址方式。 4、80C51 单片机的指令系统可以分为哪几类?说明各指令的功能。 答:51 单片机指令系统按功能可分为5 类: (1)数据传送指令 主要进行数据的传送、交换等; (2)算术运算指令 主要进行基本的加减乘除运算; (3)逻辑运算指令 主要实现逻辑运算与移位运算; (4)控制转移指令 主要是实现对程序流程的控制; (5)位操作指令

5、外部数据传送指令有哪几条?有和区别? 答:外部数据传送指令有读指令和写指令两类,每类指令的寻址范围不同,分别为: 读外部存储器指令: MOVX A,@Ri ;寻址范围为256 字节 MOVX A,@DPTR ;寻址范围为64K 字节 写外部存储器指令: MOVX @Ri,A ;寻址范围为256 字节 MOVX @DPTR,A ;寻址范围为64K 字节

6、在89S51 片内RAM中,已知(30H)=38H,(38H)=40H,(40H)=48H,(48H)=90H, 请分别分析下段程序按序执行后的结果。 MOV A,40H ;A=48H MOV R0,A ;R0=48H MOV P1,#0FFH ;P1=FFH MOV @R0,30H ;(48H)=38H MOV DPTR,#1246H ;DPTR=1246H MOV 40H,38H ;(40H)=40H MOV R0,30H ;R0=38H MOV 90H,R0 ;(90H)=38H MOV 48H,#30H ;(48H)=30H MOV A,@R0 ;A=40H MOV P2,P1 ;P2=38H 7、略

.

可编辑

8、DA A 指令的作用是什么?怎样使用? 答:对十进制BCD 数作加法时进行调整,当结果的低4 位A0~A3>9,或半进位AC=1,则A0~A3+6, 否则不加;当结果的高4 位A4~A7>9,或进位CY=1,则A4~A7+6,否则不加;这条指令是在进行BCD码加法运算时,跟在“ADD”和“ADDC”指令之后,用来对 BCD 码的加法运算结果自动进行修正,使 其仍为BCD 码表示形式。

9、试编程将片外数据存储器60H 中的内容传送到片内RAM54H 单元中。 答: MOV R0,#60H MOVX A,@R0 MOV 54H,A

10、试编程将寄存器R7 的内容传送到R1 中去。 答: MOV A,R7 MOV R1,A

11、已知当前PC 值为210H,请用两种方法将程序存储器2F0H 中的常数送入累加器A 中。 答:(1)以程序计数器PC 作为基址寄存器 MOV A,#0E0H MOVC A,@A+PC (2)以数据指针DPTR 作为基址寄存器 MOV DPTR,#02F0H MOV A,#00H MOVC A,@A+DPTR

12、试说明下段程序中每条指令的作用,并分析当指令执行完后,R0 中的内容是什么? MOV R0,#0A7H ;R0=A7H,立即数送寄存器R0 XCH A,R0 ;A=A7H,累加器A 中的数据与R0 中的数据进行交换 SWAP A ;A=7AH,累加器A 中的高低四位进行交换 XCH A,R0 ;R0=7AH,数据交换回R0

.

可编辑

13、请用两种方法实现累加器A 与寄存器B 的内容交换。 答:(1)MOV R0,A MOV A,B MOV B,R0 (2)MOV R0,B XCH A,R0

14、试编程将片外RAM中40H 单元的内容与R1 的内容交换。 答: MOV R0,#40H MOVX A,@R0 XCH A,R1 MOVX @R0,A

15、已知:A=0C9H,B=8DH,CY=1。 执行指令 ADDC A,B 结果如何? A=57H,CY=1,OV=1,AC=1,P=1 执行指令 SUBB A,B 结果如何? A=3BH,CY=0,AC=1,OV=1

16、试编程将片外RAM中30H 和31H 单元中的内容相乘,结果存放在32H(低位)和33H(高位)单元中。 答: MOV R0,#30H MOVX A,@R0 MOV B,A INC R0 MOVX A,@R0 MUL AB INC R0 MOVX @R0,A MOV A,B INC R0 MOVX @R0,A 17、17、试用3 种方法将累加器A 中的无符号数乘2. 答:(1)MOV R0,A ADD A,R0 (2)MOV B,#2 MUL AB (3)RL A 18、18、分析依次执行下列指令的结果: MOV 30H,#0A4H ;(30H)=A4H MOV A,#0D6H ;A=D6H MOV R0,#30H ;R0=30H MOV R2,#47H ;R2=47H ANL A,R2 ;A=46H ORL A,@R0 ;A=E6H SWAP A ;A=6EH CPL A ;A=91H XRL A,#0FFH ;A=6EH ORL 30H,A ;(30H)=EEH

19、19、求下列指令执行后,累加器A 及PSW中进位CY、奇偶位P 和溢出位OV 的值。 (1)当A=5BH 时 ;ADD A,

.

可编辑

#8CH (2)当A=5BH 时 ;ANL A,#7AH (3)当A=5BH 时 ;XRL A,#7FH (4)当A=5BH,CY=1 时 ;SUBB A,#0E8H 答:(1)A=E7H,CY=1,P=0,OV=0 (2)A=5AH ,P=0 (3)A=24H ,P=0 (4)A=72H,CY=1,P=0,OV=0 20、把累加器A 中的低4 位数据送到外部数据存储器的2000H 单元。 答: ANL A,#OFH MOV DPTR,#2000H MOVX @DPTR,A 21、试说明指令CJNE @R1,#7AH,10H 的作用,若本指令地址为250H,其转移地址是多 少? 答:指令作用:如果以R1 内容为地址的单元中的数据等于7AH,则程序顺序执行,否则转移后继续执行。 若本指令地址为250H,则转移地址为250H+03H+10H= 263H。 22、将累加器A 中的数据由0 递增,加到50,结果在累加器A 中。 答: CLR A MOV R0,#50 L1: INC A DJNZ R0,L1 23、试说明压栈指令和弹栈指令的作用及执行过程。 答:压栈(入栈或进栈)指令的作用是将数据存入堆栈中,其执行过程是先将堆栈指针SP 的内容加1,然 后将直接地址单元中的数据压入SP 指向的单元中。若数据已推入堆栈,则SP 指向最后推入数据所在的存 储单元(即指向栈顶)。 弹栈(出栈)指令的作用是将数据从堆栈中取出,其执行过程为先将堆栈指针 SP 所指出单元的内容送入 直接寻址单元中,然后将SP 的内容减1,此时SP 指向新的栈顶。 24、下述程序执行后,SP=?,A=?,B=?。 ORG 201H MOV SP,#40H MOV A,#30H LCALL 250H ;下条指令地址208H 送41H、42H,SP=42H ADD A,#10H MOV B,

.

可编辑

A ;地址为20AH L1: SJMP L1 ORG 250H MOV DPTR,#20AH PUSH DPL ;SP+1=43H,DPL→(43H) PUSH DPH ;SP+1=44H,DPH→(44H) RET ;20AH→PC 答:上述程序执行后,SP=42H,A=30H,B=30H。 25、发光二极管点亮规律:先是第1 和第8 个亮,延时一段时间后,第2 和第7 个亮,延时 后,再是第3 和第6 个亮,延时后,最后是第4 和第5 个点亮,延时后循环。 26、若系统晶振频率为 6MHz,求子程序 DELAY 的延时时间,若想加长或缩短时间,应该 怎样修改? 答: DELAY: MOV R2,#0FAH L1: MOV R3,#0FAH L2: DJNZ R3,L2 DJNZ R2,L1 RET 总时间计算:T=4μ s+(250×4μ s+4μ s)×250+4μ s=251.008ms 估算:T=250×4μ s×250=250ms 若想加长延时时间,可以增加循环次数或再加一重循环; 若想减小延时时间,可以减少循环次数或较少一重循环。 27、P1 口连接8 个共阳极连接的发光二极管,是编制灯亮移位程序。 答: MOV A,#0FEH L1: MOV P1,A RL A LCALL DELAY ;DELAY 子程序同上题 SJMP L1 28、试编一程序,将外部数据存储器2100H 单元中的高4 位置“1”,其余位清“0”。 答: MOV DPTR,#2100H MOVX A,@DPTR ORL A,#0F0H ANL A,#0F0H MOVX @DPTR,A 29、试编程将片内数据存储器40H 单元的第0 为和第7 位置1,其余取反。 答: MOV A,40H CPL A SETB ACC.0 SETB ACC.7 MOV 40H,A 30、将A.5 与80H 位相与的结果,通过P1.4 输出。 MOV C,80H ANL C,ACC.5 MOV P1.4,

.

单片机与微机原理及应用课后答案(张迎新等)电子工业出版社

可编辑方式。访问片外数据存储器可采用寄存器间接寻址方式。4、80C51单片机的指令系统可以分为哪几类?说明各指令的功能。答:51单片机指令系统按功能可分为5类:(1)数据传送指令主要进行数据的传送、交换等;(2)算术运算指令主要进行基本的加减乘除运算;(3)逻辑运算指令主要实现逻辑运算与移位运算;(4)控制转移指令主要是实现对程序流程的控制;(5
推荐度:
点击下载文档文档为doc格式
5sm351f7rf9nplx1m54t1j03v4ivcy00atz
领取福利

微信扫码领取福利

微信扫码分享