2

関連する情報が見つからず、この問題に1日ほど悩まされています..

私のコードには、数字(例:259)を取り、その数字を配列スロットに分割するこの部分があります。

SEPERATE_DIGITS:
    mov ax,RESULT               ; result is the number im working on. RESULT dw 259h
    mov si,0
    SEPERATE_DIGITS_LOOP:
        div TEN                 ; TEN dw 10h
        add dl,30h              ; fix-up to print later on
        mov SEPERATED[si],dl    ; store separated digit in my array.
        inc si
        cmp ax,0
    jne SEPERATE_DIGITS_LOOP

私はターボデバッガーでそれをデバッグしてきました..最初の部門は正常に動作します。(25 は ax に、9 は dx に).. 次の除算では、IP は ape になり、コマンド "db FE" にジャンプし、無限ループで何度もジャンプします。

私は一体何を間違っているのですか?質問:

4

1 に答える 1