第四章
4-6:试编写1个程序,将内部RAM中45H单元的高4位清0,低4位置1。
答:MOV A, 45H
ANL A, #0FH
ORL A, #0FH
MOV 45H, A
4-7:已知程序执行前有A=02H,SP=42H,(41H)=FFH,(42H)=FFH。下述程序执行后:
POP DPH
POP DPL
MOV DPTR,#3000H
RL A
MOV B,A
MOVC A,@A+DPTR
PUSH A
MOV A,B
INC A
MOVC A,@A+DPTR
PUSH A
RET
ORG 3000H
DB 10H,80H,30H,80H,50H,80H
请问:A=(),SP=(),(51H)=( ),(52H)=( ),PC=( )。
答:A=80H , SP=40H , (51H)=50H , (52H)=80H , PC=8050H
4-8:计算下面子程序中指令的偏移量和程序执行的时间(晶振频率为 12MHz)。
MOV R3,#15H ;1个机器周期
DL1:MOV R4,#255 ;1个机器周期
DL2:MOV P1,R3 ;2个机器周期
DJNZ R4,DL2 ;2个机器周期