Qql pourrait me montrer comment inverser une chaine de caractère SVP?
Version imprimable
Qql pourrait me montrer comment inverser une chaine de caractère SVP?
ben une façon assez simple, c'est de parcourir toute la chaine, jusqu'a parvenir au caractère null, de fin de chaine, et après avec un pointeur sur la tête et un autre sur la queue, tu permutes les caractères....c'est pas plus bête que cela :wink:
Voilà ce que ça donne, sous Tasm :
donc ca ça marche sous dos, a + mecCode:
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 .MODEL SMALL .STACK 256 .DATA chaine DB "Bonjour tout le monde $" .CODE START: mov ax, @DATA mov ds, ax mov si, offset chaine trouve_null: cmp byte ptr ds:[si], '$' je permut inc si jmp trouve_null permut: dec si mov di, offset chaine .p1: cmp di, si jae .p2 mov ah, ds:[si] mov al, ds:[di] mov ds:[si], al mov ds:[di], ah inc di dec si jmp .p1 .p2: mov ah,09h mov dx, offset chaine int 21h mov ax, 4c00h int 21h END START
Terrible, merci! :)