Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > Как определить чему равен последний бит ?


Автор: Korman 2.10.2006, 16:05
 Я читаю с ком порта данные и считываю их по одному байту - пока все не считаю. 
     ВОПРОС: как мне определить чему равен последний бит  байта... ?
        Т.е. он мне даёт ответ примерно такой   41  1F  B6   в шестнадцатиричной форме .. причём в этом сообщении три байта. Вот мне нужно определить последний бит.  
       Подскажите КАК это делать... только пожалуйста подробней...           

           


Автор: Earnest 2.10.2006, 16:12
А последний байт сам определишь? smile 
Если последний бит - самый младший, то  lastByte & 0х1, а если старший - то lastByte & 0x80...

Автор: Romikgy 2.10.2006, 16:13
какого 
Цитата(Korman @  2.10.2006,  15:05 Найти цитируемый пост)
последний бит  байта

?

Цитата(Korman @  2.10.2006,  15:05 Найти цитируемый пост)
B6

или 
Цитата(Korman @  2.10.2006,  15:05 Найти цитируемый пост)
41

или ты хошь представить это как лонг?
и последний с какой стороны? если справа то 
B6 & 1
если слева 
B6 & 0x80

Автор: Korman 3.10.2006, 10:20
Последний бит справа...   кстати а как определить последний байт , если на разные команды шлёт разное колличество байт в ответ....?

Автор: Romikgy 3.10.2006, 13:28
зависит от железяки , она может слать и старший байт вперед и младший байт вперед , это не стандартизировано smile

Автор: Annuta 3.10.2006, 16:39
Извините народ... подобный вопрос... а если мне необходимо проверить не последний бит... а каждый бит каждого байта слева на право... каким макаром это делать..???? 
   Если бит=1...одно если 0=...другое..

Автор: Romikgy 3.10.2006, 16:49
Annuta, правила форума прочитай! 1 вопрос - 1 тема!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)