Assembly Cairo库参数格式

Assembly Cairo库参数格式,assembly,x86,cairo,Assembly,X86,Cairo,Cairo函数参数的格式是什么。我的意思是特别是坐标和颜色RGBA参数 我想从汇编语言使用它,所以C/C++类型不适合 它实际上是32位浮点格式吗 另外,如果“double”是64位,那么关于调用约定的下一个问题是如何在32位堆栈中传递64位参数?调用约定因不同的操作系统和平台而异。例如,x86主要使用基于堆栈的参数,而x86-64主要使用基于寄存器的参数 至于将64位值推送到32位堆栈上,您需要分别推送这两部分-因为x86是具有下推堆栈的little endian,所以您需要先推送高32位,然

Cairo函数参数的格式是什么。我的意思是特别是坐标和颜色RGBA参数

我想从汇编语言使用它,所以C/C++类型不适合

它实际上是32位浮点格式吗


另外,如果“double”是64位,那么关于调用约定的下一个问题是如何在32位堆栈中传递64位参数?

调用约定因不同的操作系统和平台而异。例如,x86主要使用基于堆栈的参数,而x86-64主要使用基于寄存器的参数

至于将64位值推送到32位堆栈上,您需要分别推送这两部分-因为x86是具有下推堆栈的little endian,所以您需要先推送高32位,然后推送低32位


不过,完全可以肯定的是,您始终可以编写一个小C函数来调用所讨论的库函数,将其编译为汇编,然后查看它如何处理参数。

看起来其中很多都是
double
参数,它们是64位浮点。@DrewMcGowen-I始终认为“double”是32位的意思。:?不,浮点是32位的
double
是64位的。@DrewMcGowen-所以,我编辑了这个问题-如何在32位堆栈中推送64位参数。:)对不起,我不能写C/C++程序(小的或大的),这是一个宗教问题。这就是我在这里问的原因。