最新单片机第三章作业参考答案汇编
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.指出下列指令中划线操作数的寻址方式和指令的操作功能
MOV A, #78H;立即寻址,将立即数送入累加器A
MOV A, 78H;直接寻址,将内部RAM 78H单元内容送累加器A
MOV A, R6;寄存器寻址,将R6内容送累加器A
INC @R0;寄存器间接寻址,将指针R0指向的内部RAM单元内容加1
PUSH ACC;寄存器寻址,将累加器A的内容入栈
RL A;寄存器寻址,将累加器A的内容左移1位
CPL 30H;位寻址,将位变量30H的内容取反
SJMP $;相对寻址,死循环指令
MOVC A, @A+DPTR;基寄存器加变址寄存器间接寻址,从程序存储器中DPTR+A 对应的地址单元取数到累加器A
2.指出下列指令中哪些是非法的?
DEC DPTR
MOV A, @R2
MOV R1, @R0
MOV P1.1, 30H
MOV #30H, A
MOV OV, 30H
MOV A, @A+DPTR
RRC 30H
RL B
XRL C, 30H
3.如何将1个立即数30H送入内部RAM 90H单元?如何将立即数送特殊功能寄存器P1?
(1)MOV R0, #90H
MOV @R0, #30H
(2)MOV P1, #30H
4.执行下列一段程序后,试分析有关单元内容。
MOV PSW, #0;
MOV R0, #30H;
MOV 30H, #40H
MOV 40H, #50
MOV A, @R0
ADDC A, #0CEH
INC R0
执行结果:(R0)=31H, (30H)=40H, (40H)=50, (A)=0EH, (PSW)=81H
5.试编写一段程序,内部RAM 40H、41H单元内容传送到外部RAM 2000H、2001H单
元中。
MOV DPTR, #2000H
MOV R0, #40H
MOV A, @R0
INC R0
INC DPTR
MOV A, @R0
MOVX @DPTR, A
6.试编写一段程序,根据累加器A的内容,到程序存储器1000H起始的表格中取一双字
节数,送内部RAM 50H、51H单元。
MOV DPTR, #1000H
PUSH ACC
MOVC A, @A+DPTR
MOV 50H, A
POP ACC
INC DPTR
MOVC A, @A+DPTR
MOV 51H, A
7.试编写一段程序,进行两个16位数的相减运算:6483H-56E2H。结果高8位存在内部
RAM 40H,低8位存41H。
CLR C
MOV A, #83H
SUBB A, #0E2H
MOV 41H, A
MOV A, #64H
SUBB A, #56H
MOV 40H, A
8.试编写一段程序,将30H、31H单元中存放的BCD数,压缩成一个字节(原30H单元
内容为高位),并放入30H单元。
MOV A, 30H
SWAP A
ORL A, 31H
9.试编写一段程序,将30H~32H单元中的压缩BCD拆成6个单字节BCD数,并放入
33H~38H单元。
MOV SP, #60H
MOV A, 30H
MOV R0, #33H
ACALL H2ASC
MOV A, 31H
ACALL H2ASC
MOV A, 32H
ACALL H2ASC
SJMP $
ANL A, #0FH
MOV @R0, A
INC R0
MOV A, B
SWAP A
ANL A, #0FH
MOV @R0, A
INC R0
RET
10.
11.设晶振频率为6MHz,试编写一个延时1ms的子程序,并利用该子程序,编写一段主程
序,在P1.0引脚上输出高电平宽2ms、低电平宽1ms的方波信号。
MOV SP, #60H
LOOP: SETB P1.0
ACALL DELAY
ACALL DELAY
CLR P1.0
ACALL DELAY
SJMP LOOP
DELAY: MOV R0, #248; 1T
DJNZ R0, $; 2T
NOP; 1T
RET ; 2T
延时计算:1T+248*2T+1T+2T=500T=1ms