Hello,
Je ne sais pas si c'est cela que vous ne comprenez pas mais au cas où...
Regardez la doc° de FSUIPC par ex.
0D0C 2 Lights, a switch for each one (bits from lo to hi):
0 Navigation
1 Beacon
2 Landing
3 Taxi
4 Strobes
5 Instruments
6 Recognition
7 Wing
8 Logo
9 Cabin
Cet offset 0d0c est codé sur un mot de 16 bits = 2 octets.
Chaque bit a un sens :
0 Light de nav
1 Light de Beacon, etc.
Important, ceci : cela veut dire que la liste est donnée des bits de poids faible (loW) vers les bits de poids fort (hiGH) donc de ceux qui ont moins de valeur à ceux qui ont plus de valeur.
En bin'aire, on écrit comme en décimal => vous imaginez bien que 10000 à une plus grande valeur que 100 => cela veut dire qu'il faut lire ces valeurs de droite à gauche ; on y va :
Cabin Logo Wing Recognition Instruments Strobes Taxi Landing Beacon Navigation
J'ai 10 valeurs (ou grandeurs), qui sont autant dindicateurs : chacune quand il vaut 0 est faux(éteint) et 1 est vrai(allumé).
16 bits, il me manque 6 valeurs pour former ma valeur doffset.
Donc :
rien rien rien rien rien rien Cabin Logo Wing Recognition Instruments Strobes Taxi Landing Beacon Navigation
Avec lénumération des puissances de deux propres au bin'aire :
rien rien rien rien rien rien Cabin Logo Wing Recognition Instruments Strobes Taxi Landing Beacon Navigation
2^15 2^14 2^13 2^12 2^11 2^10 2^9 2^8 2^7 2^6 2^5 2^4 2^3 2^2 2^1 2^0
Exemple : vous lisez à l'offset 0d0c la valeur 18 => 16 + 2
rien rien rien rien rien rien Cabin Logo Wing Recognition Instruments Strobes Taxi Landing Beacon Navigation
0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0
Vous en déduisez que les lights Strobes et Beacon sont allumées seulement.
Cela diffère des offsets où vous n'avez qu'une valeur mais le principe est le même.
Il faut "juste" découper les mots pour connaître l'ensemble des valeurs.
Ou totaliser les valeurs unitaires pour construire la valeur du mot.
J'espère que c'est plus clair...