Тема: Математические операции для обработки данных с терминала
Всем добрый день.
При работе с терминалом возникла такая задача, как всегда не успеваем делаем все как можно быстрее в надежде, что сервер сможет обработать данные.
Так вот в чем задача:
Терминал присылает восьми битные теги, сервер эти значения показывает в десятеричной системе счисления.
Для тех кто не понимает как это пример -
255 это 11 11 11 11
128 это 10 00 00 00
1 это 00 00 00 01
Бывает приходят и 16 и 32 битные числа.
Вопрос есть на сервере функции сдвига байтов?
<< and >>?
Или функция, чтобы я мог из 8,16,32 байт выбирать один или группу.
Пример для понимания, в тег CANR_0 приходит 8 битное число, и у меня каждый байт это отдельное событие, например для BMW X6
10 00 00 00 - 128 - ### -
01 00 00 00 - 64 - ### -
00 10 00 00 - 32 - Открыта дверь водителя
00 01 00 00 - 16 - Открыта дверь пассажира
00 00 10 00 - 8 -Открыта задняя левая дверь
00 00 01 00 - 4 -Открыта задняя правая дверь
00 00 00 10 - 2 - Открыт капот
00 00 00 01 -1 - Открыт багажник
00 00 00 00 - 0 - Все закрыто
Как мне выделять бит, а не весь байт в виалоне?
urbannova(собака)yandex.ru
YOUTUBE канал, где много всего полезного https://www.youtube.com/channel/UCTYLLm … CKb2GYq0eA
Teltonika. GalileoSky, ADM, Mielta, GPSMatker, Starline, и другие которые вообще могут хоть как то работать