gpt4 book ai didi

assembly - 返回结果到 eax(IA-32 汇编语言)

转载 作者:行者123 更新时间:2023-12-04 10:21:11 26 4
gpt4 key购买 nike

我对如何从汇编语言中的方法返回值感到有些困惑。据我所知,eax 寄存器用于保存要返回的结果。

例如,假设我的结果是 4,我使用:

mov eax, 4

我现在在 eax 中有 4 个,我想返回这个方法。有什么我需要做的吗?或者会指示 ret自动返回结果?

问题是我不知道寄存器 eax 有什么特别之处。从我使用 ret 开始我回到调用者那里,调用者可以自由访问我将结果存储到的任何寄存器,所以为什么我不能只使用 ebxecx而是存储结果?

最佳答案

结果存储在eax的原因是约定;您可以决定将其存储在您喜欢的任何寄存器中。但是,您的函数的调用者可能会假设返回值的内容存储在 eax 中。 .这也意味着您在调用 ret 时不必做任何额外的工作。 .

关于assembly - 返回结果到 eax(IA-32 汇编语言),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5897771/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com