Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.09.12;
Скачать: CL | DM;

Вниз

CRC по модулю 256   Найти похожие ветки 

 
avgshron ©   (2010-06-10 14:48) [0]

Добрый день!

Имеется буфер из N байт. Требуется посчитать контрольную сумму по модулю 256. Помогите с алгоритмом, пожалуйста!


 
MBo ©   (2010-06-10 14:57) [1]

http://ru.wikipedia.org/wiki/%D0%A6%D0%B8%D0%BA%D0%BB%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%B8%D0%B7%D0%B1%D1%8B%D1%82%D0%BE%D1%87%D0%BD%D1%8B%D0%B9_%D0%BA%D0%BE%D0%B4

смотреть реализации CRC8


 
Омлет ©   (2010-06-10 14:57) [2]

function CalcChkSum(Data: pointer; Size: longint): byte;
var
  i : integer;
  p : ^byte;
begin
  p := Data;
  Result := 0;
  for i := 1 to Size do
  begin
    inc(Result, p^);
    inc(p);
  end;
end;


 
avgshron ©   (2010-06-10 15:42) [3]


> смотреть реализации CRC8


Вы хотите сказать, что она аналогична crc-256? Был ли тогда смысл изобретать еще и его?


 
RWolf ©   (2010-06-10 15:51) [4]

контрольная сумма по модулю 256 — это именно то, что написал Омлет ©   (10.06.10 14:57) [2].


 
MBo ©   (2010-06-10 16:36) [5]

>avgshron
Стоит уточнить, что именно требуется, а то в ветке уже три понятия рассматривается.
в [3] уже всплывает crc-256 - это не по модулю 256, а CRC с использованием 256-битного полинома.


 
DVM ©   (2010-06-11 23:31) [6]


> Омлет ©   (10.06.10 14:57) [2]

CRC и Checksum - разные вещи.


 
DVM ©   (2010-06-11 23:35) [7]

кроме того, вариантов CRC8 как и CRC16 и прочих - как собак разных. Например, CRC8-SMBUS, CRC8-DALLAS-MAXIM и т.д. разные полиномы, инвертирование входных данных, и т.д.

Для CRC256 тоже не один возможный вариант.


 
DVM ©   (2010-06-11 23:39) [8]


> avgshron ©  

вот тут лежит мой модуль для вычисления разных вариантов CRC, правда CRC256 там нет (я не вижу в нем вообще необходимости, т.к. CRC64 за глаза хватает). http://dvmuratov.narod.ru/Crc.pas
По аналогии можно сделать и для 265.


 
Германн ©   (2010-06-12 01:35) [9]


> DVM ©   (11.06.10 23:31) [6]
>
>

Скорее всего имеется в виду именно Checksum. Это довольно часто используемый алгоритм.



Страницы: 1 вся ветка

Текущий архив: 2010.09.12;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.01 c
4-1239432348
ZZtop24
2009-04-11 10:45
2010.09.12
Как обойти виндовский микшер


6-1226147951
Рем
2008-11-08 15:39
2010.09.12
Шлюз (покси) для разных рабочих групп ?


2-1277059445
Delphist2
2010-06-20 22:44
2010.09.12
savedialog


15-1276843261
И. Павел
2010-06-18 10:41
2010.09.12
WM_LBUTTONDOWN обрабатывается не сразу


6-1214928416
kernel
2008-07-01 20:06
2010.09.12
IdHTTPProxyServer и размер ресурса