打印

初学汇编 求助一道简单的习题

[复制链接]
1474|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
26178610|  楼主 | 2013-4-5 12:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 26178610 于 2013-4-5 12:50 编辑

习题题目:已知程序执行前有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=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,(41H)(42H)的值其他的不知道怎么来的  参考答案是A=80H,SP=40H,(41H)=(50H ),(42H)=(80H),PC=(8050H). 后面几个怎么来的都不知道了,哎惭愧)

相关帖子

沙发
NE5532| | 2013-4-5 14:16 | 只看该作者
学计算机不是学文学,不要去想,找个仿真器,敲进去跑,是什么就答什么,跟着仿真一步一步看运行,自己就知道是怎么回事了。

使用特权

评论回复
板凳
ZOUWEN1| | 2013-4-5 18:29 | 只看该作者
这两个题是考查你学习寻址方式的,如果你理解了工作原理,不难得出答案,重要的是你是否认真过

使用特权

评论回复
地板
yanzhuangsongqi| | 2013-4-5 20:19 | 只看该作者
堆栈进栈两次,出栈四次,所以SP=40H啊

使用特权

评论回复
5
yqjalsoyqj| | 2013-4-5 21:13 | 只看该作者
POP    DPH
POP    DPL                       SP=41H
MOV   DPTR,#3000H         DPTR=3000H
RL      A                           A=04H
MOV   B,A                        B=04H
MOVC  A,@A+DPTR            查表指令,地址是3000H+04h,A=80H
PUSH   A                           A入栈,(41H)=80H
MOV    A,B                        A=04H
INC     A                            A=05H
MOVC  A,@A+DPTR              3000H+05H,A=50H
PUSH  A                            SP=42H,(42H)=50H
RET

使用特权

评论回复
6
菜鸟同学| | 2013-4-5 21:50 | 只看该作者
作业题,这几天作业和毕设是高峰期了!

使用特权

评论回复
7
用仿真跑一遍,多多去理解

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

1

粉丝