![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
olegrolik |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 309 Регистрация: 25.1.2006 Репутация: нет Всего: нет |
Задание: Суммировать в каждых четырёх байтах файла (кроме первых четырёх и последних четырёх) с 15 по 29 биты. Полученную сумму записать в последние 4 байта.
Вот проблема в том, что не знаю как записать эти 4 байта в последние 4... Буду рад, если кто поможет... Вобщем программа такая: #include "include.h" void main() { const int MASK=0xC0003FFF; int fd; unsigned long slovo,sum=0,CHKS; fd=open("s.txt",O_RDONLY); read(fd,&slovo,sizeof(slovo)); /* Чтение файла с учетом первого слова */ while(read(fd,&slovo,sizeof(slovo))>0) { /* Очистка битов:31,30,14-0) */ slovo &= ~MASK; /* Суммирование */ sum+= slovo; CHKS=slovo; /* Последнее слово */ printf("%X\n",slovo); } close(fd); sum-=CHKS; printf("\nСумма без первого и последнего слова:%08X\n",sum &= ~MASK); // Маскируем, чтобы избавиться от лишних битов, если они накопились } |
|||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 8 Всего: 146 |
1. Имхо это не соответсвует этому
2.
-------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
olegrolik |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 309 Регистрация: 25.1.2006 Репутация: нет Всего: нет |
Спасибо! Сегодня также написал, только в lseek(fd,4,SEEK_END); кажется вместо 4 писал -4L или типа того.
Насчёт несоответствия. Как не соотвествует? Эта маска нужна чтобы обнулить с 31,30 и с 14 по 0 биты. Ну вобщем свои заморочки, запись произошла, спасибо! |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |