0

Cairo 関数の引数の形式は何ですか。特に座標と色の RGBA 引数を意味します。

アセンブリ言語から使いたいので、C/C++系は不向きです。

実際には 32 ビット浮動小数点形式ですか?

また、「double」が 64 ビットの場合 - 呼び出し規約に関する次の質問 - 32 ビット スタックでは、64 ビット引数はどのように渡されますか?

4

1 に答える 1

0

呼び出し規約は、オペレーティング システムやプラットフォームによって異なります。たとえば、x86 は主にスタック ベースの引数を使用しますが、x86-64 は主にレジスタ ベースの引数を使用します。

64 ビット値を 32 ビット スタックにプッシュする場合は、2 つの半分を別々にプッシュする必要があります。x86 はプッシュダウン スタックを備えたリトル エンディアンであるため、上位 32 ビットをプッシュする必要があります。最初に、下位 32 ビットが続きます。

ただし、問題のライブラリ関数を呼び出す小さな C 関数をいつでも作成し、それをアセンブリにコンパイルして、引数の処理方法を確認することができます。

于 2013-07-31T15:50:31.907 に答える