calling-convention专题提供calling-convention的最新资讯内容,帮你更好的了解calling-convention。
为了好玩,我正在学习一些汇编(目前在 Windows 上使用 NASM),我有一个关于 <a href="https://en.wikibooks.org/w
在这个 <a href="https://en.wikipedia.org/wiki/X86_calling_conventions#Register_preservation" rel="nofollow noreferrer">Wikipedia artic
我正在编写一个汇编程序和一个 C 程序; C 程序将调用一个用汇编编写的函数。环境为 Ubuntu 18.04LTS x64。
<a href="http://6.s081.scripts.mit.edu/sp18/x86-64-architecture-guide.html" rel="nofollow noreferrer">http://6.s081.scripts.mit.edu/sp18/
我有一个结构声明为 <pre><code>strucr mystruct_ { char cv[12]; int i; short int sv[12]; }; </code></pre> 和
我正在尝试在 Windows 上使用 NASM 组装以下代码。 printf 函数应该采用 xmm0 到 xmm2 作为小数点参数。为什么
第 3.2.3 节中的 <a href="https://raw.githubusercontent.com/wiki/hjl-tools/x86-psABI/x86-64-psABI-draft.pdf" rel="nofollow noreferrer"
从 <a href="https://github.com/java-native-access/jna/issues?q=vararg" rel="nofollow noreferrer">these past issues</a> 和 <a href="http
我有一个带有 C 兼容头文件的库。 这个库是 100% 用 C++ 实现的。 尽管如此,重要的是调用约定都是 C 语
几个月来我一直在思考如何解决在自定义编程语言中调用函数的问题。对同一函数的无限递归调用有一
我如何用 <code>assembly</code> 语言表达调用约定,就像 <code>C++</code> 这样的高级语言一样(通过使用 <code>__
有一个简单的 <code>MessageBox</code> 程序: <pre><code>NULL EQU 0 ; Constants MB_DEFBUT
我想在 NASM System V ABI x86-64(英特尔语法)中编写一个可以在 C 程序中使用的函数。 这是函数的原
我尝试将 fasm 代码中的三个参数传递给 c 函数: <pre><code>push ebx push eax push esi push edx call _kernel_main voi
我在通过 shellcode 编写 64 位 fastcall 函数时遇到了一些问题,问题是它似乎与在它之前和之后调用的其他
我发现了一些关于通过 DllImport 从 C# 调用 WinAPI 函数的问题,我无法理解。所以,最初我使用功能 <a href=
我正在生成机器代码以调用现有系统库中的函数。大多数系统库都是用 C 编写的,所以我将以 C 为例,
当我逐步浏览我的一个库中的一些新代码时,我注意到第一个参数似乎进入 RDX 寄存器而不是记录的 RCX
我已经了解(至少我这么认为)主要的 ABI 概念,但仍然想澄清一些方面: <ol> <li>在示例中,我们使
在以下 C 代码中: <pre><code>#include &lt;stdio.h&gt; int main(void){getchar();} </code></pre> 它产生以下汇编: