Intel の Software Developer's Manual (特に Volume 2) や x86 アセンブリ チュートリアル ( The Art of Assemblyなど)を読むことをお勧めします。
コードの内訳:
1) jmp 115
CPU が「Hello world」文字列をコードであるかのように実行しようとしないように、命令にジャンプしmov ah,09
ます (CPU はコードとデータの違いを認識できません)。
2) db 'Hello world!$'
文字列を宣言します。ドル記号は、一部の DOS 割り込み関数で文字列ターミネータとして使用されます。
3) -a 115
debug
アドレス 115 から始まる後続のコードをアセンブルするように指示します。
4) mov ah, 09
値 9 を register に入れah
ます。
5) mov dx, 102
「Hello world」文字列のアドレスを登録しますdx
6) int 21
割り込み 21h / 関数 9 (書き込み文字列) を実行します。関数番号は register で期待されah
、文字列オフセットは register で期待されdx
ます。これは、前の 2 つの命令によって処理されました。
7) int 20
割り込み 20h を実行 (プログラムを終了)