OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5370|回复: 9

看了百度的详细解答,可是还是不懂(汇编语言的)

[复制链接]

54

主题

105

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
341
金钱
341
注册时间
2014-10-30
在线时间
0 小时
发表于 2015-5-4 15:18:56 | 显示全部楼层 |阅读模式
5金钱
如果(DPTR)=5678H,(SP)=42H,(3FH)=12H , (40H)=34H, (41H)=50H,(42H)=80H, 则执行以下指令后: [/mw_shl_code]
POP DPH [/mw_shl_code]
POP DPL [/mw_shl_code]
RET[/mw_shl_code]
则PCH=   PCL=     DPH=     DPL= [/mw_shl_code]

最佳答案

查看完整内容[请看2#楼]

你给出答案,我就知道怎么算了,嘿嘿,时隔太久了。。。 堆栈就像手枪的弹仓,后弹压前弹,这叫“向上增长”。 SP 就是指针,初值是零位,压一弹加一,现在加到 42H 了;相对应,射一弹就减一。 POP DPH,就是把当前 SP 标注的那颗弹,射到 DPH 里,所以 DPH = ( 42H )= 80H; 随后 SP 自动减一为 41H,再往外射到 DPL 里,S ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

58

主题

6293

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11472
金钱
11472
注册时间
2014-4-1
在线时间
1296 小时
发表于 2015-5-4 15:18:57 | 显示全部楼层

你给出答案,我就知道怎么算了,嘿嘿,时隔太久了。。。

堆栈就像手枪的弹仓,后弹压前弹,这叫“向上增长”。
SP 就是指针,初值是零位,压一弹加一,现在加到 42H 了;相对应,射一弹就减一。
POP DPH,就是把当前 SP 标注的那颗弹,射到 DPH 里,所以 DPH = ( 42H )= 80H;
随后 SP 自动减一为 41H,再往外射到 DPL 里,SP 变为 40H 。
RET,就是把以前保存的 C 数值送回到 C 寄存器,以便返回调用子程序之前的程序位置。。。


回复

使用道具 举报

39

主题

2026

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2020
金钱
2020
注册时间
2013-5-1
在线时间
87 小时
发表于 2015-5-4 18:15:44 | 显示全部楼层
POP是出栈吧,得看堆栈里压了什么数据
博观而约取,厚积而薄发。
回复

使用道具 举报

54

主题

105

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
341
金钱
341
注册时间
2014-10-30
在线时间
0 小时
 楼主| 发表于 2015-5-4 20:11:13 | 显示全部楼层
可是百度文库里的资料可以计算出来啊? 如下:  

回复

使用道具 举报

58

主题

6293

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11472
金钱
11472
注册时间
2014-4-1
在线时间
1296 小时
发表于 2015-5-4 21:35:59 | 显示全部楼层
这是一种保护“现场”的机制,
“现场”包括一些数据,更重要是包括 program Counter, 即 C ,
否则,调用子程序之后,就找不到回家的路了。

这只是保护现场的方法之一,是 INTEL 公司在 51 系列采用的方法;
现在 CPU 那么多,具体方法已经不重要了,C语言、开发平台、编译器已经帮你做了;
这些已经是很陈旧的知识,我虽然做过也都忘记了,因为现在根本不需要。

我其实想说,LZ 不要在这些东西上下功夫了。
回复

使用道具 举报

54

主题

105

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
341
金钱
341
注册时间
2014-10-30
在线时间
0 小时
 楼主| 发表于 2015-5-4 21:52:59 | 显示全部楼层
回复【5楼】xuande:
---------------------------------
中国教育制度的落后,我也不想研究这些没用的东西,可是考试还要考啊。   自己又没方向感,只好跟着教育走了
回复

使用道具 举报

54

主题

105

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
341
金钱
341
注册时间
2014-10-30
在线时间
0 小时
 楼主| 发表于 2015-5-4 22:05:43 | 显示全部楼层
回复【5楼】xuande:
---------------------------------
回复【5楼】xuande:
---------------------------------
我还想问:我该在哪些方面下功夫?老师再给我解疑一下
回复

使用道具 举报

58

主题

6293

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11472
金钱
11472
注册时间
2014-4-1
在线时间
1296 小时
发表于 2015-5-4 23:50:47 | 显示全部楼层
回复【6楼】秋枫暮霞惋红曲:
---------------------------------

学生。。。。那我真的说错了,不该说“没用”。我以为你工作了。
回复

使用道具 举报

34

主题

805

帖子

4

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1863
金钱
1863
注册时间
2011-3-29
在线时间
139 小时
发表于 2015-5-13 11:23:44 | 显示全部楼层
好像是51的汇编,我已经忘光了。学一门汇编语言还是需要的,可以让你更好的理解编程。
业余程序玩家。
回复

使用道具 举报

54

主题

105

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
341
金钱
341
注册时间
2014-10-30
在线时间
0 小时
 楼主| 发表于 2015-5-15 21:41:48 | 显示全部楼层
回复【9楼】ofourme:
---------------------------------
迷茫,毕业了,没工作,不学了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-23 18:10

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表