.model small .stack 100h .data chaine db "je veux tester$" char db '$' nr dw ? tch dw ? entre dw 10,13,'$' msg4 dw "le nombre de repétion de caractére le plus reccurence est:$" .code mov tch,14 mov si,offset chaine mov nr,0 mov cx,tch dec cx mov dx,si add dx,tch repete14: mov bx,0 mov al,[si] mov char,al repete24: mov al,[si+1] cmp al,char je meme jmp different meme: inc bx different: inc al cmp al,dx \\dans cette ligne,je n'ai pas su faire la modification adequate jg repete24 inc si cmp dx,nr jg affecter loop repete14 affecter: mov nr,bx loop repete14 mov dx,offset msg4 mov ah,9 int 21h mov ax,nr mov ah,2 int 21h mov dx,offset entre mov ah,9 int 21h
motch macro mov nbc,0 mov nbcmax,0 mov di,offset MotLong mov si,offset chaine repeter : mov al,chaine[si] inc si cmp al,'0' je stopAjout cmp al,' ' je stopAjout cmp al,',' je stopAjout mov MotLong[di], al inc di add nbc,1 jmp repeter stopAjout : mov MotLong[di] ,'0' mov al,nbcmax mov bl,nbc cmp al, bl jg pasChangementDuMot mov nbcmax,bl xor di,di repeter1 : mov al,MotLong[di] mov MotPlusLong[di],al cmp al,'0' je finChangement inc di jmp repeter1 finChangement : pasChangementDuMot : mov di,si add di,-1 mov al,chaine[di] cmp al,'0' je finChaine xor di,di jmp repeter finChaine : mov ah,9 lea dx,msg6 int 21h xor di,di mov cl,nbcmax affiChaine : mov dl,MotPlusLong[di] cmp dl,'0' je fintot inc di mov ah,2 int 21h jmp affichaine fintot : endm
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question