Мне нужно создать программу, которая рассчитывает CRC из файла.Это должно быть сделано постепенно.
Способ, которым я хотел бы прочитать файл:
unsigned char byte;
ifstream file;
bool result;
int number;
file.open("test.txt", ios::binary);
while(true)
{
byte = file.get();
number = (int)byte;
result = file.good();
if(!result)
break;
}
Однако я не знаю, как читать его по крупицам.
Мой делитель CRC (называемый «полином») равен 0x04C11DB7, и мне нужно импортировать 1 новый бит из файла каждый раз, когда я вычисляю свой буфер.
Моя идея состоит в том, чтобы добавить первые 4 байта в переменную (скажем, «1234» это будет 0x31323334), затем удалить последний бит (перемещая бит 1 влево), но я незнать, как добавить новый бит из следующего символа.