Естессно от компилера зависит, но signed long тоже может легко оказаться например 40-битным, а то и 64-битным. Тут бардак полный. Тем более речь была об обработке принятых байтов "компьютером", мало вероятно что у автора компьютер на 16-битной платформе.