Pb affichage console

Signaler
Messages postés
241
Date d'inscription
dimanche 10 août 2003
Statut
Membre
Dernière intervention
16 juin 2010
-
Messages postés
1466
Date d'inscription
vendredi 2 janvier 2004
Statut
Modérateur
Dernière intervention
14 février 2014
-
voila je cherche a faire un prog qui affiche 0 ou 1 en fonction de la valeur de ax . et le teste est ds une procedure . mais il y a un pb le prog n'affiche rien , il n'y a pas d'erreur ms rien ne se passe .
je suis sous windows xp ( x86 )
j'utilise tasm comme compilo
le prog doit donner un exe

voila le code :

.386

; segment de code principale
code segment use16

assume cs:code , ds:data

debut:

mov ax, data
mov ds, ax

mov ax,1

call fonction_param

mov ah, 4ch
int 21h

; la fonction
fonction_param proc near

cmp ax,1
je egal

mov ah, 09h
mov dx, offset msgautre
int 10h

ret

egal:

mov ah, 09h
mov dx, offset msg1
int 10h

ret

fonction_param endp

code ends

data segment use16

msgautre db 'param!=1',10,13,'$'
msg1 db 'param=1',10,13,'$'

data ends

end debut

si qq1 sait d'ou vient le pb sa serai sympas de m'expliquer (avec des detailles si possible je debute )
merci
@+

3 réponses

Messages postés
570
Date d'inscription
jeudi 28 novembre 2002
Statut
Membre
Dernière intervention
18 janvier 2021
2
Salut,

Sans prétendre donner une réponse complète ,je préfère masm32 a tasm (beaucoup plus simple pour faire des applications consoles) :
suggestion:
ou est le curseur dans l'écran dos ?
La compilation se fait elle avec l'option console et le programme affiche t'il un écran dos.
Si pas d'écran dos modifier les parametres de compilation.
ToutEnMasm
Messages postés
241
Date d'inscription
dimanche 10 août 2003
Statut
Membre
Dernière intervention
16 juin 2010

pr cequi es de tasm ce n'est pas si compliquer deplus j'ai fais un .bat qui fait quasiment tt tt seul .
pr le curseur je ne sais pas trop car ds le fichier bat j'ai mis une pause juste apres l'execution du prog donc je le vois directement apres le msg 'appuyer sur une touche pr continuer'
pr la console pas de pb il en ouvre bien une
Messages postés
1466
Date d'inscription
vendredi 2 janvier 2004
Statut
Modérateur
Dernière intervention
14 février 2014
1
salut,

la reponse est simple:
tu utilise la fonction 09h de l'interruption 10h du bios qui sert a afficher le caractere contenu dans AL

il faudrait que tu utilise l'interrutption 21h du dos qui affiche effectivement une chaine de caractere.

@++