programme assembleur/chaine de caractère - ASM - Programmation
MarshPosté le 17-11-2010 à 21:15:16
Slt tt le monde Aide moi a ecrire un programme assembleur qui charge ue chaine de caractere en leur memoire central puis il fait ce travail: * Calculer et afficher la taille de la chaine. * Afficher le nombre de mots. * Afficher le mot le plus long. * Afficher le nombre de séparateurs. * Afficher le caractére le plus récurrent
Le programme assembleur à développer doit etre structuré en Macros * La premiére étape à denelopper doit etre développé au sein d'une seule Macro. * La deuxième étape implémente pour chaque traitement une Macro. * Les Macros développées dans chaque des deux étapes doivent etre appelés dans le programme principal de sorte à ce qu'on retrouve le meme programme que celui de la premiére version.
voila mon travail il y a quelque probleme SVP aide moi voila mon code:
title char model small stack 100h
.data msg1 db "donner le caractere$" msg2 db "chaine vide$" msg3 db "la taille de la chine est:$" i dw 0
.code mov ax,@data mov dx,ax
mov ah,9 mov dx,offset msg1 int 21h
mov ah,1 int 21h mov bx,ax mov cx,'#'
boucle: cmp [bx],cx je vide inc i while1: mov ah,9 mov dx,offset msg1 int 21h mov ah,1 int 21h mov bx,ax mov cx,'#' cmp [bx],cx je fin inc i jmp while1 fin: jmp end1 vide: mov ah,9 mov dx,offset msg2 int 21h end1: mov ah,9 mov dx,offset msg3 int 21h mov dx,i mov ah,2 int 21h
Marsh Posté le 17-11-2010 à 21:15:16
Slt tt le monde
Aide moi a ecrire un programme assembleur qui charge ue chaine de caractere en leur memoire central puis il fait ce travail:
* Calculer et afficher la taille de la chaine.
* Afficher le nombre de mots.
* Afficher le mot le plus long.
* Afficher le nombre de séparateurs.
* Afficher le caractére le plus récurrent
Le programme assembleur à développer doit etre structuré en Macros
* La premiére étape à denelopper doit etre développé au sein d'une seule Macro.
* La deuxième étape implémente pour chaque traitement une Macro.
* Les Macros développées dans chaque des deux étapes doivent etre appelés dans
le programme principal de sorte à ce qu'on retrouve le meme programme que celui
de la premiére version.
voila mon travail il y a quelque probleme SVP aide moi
voila mon code:
title char
model small
stack 100h
.data
msg1 db "donner le caractere$"
msg2 db "chaine vide$"
msg3 db "la taille de la chine est:$"
i dw 0
.code
mov ax,@data
mov dx,ax
mov ah,9
mov dx,offset msg1
int 21h
mov ah,1
int 21h
mov bx,ax
mov cx,'#'
boucle: cmp [bx],cx
je vide
inc i
while1: mov ah,9
mov dx,offset msg1
int 21h
mov ah,1
int 21h
mov bx,ax
mov cx,'#'
cmp [bx],cx
je fin
inc i
jmp while1
fin: jmp end1
vide: mov ah,9
mov dx,offset msg2
int 21h
end1:
mov ah,9
mov dx,offset msg3
int 21h
mov dx,i
mov ah,2
int 21h
mov ah,4ch
int 21h
end