首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在x86程序集中调用具有多个参数的子例程

在x86程序集中调用具有多个参数的子例程
EN

Stack Overflow用户
提问于 2014-11-01 11:46:00
回答 1查看 598关注 0票数 0

尝试弄清楚如何在x86程序集中多次正确地调用具有多个参数的子例程。如有任何帮助,我们不胜感激!在这一点上使用了Irvine库。代码的第一部分就是我想要的,但它似乎不工作,至少不是它应该的方式:

代码语言:javascript
复制
push OFFSET r1
push OFFSET c0
push OFFSET b0
push OFFSET a0
push 0
call quadratic ;(0,a0,b0,c0,r1)

代码的第二部分似乎是正确的:

代码语言:javascript
复制
quadratic   PROC
; calculation of the roots of a parabola
; Receives from stack
;   flag = type of root (0=positive, 1=negative) [integer, value parameter]
;   a$, b$, c$ = parabola parameters [REAL reference parameters]
; Returns
;   Specified root [REAL8 reference parameter]
PARAMS  = 3*TYPE DWORD ; number of temporaries plus return address
FLAG = PARAMS+0
A$ = PARAMS+4
B$ = PARAMS+8
C$ = PARAMS+12
RESULT = PARAMS+16

如果需要更多的代码来确定调用子例程的正确方式,请让我知道。再次感谢!

EN

回答 1

Stack Overflow用户

发布于 2014-11-01 23:14:24

很明显,我昨晚编程时太累了,没有意识到我的测试输入选择得太差了。我的代码一切都很好!很抱歉给您带来不便!作为参考,这是MASM。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26686021

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档