ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
18 июля
12167 Топик полностью
SM (28.07.2004 09:56, просмотров: 1) ответил Bill на Так я и говорю, что знак УЖЕ есть в старшем принятом байте. Речь идет только о том, чтобы
Не в слово (16-битное), а в 32-битное слово. В Вашем случае (int)high_byte<<8 разряды 31..16 будут равны НУЛЮ и результат будет некорректен. В случае ((int)(signed char)high_byte)<<8 разряды 31..16 повторят знак принятого байта и результат будет правилен. Попробуйте просто скомпилить и то и это при условии что high_byte это unsigned char, как было в условии.