moClay
@moClay
учусь всему

Как инвертировать строку в tasm?

нужно ввести строку и инвертировать ее.
то что у меня есть не работает. В чем может быть проблема?

Text    segment
        assume  CS:text,DS:data
Begin:  mov AX, data
        mov DS, AX
        mov BX, offset txt
        mov SI,0
inpt:   mov Ah, 01h
        int 21h
        cmp AL,0
        je ex_ascii
        mov [BX][SI],AL
        inc SI
        jmp inpt
ex_ascii: mov AH, 08h
        int 21h
        cmp AL, 10h
        je output
        jmp inpt
output: mov DX, offset message
        mov AH, 09h
        int 21h
        dec SI
next:   cmp SI,0
        jl exit
        mov DL, [BX][SI]
        mov AH, 02h
        int 21h
        dec SI
        jmp next
exit:   mov AX, 4c00h
        int 21h
text    ends
data    segment
message db 10, 13,'$'
txt     db 80 dup (?)
data    ends
end Begin


P.S. пожалуйста если можно код в обычном tasm. я не пониманию small или tiny. Спасибо
  • Вопрос задан
  • 82 просмотра
Пригласить эксперта
Ответы на вопрос 1
freeExec
@freeExec
Участник OpenStreetMap
На вопрос "что у меня не работает" отвечает отладка своего кода по шагам. И поиск того место где действительность расходится с задуманным.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы