Я получаю это data = [0, 4, -109, -31]
от Modbus, и я знаю это data = 300001
, но я не знаю, как правильно преобразовать его, чтобы добраться до этого 300001
. Я перепробовал много методов, найденных онлайн, но у меня не получилось. Спасибо за любую помощь
Редактировать: Как я понимаю, 0
необходимо сместить на 24
, 4
сместить на 16
, -109 (256-109 = 147)
, так что это будет 147
и нужно сдвинуться на 8
, а последний -31 (256-31 = 225)
мы примем как есть. Итак, быстрое резюме data = [0, 4, 147, 225]
и 0 * 2^24 + 4 * 2^16 + 147 * 2^8 + 225 = 300001
Теперь это необходимо кодифицировать. Есть ли правильные способы сделать это в js?