а вы значения с отрицательно на биты раскидывали? нет там случайно по документации передачи ошибок старшими битами?