Форум программистов, компьютерный форум CyberForum.ru

Битовые оперции - C++

Восстановить пароль Регистрация
 
Tramtararam
1 / 1 / 0
Регистрация: 26.11.2010
Сообщений: 21
26.11.2010, 14:19     Битовые оперции #1
Есть код:

#include "stdafx.h"
#include <conio.h>
#include <iostream>
#include <bitset>
#include <fstream>
using namespace std;

int main()
{
_wsetlocale( LC_ALL, L"Russian_Russia.ACP" );

char buffer[512];
char f0[156];
register int i;

ifstream in ("test.txt", ios::in | ios::binary);
if(!in) {
cout << "Не удаётся открыть файл.\n";
return 1;
}


ofstream out ("test2.txt", ios::out | ios::binary);
if(!out) {
cout << "Не удатся открыть файл.\n";
return 1;
}

do {
in.read(buffer, sizeof(buffer));

for(i=0; i<3; i++)
{
memcpy(f0, buffer + 8 + 12*(i+1) + 156*i, 156);
out.write(f0, 156);
}
} while(!in.eof());

in.close();
out.close();

return 0;
}

В проге происходит разбиение файла на три части по 156 БАЙТ.

Необходимо эти три части разбить на 8 частей, с учетом того, что каждый из них по 19.5 байт. Необходимо производить побитовый сдвиг на пол БАЙТА (4 БИТА). И записывать каждый в отдельный файл.

Схематично это выглядет так...
Миниатюры
Битовые оперции  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2010, 14:19     Битовые оперции
Посмотрите здесь:

Битовые операции, битовые поля. C++
Битовые операции C++
Битовые поля C++
C++ Битовые поля
Битовые операции C++
Битовые операции C++
C++ Битовые поля
Битовые операции C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 04:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru