私はアセンブリを学んでおり、もちろん古典的な 0x10 bios 割り込みを試しています。私が見たリソースはlodsb、文字列を出力するために使用していることを示しているため、そのオペコードを理解するために、その動作を模倣しようとしています。これはでは問題lodsbなく動作しますが、私が持っているものではうまくいきません。私は何を間違っていますか?:
始める:
mov ah, 0Eh ; BIOS 割り込み用
mov si, text_string ;ソース インデックスを text_string の先頭に設定
。繰り返す:
; lodsb の動作をエミュレートして、それがどのように機能するかを学習しようとしています:
mov al, [si] ; al レジスタの si に文字を入れる
add si, 1 ;ソース インデックスをインクリメントする
cmp al, 0 ;文字がゼロの場合 (文字列の終わり)
終了しました;実行を終了します
int 10h ;文字を画面に表示するための bios 割り込み
jmp .repeat
text_string db 'Hello, World!', 0
終わり:
戻る