Question

Quelle est la bonne façon de gérer deux valeurs distinctes stockées dans un octet de données. J'ai un octet qui contient deux amuse-gueules contenant chacun leurs propres données. Je veux lire le grignotage supérieur et le gribouillage inférieur dans leurs propres variables.

11110000 = 4 bits élevés de gaz, à lire dans $throttle, et devrait être une valeur de 0 à 15.00001111 = Frein bas de 4 bits, à lire dans $brake, et devrait être une valeur de 0 à 15.

N'oubliez pas, les conducteurs peuvent appliquer l'accélérateur et le frein en même temps, vous pouvez donc obtenir une valeur comme 11000111. J'ai moi-même trouvé une solution pour les 4 bits élevés, et c'est aussi simple que de pousser les 4 bits inférieurs à l'écart avec le >> (Bit Shift Right) Opérateur 4 fois. $Throttle = $ThrBrk >> 4, mais comme je ne peux pas le faire en un coup pour les quatre bits inférieurs, il a l'air un peu mauvais dans mon code source.

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top