0

このコードは、Hello Worldを5 回言う必要があります。

org 100h

string db 'Hello World',0Dh,0Ah,'$'
mov dx,string
mov bl,0

check:
cmp bl,5
jb print
ja term

print:
mov ah,9
int 21h
mov ah,04Ch
int 21h
inc bl
jmp check

term:
ret

出力として Hello World を 1 つだけ取得しています。何か不足していますか?

4

1 に答える 1

2

文字列を1回出力した後、プログラムを明示的に終了します(INT 21h、AH = 4Ch)。

また、「Hello World」文字列をコードであるかのように実行しようとしているように見えます(OSがプログラムの実行を開始するアドレス100hに文字列を配置している場合など)。それが何かを印刷する前にあなたのプログラムをクラッシュさせない理由は、純粋な運の場合であるに違いありません。

于 2012-10-29T10:09:37.893 に答える