2016-11-20 15 views
1

このコードの何が問題なのですか?私はこのプログラムが文字列を逆にして表示することを期待しています。文字列反転コードのエラー

;String reverse (Problem is it is displaying any output) 
.model small 
.stack 100h 
.data 
    text1 db 'HELLO WORLD $' 
    text2 db 13 dup(?) 
    count dw 13 
.code 
    main proc 
    mov ax, @data 
    mov ds,ax 
    mov es,ax 
    mov cx,count 
    mov si,0 
    mov di,0 
    add di,count 
    dec di 

again: mov al,text1[si] 
    mov text2[di],al 
    inc si 
    dec di 
    loop again 

    lea dx,text2 
    mov ah,9 
    int 21h 

    mov ah,4ch 
    int 21h 
    main endp 
end main 

答えて

3

逆転(および結果を表示することを望んで!)あなたは、結果の先頭に移動するために、元の$文字を許してはなりません。

text2 db 12 dup(?), "$" 

13の代わりに12にを設定すると、テキスト2の定義を変更してトリックを行う必要があります