Сборка нескольких отдельных байт в число
Добавлено: 08 дек 2010, 21:44
Здравствуйте, уважаемые. У меня есть задача, необходимо собрать из нескольких байт хранящихся в массиве данных, число.
Конкретнее у меня есть массив с 3 элементами, каждый байт в этом массиве имеет 7 значимых бит(8 незначимый). Мне необходимо из этих 3х байт собрать число.
Как я делаю.
c Код:
Хочу узнать правильно ли я делаю?
Конкретнее у меня есть массив с 3 элементами, каждый байт в этом массиве имеет 7 значимых бит(8 незначимый). Мне необходимо из этих 3х байт собрать число.
Как я делаю.
c Код:
Код: Выделить всё
long chislo;
int n;
int data_f=[1,2,3];
int main (void)
{
chislo=data_f[1]; // считываю первый байт массива в число
cchislo<<=8; // сдвигаю на 8 бит влево, освобождаю под следующую цифру
chnl0|=data_f[2]; // записываю след цифру массива в число
chnl0<<=8; // опять сдвигаю
chnl0|=data_f[3]; // опять записываю
printf("%d chislo",chislo);
}