呼出規約とは? わかりやすく解説

呼出規約

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/07/16 03:15 UTC 版)

pコードマシン」の記事における「呼出規約」の解説

スタックフレームは以下のようになっている: EP → ローカルスタックSP → ... ローカル変数 ... 引数 ... リターンアドレス(前のPC) 前のEP 動的リンク(前のMP静的リンク外側プロシージャMPMP関数リターンプロシージャ呼び出し次のうになる。まず呼び出し次の命令開始されるmst n ここで、n は入れ子レベル指定するPascalではプロシージャ入れ子になりうることに注意)。この命令スタック印をつける。すなわち現在のスタックフレームの上の5要素ぶんを予約し以前EP動的リンク静的リンクなどを設定する呼び出し側は必要な引数計算してプッシュし、次の命令実行するcup n, p これでユーザープロシージャが呼び出される(n は引数個数、p はプロシージャアドレス)。この命令PCリターンアドレスとしてスタック上にセーブし、そのプロシージャアドレス新たなPCとしてセットする。 ユーザープロシージャは次の2つ命令から開始されるent 1, i ent 2, j 1番目の命令SPMP + i にする。2番目の命令EPSP + j にする。従って、i にはローカル変数用の領域サイズ指定し引数および余分に5要素分も予約する)、j には命令実行ローカル必要なスタック領域指定されるメモリ不足発生していないかはこの時点チェックされる呼び出し側への復帰次の命令行われる。 retC Cにはリターン型(上述基本型 i, r, c, b, a と何も返さない場合の p)が指定されるリターン値は適切なセル格納される。p 以外の各型リターンでは、その値がスタック置かれたまま呼び出し側に復帰する。 ユーザープロシージャの呼び出し(cup)ではなく標準プロシージャ q を呼び出す場合次の命令使用するcsp q 標準プロシージャとは、Pascal標準ライブラリのようなもので、例えば readln()("csp rln")、sin()("csp sin")などがある。ただし、eof()pコードでは1つ命令となっている。

※この「呼出規約」の解説は、「pコードマシン」の解説の一部です。
「呼出規約」を含む「pコードマシン」の記事については、「pコードマシン」の概要を参照ください。

ウィキペディア小見出し辞書の「呼出規約」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ


このページでは「ウィキペディア小見出し辞書」から呼出規約を検索した結果を表示しています。
Weblioに収録されているすべての辞書から呼出規約を検索する場合は、下記のリンクをクリックしてください。
 全ての辞書から呼出規約 を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「呼出規約」の関連用語

呼出規約のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



呼出規約のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのpコードマシン (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS