реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Вычисление контрольной суммы, Си. Сложение нескольких байт.
Alexeus
сообщение Mar 13 2009, 13:28
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 14-01-09
Пользователь №: 43 345



как сделать функцию суммирующую 6 байт в переменную, что бы потом сравнить значение переменной с "0" (в переменной в результате должно быть однобайтовое значение)
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Mar 13 2009, 13:33
Сообщение #2


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(Alexeus @ Mar 13 2009, 17:28) *
что бы потом сравнить значение переменной с "0" (в переменной в результате должно быть однобайтовое значение)

В вопросе содержатся грабли. Вам в качестве контрольной суммы или для чего то другого?
Go to the top of the page
 
+Quote Post
Alexeus
сообщение Mar 13 2009, 13:51
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 14-01-09
Пользователь №: 43 345



для другого... просто сначала заношу циклом в массив BYTE[6], затем мне нужно просуммировать байты этого массива, должно получиться "0", тогда я выполняю программу дальше...

(однобайтовая переменная должна быть или как то переносы учитывать)
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Mar 13 2009, 14:06
Сообщение #4


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(Alexeus @ Mar 13 2009, 17:51) *
(однобайтовая переменная должна быть или как то переносы учитывать)

Однобайтовая

Код
#define BUFLEN 6

char cnt,sum;

for(cnt=sum=0;cnt<BUFLEN;cnt++) sum += BYTE[cnt];

if(sum) тра-та-та




Цитата(Alexeus @ Mar 13 2009, 17:51) *
сначала заношу циклом в массив BYTE[6], затем мне нужно просуммировать байты

Еще кое-что: тогда уж лучше сразу в одном цикле это делать.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 11th July 2025 - 07:35
Рейтинг@Mail.ru


Страница сгенерированна за 0.0138 секунд с 7
ELECTRONIX ©2004-2016