IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Assembleur Discussion :

Diagonale de pixels en mode graphique


Sujet :

Assembleur

  1. #1
    Membre régulier
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 71
    Points : 82
    Points
    82
    Par défaut Diagonale de pixels en mode graphique
    Bonjour, je m'appelle Anthony, je suis étudiant en 1ere année dans un iut d'informatique.
    Nous devons réaliser un projet en mode graphique pour nos études et je rencontre pas mal de difficultés dont certaines que je ne comprends pas...

    Voici la commande que j'utilise pour passer dans le mode graphique que nous devons utiliser.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    mov ah,0
    mov al,4
    int 10h
    Ce mode graphique, VGA si je me souviens bien, est assez pratique à utiliser...

    Le problème du moment est :
    J'ai créé un programme qui affiche, à l'aide d'une boucle, une suite de pixels en diagonales... je ne les efface pas et je n'ai utilisé aucune commande pour le faire.

    Ce programe doit afficher 19 pixels de la case 10/10 à la case 29/29 mais affiche le premier, puis efface celui ci et affiche le deuxième, par la suite l'affichage n'efface pas les précédents...

    Je ne suis pas chez moi et je n'ai pas le code sous la main mais je le collerai ici si vous le souhaitez, ou si vous ne comprennez pas le problème..

    Merci d'avance et à bientôt je pense, le projet n'est pas simple !

  2. #2
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 938
    Points : 59 417
    Points
    59 417
    Billets dans le blog
    2
    Par défaut
    Bonjour et bienvenue !
    Citation Envoyé par litllechicken
    Je ne suis pas chez moi et je n'ai pas le code sous la main mais je le collerai ici si vous le souhaitez, ou si vous ne comprennez pas le problème
    Ce serait mieux en effet
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  3. #3
    Membre régulier
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 71
    Points : 82
    Points
    82
    Par défaut
    Dans ce cas je le donnerai dès que je serai chez moi ou que je me souviendrai de mon pass LOGMEIN alors ^^ en attendant merci quand meme a ceux qui tenterons de m'aider

  4. #4
    Membre régulier
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 71
    Points : 82
    Points
    82
    Par défaut
    j'ai retrouvé mon pass de LOGMEIN c'est bon donc voici le code assembleur que j'ai réalisé l'autre jours:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    	ideal
    	model small
    	extrn temp : far
    	stack 200h
    	include "MYmacros.asm"
    dataseg
    	tour db ?
    codeseg
     
    debut:
     
    	mov ah,0
    	mov al,4
    	int 10h		;mode graphique enclanché
     
    	mov ah,0Bh
    	mov bh,1
    	mov bl,0
    	int 10h		;choix de la palette de couleur des pixels
     
    	mov [tour],1
     
    tantque1:
    	cmp [tour],20
    	je fintantque1
    faire1:
    	mov ah,0Ch
    	mov al,1
    	mov bh,0
    	mov bl,[tour]
    	mov dx,bx
    	mov bh,0
    	mov bl,[tour]
    	mov cx,bx
    	int 10h		;met le pixel [tour][tour] en couleur vert
    	inc [tour]
     
    	call far temp	;on appelle la temporisation
     
    	mov ah,1
    	int 21h		;on atten ici qu'une touche soie tapée
     
    	jmp tantque1
     
    fintantque1:
     
    	mov ah,0
    	mov al,3
    	int 10h		;mode texte enclanché
     
    exit
    end debut

  5. #5
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 938
    Points : 59 417
    Points
    59 417
    Billets dans le blog
    2
    Par défaut
    Tes problèmes viennent peut-être de la procédure de temporisation car ta boucle affiche une belle diagonale... As-tu essayé sans ?

    Il aurait été préférable de déclarer tour en word et d'initialiser la ligne et la colonne de cette manière :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	mov dx,[tour]
    	mov cx,dx
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  6. #6
    Membre régulier
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 71
    Points : 82
    Points
    82
    Par défaut
    j'ai déclaré "tour" en "db" donc c'est pas possible c'est pour ca que je le fais en deux fois
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	mov bh,0
    	mov bl,[tour]
    et ça me donne la même chose, sinon je peux aussi changer "tour" en "dw"
    mais cette partie fonctionne.

    J'ai testé mon petit programe à nouveau sans le changer et il marche comme il faut maintenant... raison du bug, peut-etre un programme qui etait en cours et qui interférait je ne sais pas...

    De plus, la fonction temporisation fonctionne parfaitement mais n'est pas utile
    car c'est une temporisation des années 80 et donc on ne voit pas le passage ^^

    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [TP]Problème de modes graphiques sous Windows XP
    Par Gabi dans le forum Turbo Pascal
    Réponses: 11
    Dernier message: 04/04/2004, 17h25
  2. [TP][Mode Graphique]SetActivePage
    Par Giovanny Temgoua dans le forum Turbo Pascal
    Réponses: 7
    Dernier message: 17/01/2004, 18h39
  3. Réponses: 7
    Dernier message: 17/01/2004, 17h13
  4. Clignotement d'un caractère en mode graphique
    Par julson dans le forum x86 16-bits
    Réponses: 6
    Dernier message: 08/12/2003, 14h59
  5. [TP]Pb Mode Graphique
    Par John_win dans le forum Turbo Pascal
    Réponses: 5
    Dernier message: 29/11/2003, 22h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo