菜鸟提问:关于寄存器的赋值问题!!!

kongling12 2009-04-04 11:41:57

mov eax,5
push eax

push 5
有什么不同啊 谢谢!!
...全文
149 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
libiaoye 2009-04-05
  • 打赏
  • 举报
回复
我也是初学者...同问
BAYNPU 2009-04-05
  • 打赏
  • 举报
回复
不用了,谢谢了,分数再也没用,关键是掌握汇编技术.
我用在外面写的 mov eax,5
push eax
再call就不对了 ;子程序在EAX中返回求和

kongling12 2009-04-05
  • 打赏
  • 举报
回复
我再给你+点分吧 争取早日得第一!! 呵呵
kongling12 2009-04-05
  • 打赏
  • 举报
回复
大侠同志:
0045987E |. E8 D5EFFAFF call 00408858
00459883 |. 50 push eax ;5
00459884 |. 56 push esi ;6
00459885 |. 53 push ebx ; 00e77170
00459886 |. E8 A1000000 call 0045992C ;计算5+6
我用在外面写的 mov eax,5
push eax
再call就不对了
[Quote=引用 4 楼 BAYNPU 的回复:]
这三条指令,只能是这样理解,要不你是怎样理解的?
关键是这个5,到底参数还是立即数,你没整个程序贴出来,只能是猜测吗.
[/Quote]
BAYNPU 2009-04-05
  • 打赏
  • 举报
回复
这三条指令,只能是这样理解,要不你是怎样理解的?
关键是这个5,到底参数还是立即数,你没整个程序贴出来,只能是猜测吗.
kongling12 2009-04-05
  • 打赏
  • 举报
回复
可是我在最后call的时候得到是不同的答案啊
而且mov eax,5
push eax
得到的答案是不对的!!
BAYNPU 2009-04-05
  • 打赏
  • 举报
回复
mov eax,5;把一个立即数5传送给EAX寄存器.
push eax ;将EAX入栈保护.

push 5 ;压入16位立即数(注:从80186开始PUSH 指令可以将立即数压堆栈).

21,500

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧