備忘録。
いつもわからなくなるので。
x64でのレジスタと引数の対応
x86とは呼び出し規約がだいぶ違う。
その中でも一番の違いは、関数呼び出し時の引数の扱い。
x86では、最後の引数から第一引数の順番でスタックにPUSHしていたが、x64では
- 第1引数 RCX
- 第2引数 RDX
- 第3引数 R8
- 第4引数 R9
- 第5引数以降 スタックにPUSH
というのが基本。
まとめ
自分用のメモ。
x86とx64を行き来するとわからなくなるので書いておいた。
備忘録。
いつもわからなくなるので。
x86とは呼び出し規約がだいぶ違う。
その中でも一番の違いは、関数呼び出し時の引数の扱い。
x86では、最後の引数から第一引数の順番でスタックにPUSHしていたが、x64では
というのが基本。
自分用のメモ。
x86とx64を行き来するとわからなくなるので書いておいた。
コメント