紧急问题!!下面有两个简单汇编语言,请各位帮忙详细解释一下!谢谢。
(1)如果DPTR=507BH,SP=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,执行下列指令后:POPDPHPOPDPLPOPSP则:DPH,D...
(1)如果DPTR=507BH,SP=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,执行下列指令后:
POP DPH
POP DPL
POP SP
则:DPH,DPL,SP的值分别是都少??
请详细解释DPTR和SP
(2)已知程序执行前有A=02H,SP=52H,(51H)=FFH,(52H)=FFH。执行下述程序后;
POP DPH
POP DPL
MOV DPTR,#4000H
RL A
MOV B,A
MOVC A,@A+DPTR
PUSH A
MOV A,B
INC A
MOVC A,@A+DPTR
PUSH A
RET
ORG 4000H
DB 10H,80H,30H,50H,30H,50H
请问:A,SP,(51H),(52H),PC的值分别是多少?
每一句不知道什么意思 展开
POP DPH
POP DPL
POP SP
则:DPH,DPL,SP的值分别是都少??
请详细解释DPTR和SP
(2)已知程序执行前有A=02H,SP=52H,(51H)=FFH,(52H)=FFH。执行下述程序后;
POP DPH
POP DPL
MOV DPTR,#4000H
RL A
MOV B,A
MOVC A,@A+DPTR
PUSH A
MOV A,B
INC A
MOVC A,@A+DPTR
PUSH A
RET
ORG 4000H
DB 10H,80H,30H,50H,30H,50H
请问:A,SP,(51H),(52H),PC的值分别是多少?
每一句不知道什么意思 展开
1个回答
展开全部
1. dph=3ch,dpl=5fh,sp=50h,dptr=3c5fh,把栈顶的内容弹出来
2. A=50h,sp=52h,(51h)=30h,(52h)=50h,pc=5030h
2. A=50h,sp=52h,(51h)=30h,(52h)=50h,pc=5030h
追问
麻烦您把每一句的注释写一下嘛。实在是很难理解!!
追答
实际上你只要在机器上运行一下结果不就出来
1.POP DPH ;DPH=(32H)=3CH
POP DPL ;DPL=(31H)=5FH
POP SP ;SP=(30H)=50H
2.POP DPH ;SP=51H
POP DPL ;SP=50H
MOV DPTR,#4000H ;DPTR=4000H
RL A ;A*2=4
MOV B,A ;B=A=4
MOVC A,@A+DPTR ;A=30H,表中第4项
PUSH A SP=51H,A 入栈
MOV A,B ;A=B=4
INC A ;A=5
MOVC A,@A+DPTR ;A=50H,表中第4项
PUSH A ;SP=52,A 入栈
RET
ORG 4000H
DB 10H,80H,30H,50H,30H,50H
所以A=50h,sp=52h,(51h)=30h,(52h)=50h,pc=5030h
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询