技術士第一次試験 専門科目情報工学部門 R1
通常
試験時間: 00:00問題時間: 00:00
問題一覧
問題 11 / 35
出典: 令和元年度技術士第一次試験問題[専門科目情報工学部門] III-11IntelやAMDの64ビットアーキテクチャである×64では、バイナリの互換性を高めるために、関数の呼出し規約を含むアプリケーション・バイナリ・インタフェース(ABI)が定められている。ABIに関する次の記述のうち、最も適切なものはどれか。
①Microsoft x64呼出し規約では,C言語ライブラリの printf を呼び出す際に、実引数に含まれる浮動小数点引数の数を特定のレジスタにセットしなければならない。
②System V AMD64 ABIにおける関数呼出しで、複数の整数値を実引数として渡すとき、最初の4つはレジスタで渡し、残りはスタックに積んで渡す。
③Microsoft x64呼出し規約に基づく関数呼出しで、複数の整数値を実引数として渡すとき、引数渡しに用いるレジスタ数に合わせて、退避領域を確保しなければならない。
④System V AMD64 ABIに従って実引数をスタックに積む際は、C言語と同様に右から順に積む。
⑤Microsoft x64呼出し規約に従って関数を呼び出す際、呼び出し側がレジスタを保存しなければならない。
