[label] LOAD EP=program-name|EPLOC=program-address|DE=list-entry-addr
[,DCB=dcb-addr]
[,ERRET=err-rtn-addr]
[,LSEARCH=NO|YES]
[,LOADPT=addr]
[,RELATED=value]
指定したプログラムをメモリにロードします。
アセンブラーの LOAD:
LOAD マクロは、その RMODE 設定に応じて、境界の上位または下位のメモリにプログラムをロードします。 LOAD が完了すると、レジスタ 15 のバイナリ値はゼロになり、レジスタ 0 にはプログラムのロード場所のアドレスがあり、レジスタ 1 にはプログラムの長さがあります。レジスタ 0 の上位ビットは、次のように、ロードされたプログラムの AMODE 設定を示すように設定されます。
0=AMODE(24)
1=AMODE(31)
COBOL の LOAD:
LOAD マクロは、境界の下位のメモリにスタブ アセンブラー プログラムをロードします。 スタブ アセンブラー プログラムを実行すると、そのプログラムは AMODE 設定に応じて境界の上位または下位のメモリに COBOL プログラムをロードします。COBOL プログラムの DATA 指令がその AMODE 指令と一致しない場合、COBOL プログラムの作業場所節は個別にロードされます。 AMODE(31) アセンブラー プログラムが AMODE(24) COBOL プログラムをロードする場合、31 ビット アセンブラー パラメーター アドレスを 24 ビット COBOL プログラムに正常に渡すことができないため、スタブ コードの実行時に 0C5 異常終了が発生します。
DOS/VSE 互換性:
VSECOMP コンパイラ指令を指定する場合、アセンブラー オプションは、このマクロの DOS/VSE バージョンをエミュレートします。 この場合、最初の位置パラメーターは、ロードするプログラムの名前になります (EP キーワードは不要)。 ロードが完了すると、レジスタ 1 にはプログラムのロード場所のアドレスがあり、上位ビットは、ロードされたプログラムの AMODE 設定を示すように設定されます。