MASMでHELLO WORLDを表示するプログラムを作りました。 ★HELLO.ASM★ ASSUME CS:CODE,DS:CODE CODE SEGMENT ORG 100H START: MOV DX,OFFSET MSG MOV AH,9 INT 21H INT 20H MSG DB 'HELLO WORLD!$' CODE ENDS END START ★コンパイル方法★ 1.MASMでコンパイルしてOBJを作成します。 e.g.)MASM HELLO 2.LINKでOBJをEXEに変換します e.g.)LINK HELLO 3.EXE2BINでEXEをCOMに変換します e.g.)EXE2BIN HELLO.EXE HELLO.COM 4.HELLO.COMを実行します ★スクリーンに文字列を出力する★ INT 21H - Function 09H ファンクション09Hではスクリーンに文字列を出力します DS:DXには出力する文字列のオフセットを入れます。 このシステムコールでは$が終端記号であるため、 必ず最後が$で終わる必要があります。 また、13,10は改行コードで、例えば、 MSG DB 'HELLO',13,10,'WORLD$' という文字列では、 HELLO WORLD というように改行して出力します。 ★プログラム終了の作法★ プログラムを終了させる方法は3つあります。 1.INT 20Hを使用する (v1.25) INT 20H 2.Function 00Hを使用する (v1.25) MOV AH,0 INT 21H 3.Function 4CHを使用する (推奨) MOV AH,4CH INT 21H Function 00HはINT 20Hを呼び出す割込でINT 20Hと同じです。 MS-DOS1.25ではFunction 4CHに対応していないため INT 20HまたはFunction 00Hを使用します。 一方、2.0以降ではFunction 4CHによる終了が推奨されています。 |