アセンブリ言語におけるプログラム終了シーケンス

このアセンブリ言語プログラム。

 

bits 16
org 0x100

mov ah,2
mov dl,'s'
int 21h

;プログラム終了シーケンス
mov ah,4Ch
mov al,0
int 21h

 

プログラム終了シーケンスにおいて、"int 21h"はah内の数値に応じた処理をする命令であり、ah内の数値が4Chなのでプログラム終了を行う。

一方でalには戻り値(0)が格納される。

なので、戻り値を考えなければ"mov al,0"は消せる。

本プログラムから"mov al,0"を取ったアセンブリ言語プログラムがこれ。

 

bits 16
org 0x100

mov ah,2
mov dl,'s'
int 21h

;プログラム終了シーケンス
mov ah,4Ch
int 21h

 

"mov al,0"がある時と同じく、画面にsという文字が出力された後にプログラムが終わるやつである。