.:| conversion d'une chaine en majuscule |:.

Contenu du snippet

conversion d'une chaine en majuscule ..en éliminaant tt carctères(espace , ; ?/...)..une chaaine comme.. abcA..?/£z sera convertie en ABCAZ
c'est fait avc emulator8086..peut très bien marcher avec masm32ou tasm avec qulques petites modifications bien sur..si vous avez d'autres solutions pour améliorer mon modèste programee..je suis preneur ;)

Source / Exemple :


; create ".com" executable (DOS 1.0 compatible).
org  100h	; add +100h to all addresses (required for .com file).

jmp start

ch1 db "entrez une chaine :",'$'
ch2 db 50 dup('$') 
 
 start:
 
 lea dx,ch1  ;affichage de la chaine : "entrez une chaine";
 mov ah,09h
 int 21h
 
 ;mov [si],10;optionnel pour limiter la taille maximale;
 
 lea dx,ch2  ;lecture de la nouvelle chaine ;

 mov ah,0Ah
 int 21h
 
 
 	lea si,ch2+2
 	mov di,si
 l4:
 	
 	cmp [si],'$'
 	je l1
 	cmp [si],'a'
 	jae l2  ;l2 la cmparaison avc peti z;
 
 	cmp [si],'Z'
 	jae l3  ;l3 pour le traitement des carctères spéciaux traitemnt;
 	cmp [si],'A'
 	jbe l3  ;l3 encore;
        
 l6:
 
  	mov al,[si]
 	mov [di],al
 
 	inc di
 	
l3: 	
 	inc si
 	jmp l4
 
         ;après la comparaison de peti z;
 l2:
 	cmp [si],'z'
 
 	jnbe l3  ;traitment encore;
 	mov al,[si]  ;sub si+2,32 autre syntaxe;
 	sub al,32
 	mov [si],al
 	jmp l6
 
 	
          
 
 
 l1:
 
 mov [di],'$'
 
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;l'affichage;;;;;;;;;;;;;;;;;;;;;;;;;
 
mov dh, 10
	mov dl, 20
	mov bh, 0
	mov ah, 2
	int 10h
 lea dx,ch2+2 ;dik cx lwla;
 mov ah,09h
 int 21h

 
 
 ret

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.