Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : afficher une chaine de caractere dans le sens inverse [ Divers / Débutant(e) ] (Orlyn)

vendredi 21 décembre 2007 à 13:32:24 | afficher une chaine de caractere dans le sens inverse

Orlyn

Bonjour, Je suis depsuis hier aprem sur un prog et ca fait des heures que je cherche (en changeant le prog et en cherchant sur google et partout) mais pas moyen de trouver la solution. Donc je veux afficher une chaine de caractere, caractere par caractere dans le sens direct et dans le sens inverse en mode adressage indexé direct. Le sens direct marche mais l'inverse. Voila mon programme : [quote]TITLE Affiche la chaine de caractere, caractere par caractere dans le sens direct et dans le sens inverse en mode adressage indexé direct ;****************************************************** ; * ; Programme qui affiche la chaine de caractere, caractere par * ; caractere dans le sens direct et dans le sens inverse en mode * ; adressage indexé direct * ; * ;****************************************************** DOSSEG .MODEL SMALL .STACK 100h .DATA message DB "Mise en oeuvre des differents modes d'adressage$" message2 DB 13,10,"Dans le sens direct : $" message3 DB 13,10,"Dans le sens inverse : $" message4 DB 13,10,"$" .CODE mov ax,@data mov ds,ax ;***********************TRAITEMENT*********************** mov ah, 09h ; Affichage de chaine mov dx, OFFSET message ; Transfert dans dx l'adresse de la chaine int 21h ; Interruption de l'affichage mov ah, 09h ; Affichage de chaine mov dx, OFFSET message2 ; Transfert dans dx l'adresse de la chaine int 21h ; Interruption de l'affichage mov cx,47 ; cx prend la valeur 47 (nombre de boucles) mov bx, offset [message] ; bx prend comme valeur l'adresse de message mov si,0 ; le registre si prend la valeur 0 et1 : mov ah,02h ; Affichage de caractere mov dl, [message+si] ; dl prend la valeur du premier caractere de message + si int 21h ; Interruption de l'affichage inc si ; On incrémente si LOOP et1 mov ah, 09h ; Affichage de chaine mov dx, OFFSET message3 ; Transfert dans dx l'adresse de la chaine int 21h ; Interruption de l'affichage mov ah, 09h ; Affichage de chaine mov dx, OFFSET message4 ; Transfert dans dx l'adresse de la chaine int 21h ; Interruption de l'affichage mov si,46 ; le registre si prend la valeur 46 et2 : mov ah,02h ; Affichage de caractere mov dl, [message+si] ; dl prend la valeur du premier caractere de message + si int 21h ; Interruption de l'affichage add si,-1 ; On décrémente si LOOP et2 ;*************************FIN**************************** mov ax,4c00h int 21h END[/quote]

vendredi 21 décembre 2007 à 13:36:02 | Re : afficher une chaine de caractere dans le sens inverse

Orlyn

Bon alors je vois de bouton pour editer le message donc desolé pour la non lisibilité. Je retape : Je suis depuis hier aprem sur un prog et ca fait des heures que je cherche (en changeant le prog et en cherchant sur google et partout) mais pas moyen de trouver la solution. Donc je veux afficher une chaine de caractere, caractere par caractere dans le sens direct et dans le sens inverse en mode adressage indexé direct. Le sens direct marche mais l'inverse. J'ai mi le prog a cette adresse : http://oriion.free.fr/progasm.txt Merci d'avance.

vendredi 21 décembre 2007 à 13:37:23 | Re : afficher une chaine de caractere dans le sens inverse

Orlyn

Desolé on y voit rien, je comprend rien a ce forum.

vendredi 21 décembre 2007 à 23:51:02 | Re : afficher une chaine de caractere dans le sens inverse

Guilou34

Salut
Tu as oublié d'initialiser CX  dans la deuxième boucle. Il y a aussi quelques maladresses dans ton code. Par exemple mov bx,offset message n'est pas utilisé etc.
Amicalement



Cette discussion est classé dans : chaine, caractere, affichage, mov, sens


Répondre à ce message

Sujets en rapport avec ce message

Chaine [ par RM50Man ] Voila je saisi ma chaine de caractere comme suit:mov ah, 0chmov al,  0ahmov dx, offset bufferint 21h mov ah, 09hmov dx, offset bufferint 21het ensuite couleur en TASM ? [ par redwings ] j'aimerai savoir les instructions qui permettent d'affiche un caractere en couleurAL contient le caractere ...MOV DL,AL MOV AH,02hINT 21h...merci Equivalent ASM de chaine[0] = 0 [ par AlexMAN ] Bonjour, C'est simplement une ptite incertitude : pour l'ekivalent de chaine[0] = 0 en C: mov [chaine], 0 ou mov chaine, 0Ou bien c totatelment la mm Saisie clavier [ par RM50Man ] Dans le code je dos saisir une chaine mais a aucun moment le progme permet de la saisir!!!!Comment faire pour entrer une chaine? mov ah, 0ch ;effaceme Affichage d'une chaine de caractères [ par shamanlinks ] Voila je ne sais pas comment faire pour afficher une phrase en assembleur 68k sans passer par une boucle qui affiche caractère par caractère. Sinon qu Invertion d'une chaine de caractère. [ par deck_bsd ] Bonjour,Voila je débute en ASM et je veu faire un bête programme qui inverse une chaine de caractère. Je l'ai fait, mais celui-ci, ne va pas vraiment probleme avec l interruption affichage de chaine [ par M0NTOYA ] bon voila mon probleme ,qd j utilse cette procedure(presentation) pour afficher une chaine de caractere presentation PROC PUSHA MOV AH,09h INT 21h POP probleme avec l interruption affichage de chaine [ par M0NTOYA ] bon voila mon probleme ,qd j utilse cette procedure(presentation) pour afficher une chaine de caractere presentation PROC PUSHA MOV AH,09h INT 21h POP Comment convertir une chaine de caractere en nombre [ par davidv ] Voila,comment une chaine de caractere "12" par exemplepeut elle etre convertie en nombre 12.merci a tousdavidV pb d'affichage :s [ par rana ] bjrje voudrais savoir, comment faire pour afficher une chaine de caractère en faisant une boucle (en utilisant repne scasb) jusqu a arrive a une lett


Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,172 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.