Inverser une chaîne de caractères stockée dans un tableau
:salut:
Mon problème est que j'essaye d'inverser une chaîne de caractères en utilisant un tableau : je saisis à partir du clavier puis, en appuyant sur f, la chaîne sera inversée. Malheureusement, mon code prend la dernière case du tableau et décrémente son code ascii de 1.
qsdf il affiche dcb
au lieu de dsq
MERCI POUR VOTRE AIDE:D
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| pile SEGMENT STACK
DB 256 DUP(?)
pile ENDS
donnees SEGMENT
t DB 10 DUP(?)
donnees ENDS
code SEGMENT
saisie PROC FAR
ASSUME cs:code,ds:donnees,ss:pile
MOV ax,donnees
MOV ds,ax
mov cx,0
mov bl,t
repeter:
MOV ah,01h
INT 21h
cmp al,'f'
je afficher
MOV [t], al
inc cx
add t,1
jmp repeter
afficher:
sub t,1
mov dl,[t]
mov ah,02h
int 21h
loop afficher
MOV ah,4ch
INT 21h
saisie ENDP
code ENDS
END saisie |