0

次のコードは、文字列で示されているよりも多くの文字を出力します。NASMを使用しています

section .text

global main

main:
    mov ah,0x09
    mov dx, varr
    int 0x21 ; print string in dx

    mov ah, 0x4c
    mov al, 0x00
    int 0x21 ; exit program code 0

section .data
    varr db "asd",'$'

そして、asd文字列の後に続くランダムな文字を次のように出力します。

'♦V☺'♦'♦☺☺☺ ☻               8♣µ Æ♣¶ ↑ Æ♣        ♣               ═! asd

ここに画像の説明を入力

どうしてこれなの?私が失敗していること。X 線で分解したところ、正しいように見えます。varrのアドレス(0x10) は、文字列の先頭に対応しています。

4

0 に答える 0