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 :

[8086] Flags d'état PF/AF


Sujet :

Assembleur

  1. #1
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 59
    Points : 47
    Points
    47
    Par défaut [8086] Flags d'état PF/AF
    Bonsoir tout le monde

    1)Pourquoi le bit d'état PF (Parity flag) ne concerne que les 8 bits de poids faible du résultat de l'opération?? Et quel est le BUT d'indiquer si le nombre de bits à 1 est pair ou impair??

    2)Pourquoi le bit d'état auxiliaire AF ne concerne la transition du 1 que entre les bits B3 et B4 précisément??

    Je ne sais pas si c'est le bon forum pour poser ce genre de question , donc si je me trompe d'endroit, veuillez m'excuser

  2. #2
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 963
    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 963
    Points : 59 654
    Points
    59 654
    Billets dans le blog
    2
    Par défaut
    Bonjour !

    Le flag PF ne concerne en effet que l'octet de poids faible du résultat. J'ignore pourquoi et je n'ai personnellement jamais utilisé ce flag.

    Le flag AF s'appelle exactement Auxiliary Carry Flag et a exactement le même rôle que le flag CF, sauf qu'au sein d'un octet, il indique un report du groupe de 4 bits de poids inférieur vers le groupe de 4 bits de poids supérieur.
    Habituellement, ce flag n'est utilisé que pour les opérations en BCD (Binary-Coded Decimal).

  3. #3
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 59
    Points : 47
    Points
    47
    Par défaut
    Merci Alcatiz pour ta réponse , mais vraiment ça m'aide pas trop , pour le falg AF , ce qui me tracasse le plus est:
    pourquoi on s'interesse a la transition du 1 entre le B3 et le B4 précisément, pourquoi pas - par exemple- , on indique pas s'il ya transition du 1 entre le B1 et le B2 ou bien le B4 et B5?? parce que là je ne vois pas ou est l'interet de choisir exactement ces 2bits là et pas n'importe quels deux autres bits

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    633
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 633
    Points : 711
    Points
    711
    Par défaut
    Bonjour,
    Citation Envoyé par lylia SI
    Merci Alcatiz pour ta réponse , mais vraiment ça m'aide pas trop , pour le falg AF , ce qui me tracasse le plus est:
    pourquoi on s'interesse a la transition du 1 entre le B3 et le B4 précisément, pourquoi pas - par exemple- , on indique pas s'il ya transition du 1 entre le B1 et le B2 ou bien le B4 et B5?? parce que là je ne vois pas ou est l'interet de choisir exactement ces 2bits là et pas n'importe quels deux autres bits
    Eh bien, regarde en quoi consiste le BCD, et tu comprendras

  5. #5
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 59
    Points : 47
    Points
    47
    Par défaut
    Ok, thewho c'est réglé pour le BCD, mais dis moi , tu as une idée concernant ma premiere question concernant le PF? parceque là, je ne trouve pas encore la réponse
    G'éspere que quelqu'un pourra m'aider
    Merci

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    633
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 633
    Points : 711
    Points
    711
    Par défaut
    Bonjour,

    Je ne sais pas pourquoi le PF ne concerne que les 8 bits de poids faible.

    Ma supposition est qu'on l'utilisait souvent pour vérifier la parité des données à transmettre, soit en RS232, soit en parallèle, soit dans la mémoire, et qu'il fallait un moyen simple et rapide d'obtenir la parité d'un groupe de bits.
    Sur certains ordis que j'ai connus dans le temps, la mémoire pour chaque octet contenait en fait 9 bits, car il y en avait 1 réservé à la parité du contenu.

    L'utilité du PF, surtout lors d'une transmission (on y revient), est plus simple à comprendre : c'est une vérification de la validité de la transmission, car on transmet les données, ET le bit de parité. Si à l'arrivée ça ne correspond pas, il y a eu au moins une erreur (cette vérification ne va pas loin côté sécurité, mais c'est mieux que rien).

  7. #7
    Futur Membre du Club
    Inscrit en
    Janvier 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 5
    Points : 5
    Points
    5
    Par défaut Ca sent la section A...
    Salut salut... toi ca se voit que tu es chez Ayache !!!
    Me trompe-je ?

  8. #8
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 59
    Points : 47
    Points
    47
    Par défaut
    Non ,ce n'est pas la section A ici
    Et puis , dis moi, t'as pas dréponses à mes blemes toi ???

  9. #9
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 17
    Points : 12
    Points
    12
    Par défaut Salut section A ou B
    c'est la section C qui a la dréponse de toute façon on est tous chez Mr Ayache . ça ne concerne que les 8 bits de poids faibles parceque le code ASCII d'1 caractere est sur 8 bits

  10. #10
    Futur Membre du Club
    Inscrit en
    Janvier 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 5
    Points : 5
    Points
    5
    Par défaut Oui mais...
    Salut, autre Ayachiste,
    C bien de savoir que ASCII est sur 8bits (7en fait...), mais ou est le rapport avec la parité des bits 1 ??? c justement ce qu'on veut savoir..
    Et en ce qui concerne AF ??? est ce juste pour savoir si le chiffre des dizaines a été incrémenté en BCD ???
    Hya

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    633
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 633
    Points : 711
    Points
    711
    Par défaut
    Bonjour,
    Citation Envoyé par goozga
    Salut, autre Ayachiste,
    C bien de savoir que ASCII est sur 8bits (7en fait...), mais ou est le rapport avec la parité des bits 1 ??? c justement ce qu'on veut savoir.
    Ça sert de vérification : code d'erreur "élémentaire".

    Élémentaire, car ne marchant que pour un nombre impair d'erreurs, et ne permettatn pas de corriger l(es) erreur(s).

    Citation Envoyé par goozga
    Et en ce qui concerne AF ??? est ce juste pour savoir si le chiffre des dizaines a été incrémenté en BCD ???
    Gagné !

    En fait, on s'en sert très rarement, c'est surtout nécessaire au processeur pour corriger les résultats des calculs en BCD.

    Suis le détail des opérations quand on fait ce type de calcul, et tu verras qu'il est nécessaire.

  12. #12
    Futur Membre du Club
    Inscrit en
    Janvier 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 5
    Points : 5
    Points
    5
    Par défaut Merci thewho
    Merci pour ta reponse thewho, mais est ce que tu pourrais nous donner plus de précision en ce qui concerne la correction faite par le processeur en BCD ?
    (comment se fait exactement la correction)
    Amicalement

  13. #13
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 59
    Points : 47
    Points
    47
    Par défaut
    Vous trouverez sur ce lien une explication bien dtaillée concernant le PF
    http://fr.wikipedia.org/wiki/Bit_de_parit%C3%A9

  14. #14
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Points : 696
    Points
    696
    Par défaut
    J'ai déjà utilisé le PF dans le but d'optimiser certains traitements. En particulier, tester l'égalité de deux bits. (après masquage) C'est très rare, mais ça peut servir.

Discussions similaires

  1. bits d'état 8086
    Par miouutouji dans le forum x86 16-bits
    Réponses: 1
    Dernier message: 23/11/2013, 00h38
  2. flag de couleur pour l'état d'une connexion
    Par steph_1 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 11/10/2013, 16h05
  3. [CR][VB6] Impression d'un état depuis VB
    Par sda dans le forum SDK
    Réponses: 3
    Dernier message: 06/02/2007, 17h27
  4. [CR][VB] comment générer un état ?
    Par ndi dans le forum SDK
    Réponses: 3
    Dernier message: 22/08/2002, 13h13
  5. Réponses: 5
    Dernier message: 08/07/2002, 16h22

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