Question sur la lecture de bit

Fermé
Gunn - 29 janv. 2005 à 18:02
 Gunn - 30 janv. 2005 à 13:05
Bonjour à tous,

J'ai une petite question :p Je suis entrain de faire un petit programme en QBasic pour aller lire des données contenu dans une carte d'acquisition (conversion analogique/digital). Je m'aide de la documentation constructeur, mais ya un truc que je comprend pas. Ca concerne la conversion des données en elle même en fait.

Je voudrais savoir quelle est la différence entre les appelations: low 8 bit data et hight 4 bit data. On me définit en fait les ports que je dois utiliser: port+1 = read A/D low 8 bit data
port+2 = read A/D high 4 bit data

Voilà j'arrive pas à cerner la différence. Si quelqu'un pouvait m'éclaircir, ça m'aiderait bien =) Merci à vous
A voir également:

3 réponses

GallyNet Messages postés 434 Date d'inscription mardi 1 juin 2004 Statut Membre Dernière intervention 15 décembre 2008 387
29 janv. 2005 à 18:34
Comme tu doit le savoir, un octet et définie par 8 bits donc chacun possede ce que l'on peut appeller un poids (une valeur):

de gauche à droite
le premier vaut 128
le second vaut 64
le troisieme vaut 32
le quetrieme vaut 16
le cinquieme vaut 8
le sixieme vaut 4
le septieme vaut 2
le huitieme vaut 1

quand on parle du bit de poid fort, on veut parler du bit dont la valeur et la plus important, ici c'est donc le premier. De même pour le bit de poid faible sera le dernier.

Avec ton probleme il faut dire que "low 8 bit data" correspond à 8 bit de poid faible et "hight 4 bit" correspond à 4 bit de poid fort.
0
Utilisateur anonyme
29 janv. 2005 à 19:58
Bonjour,

Il est aussi à penser que tes données sont répartis sur 12 bits.
Sans entrer dans les détails, cela me surprendrais qu'aujourd'hui
les convertisseurs analogiques digitals soient encore sur 8 bits,
il y a 20 ans, j'ai du construire un convertisseur 12 bits avec ampli-op et
tout le tralala car les convertisseurs moyens du marché étaient
de huits bits.

Ceci dit, si tu as une partie low et une partie high, tu dois regrouper
les deux parties pour obtenir ton résultat. Pour ce faire :

Partie LOW (8 bits = un octet) - > XX
Partie HIGH (4 bits = 1/2 octet) -> 0Y

Ton résultat est donc : 0YXX

La partie LOW est à droite et la partie HIGH à gauche.

Lupin
0
Merci pour vos réponses j'ai compris, ça m'a bien aidé =)
0