六、阅读并分析程序题
1. 位地址为M、N、Y,程序如下:
MOV C,M
ANL C,![]()
MOV Y,C
MOV C,M
ANL C,N
ORL C,Y
MOV Y, C
求程序表达式。
2.程序如下:
2506H M5: MOV SP, #58H;
2509H MOV 10H, #0FH;
250CH
MOV 11H, #0BH;
(SP)+1→SP,(PC0—PC7)→(SP)
250FH ACCLL XHD;(PC)+2, (SP)+1→SP,(PC8—PC15)→(SP)
Addr0—10→pc
2511H MOV 20H,11H
2514H M
XHD: PUSH 10H
PUSH 11H
POP 10H
POP 11H
RET
问:(1)执行POP 10H后堆栈的内容?
(2)执行M
3.程序存储器空间表格如下:
|
地址 |
2000H |
2001H |
2002H |
2203H |
… |
|
内容 |
3FH |
06H |
5BH |
4FH |
… |
已知:片内RAM的20H中为01H,执行下列程序后(30H)为多少?
MOV A,20H
INC A
MOV DPTR, #2000H
MOVC A,@A+DPTR
CPL
A
MOV 30H , A
END: SJMP END
4.(R0)=4BH,(A)=84H, 片内RAM(4BH)=7FH,(40H)=20H
MOV A,@R0; 7FH→A
MOV @R0; 20H→4BH
MOV 40H,A; 7FH→40H
MOV R0, #35H
问执行程序后,R0、A和4BH单元内容的变化如何?
5. 设(R0)=20H,R1=25H,(20H)=80H,(21)H=90H,(22H)=A0H,(25H)=A0
H,(26H)=6FH,(27H)=76H,下列程序执行后,结果如何?
CLR
C
MOV
R2,#3
ADDC A,@R1
MOV @R0,A
INC R0
INC R1
DJNZ R2,
JNC NEXT
MOV @R0,#01H
SJMP $
NEXT: DEC R0
SJMP $
(20H)= ,(21H)= ,(22H)= ,(23H)= ,
CY= ,A= ,R0= ,R1= .
6.阅读下列程序并回答问题.
CLR C
MOV A, #9AH
SUBB A,60H
ADD A,61H
DA A
MOV 62H, A
(1)请问该程序执行何种操作?
(2)已知初值(60H)=23H,(61H)=61H,请问运行后:(62H)= ?
7.解读下列程序,然后填写有关寄存器内容.
(1) MOV R1,#48H
MOV 48H,#51H
CJNE @R1,#51H,00H
JNC NEXT1
MOV A,
#0FFH
SJMP NEXT2
NEXT1: MOV A,#0AAH
NEXT2: SJMP NEXT2
累加器 A=( )
(2) MOV A,#0FBH
MOV PSW,#10H
ADD A, #7FH
PSW=00,执行完上述程序段后,将PSW各位状态填入下表:
PSW
|
CY
|
AC |
F0 |
RS1 |
RS0 |
OV |
F1 |
P |
|
|
|
|
|
|
|
|
|
8.分析程序段:
CLR C
MOV A,#9AH
SUBB A,60H
ADD A,61H
DA A
MOV 62H, A
(1)程序执行何种操作?
(2)若已知初值:(60H)=24H、(61H)=72H,则运行后,(62H)= .
9.设片内RAM中(59H)=50H,执行下列程序段.
MOV A,59H
MOV R0,A
MOV A,#0
MOV @R0,A
MOV A,#25H
MOV 51H,A
MOV 52H,#70H
问A= ,(50H)= ,(51H)= ,(52H)= .
10.设(R0)=7EH,DPTR=10FEH,片内RAM7EH和7FH两单元的内容分别是FFH和38H,请写出下列程序段的每条指令的执行结果.
INC @R0
INC R0
INC @R0
INC DPTR
INC DPTR
INC DPTR