知识大全 CRC算法的实现

Posted

篇首语:夏天就不会生长,春天不播种。秋天就不能收割,冬天就不能品尝。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 CRC算法的实现相关的知识,希望对你有一定的参考价值。

教你一招:CRC算法的实现  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

uses  Windows SysUtils Classes;    const //Crc 表  Table:Array[ ] of DWORD=  ( $  $ $EE E C $ BA   $ DC $ AF F $E A $ E A   $ EDB $ DCB A $E D E E $ D D   $ B C B $ EB CBD $E B D $ BF D   $ DB $ AB F $F B $ BE DE   $ ADAD D $ DDDE EB $F D B $ D C   $ C $ BA C $FD F A $ A C EC   $ C F $ CD $FA F D $ D DF   $ B E C $ C E $D E $A   $ C E D $ B D $D D FD $A AB B   $ B A FA $ B C $DBBBC D $ACBCF   $ D CE $ DF C $DCD DCF $ABD D   $ D AC $ DE A $C D $BFD   $ B F B $ B C $CFBA $B BDA F   $ B E $ F $C CD B $B BE   $ F F C $ C $C DAB $B D D   $ DC $ DB $ D BC $EFD A   $ B $ B B F $ FBFE A $E B D   $ C A $ F F $ A E $E E   $ F A DBB $ D D D $ C $E C   $ B B F $ C C $ D $F E   $ C ED $ B A B $ F C $F FC   $ B D C $ B E $ BBEB EA $FCB C   $ DD DDF $ DA D $ CD CF $FBD C   $ DB $ AB CE $A BC $D BB E   $ ADFA $ DD D $A D C D $D D F FB   $ E A $ ED FC $AD $DA B D   $ D $ DE $AA A C F $DD D CC   $ C $ AA $BE B $C C   $ B $ F B $B D $CE E F   $ EDEF E $ D C $B D $C D A B   $ B D $ EB D $B BD C B $C BA CAD   $EDB $ ABFB B $ B E C $ B D A   $EAD $ DD AF $ DB $ DC   $E B $ B $ D D A E $ A A AA   $E ECF B $ FF D $ A AE $ D EB   $F F $ A D $ E F $ C FE   $F D $ CB $ C $ E B E   $FED B $ D BE $ DA A A $ DD ACC   $F B DF F $ EBEEFF $ B BE $ B ED   $D D A E $A D E $ D C C $ FDFF   $D BB F $A BC $ FB DD $ B B   $D D BDA $AF A B C $ AF $ A   $DF EFC $A DF $ E EEF $ BE   $CB B C $BC A $ FD A $ E   $CC C $BB B $ B $ F   $C BA BBE $B BD B $ BB A $ CB A   $C D FFA $B D CF $ CD E B $ BDEAE D   $ B C B $EC F $ AA C $ D A   $ C A $EB E F $ $   $ BF A $E B A $ BB BAE $ CB B   $ D E B $E D BE D $ CDCEFB $ BDBDF   $ D D D $F D E $ DDB F $ FDA E   $ BE CD $F B B $ FB E $ B   $ AE $FF F A $ BCA $ B C   $ F EFF $F AE $ BFFD $ CCF   $A AE $D DD EE $ E $ B C   $A $D F $ D $ E E DB   $AED A A $D D ADC $ DF B $ D BF   $A BCAE $DEBB EC $ B CF F $ B FFE   $BDBDF C $CABAC A $ B $ B A A   $BAD $CDD $ DE $ D BF   $B A E $C AB $ D B $ A F B   $B BBE $C C EA $ A DF B $ D EF D);    procedure GetCRC File(FileName:string;var CRC :DWORD);  function GetCrc Str(s: string; Seed: LongInt):string;    implementation    procedure GetCRC File(FileName:string;var CRC :DWORD);  var  F:file;  BytesRead:DWORD;  Buffer:array[ ] of Byte;  i:Word;  begin  FileMode := ;  CRC :=$ffffffff;  $I   AssignFile(F FileName);  Reset(F );  if IoResult = then  begin  repeat  BlockRead(F Buffer Sizeof(Buffer) BytesRead);  for i := to BytesRead do  CRC := (CRC shr ) xor Table[Buffer[i] xor (CRC and $ ff)];  until BytesRead = ;  end;  CloseFile(F);  $I+  CRC := not CRC ;  end;    function GetCrc Str(s: string; Seed: LongInt):string;  var  Count: Integer;  CrcVal: LongInt;  begin  CrcVal := Seed;  for Count := to Length(s) do  CrcVal := Table[Byte(CrcVal xor DWORD(Ord(s[Count])))] xor ((CrcVal shr ) and $ FFFFFF);  Result := IntToHex(not(CrcVal) );  end;      end       调用   uses Crc ;    procedure TForm Button Click(Sender: TObject);  begin  Edit Text:=GetCrc Str( );//这里取指定字符串的CRC 校验值;  end;    procedure TForm Button Click(Sender: TObject);  var  FileStr:String;  crc: DWORD;  begin  FileStr:=Application ExeName;//这里取指定的文件的crc 校验值;  GetCRC File(FileStr crc);  if crc<> then  Edit Text:=PChar(IntToHex(crc ));  end; cha138/Article/program/Delphi/201311/24674

相关参考

知识大全 算法及算法设计要求

第三课本课主题算法及算法设计要求教学目的掌握算法的定义及特性算法设计的要求教学重点算法的特性算法设计要求教学难点算法设计的要求授课内容一算法的定义及特性定义ispass(intnum[][])inti

知识大全 数据结构之算法和算法分析[1]

  算法与数据结构的关系紧密在算法设计时先要确定相应的数据结构而在讨论某一种数据结构时也必然会涉及相应的算法下面就从算法特性算法描述算法性能分析与度量等三个方面对算法进行介绍  算法特性  算法(Al

知识大全 算法分析

算法分析.评价算法好坏的标准  求解同一计算问题可能有许多不同的算法究竟如何来评价这些算法的好坏以便从中选出较好的算法呢?  选用的算法首先应该是正确的此外主要考虑如下三点①执行算法所耗费的时间②执行

知识大全 数据结构之算法和算法分析[2]

  算法与数据结构是相辅相承的解决某一特定类型问题的算法可以选定不同的数据结构而且选择恰当与否直接影响算法的效率反之一种数据结构的优劣由各种算法的执行来体现  要设计一个好的算法通常要考虑以下的要求 

知识大全 数据结构之算法和算法分析[4]

  一个算法是由控制结构和原操作构成的其执行时间取决于两者的综合效果为了便于比较同一问题的不同的算法通常的做法是从算法中选取一种对于所研究的问题来说是基本运算的原操作以该原操作重复执行的次数作为算法的

知识大全 概论- 算法的描述和分析(二)

  算法分析  评价算法好坏的标准  求解同一计算问题可能有许多不同的算法究竟如何来评价这些算法的好坏以便从中选出较好的算法呢?  选用的算法首先应该是正确的此外主要考虑如下三点  ①执行算法所耗费的

知识大全 算法的描述

算法的描述  数据的运算通过算法(Algorithm)描述讨论算法是数据结构课程的重要内容之一.算法  非形式地说算法是任意一个良定义的计算过程它以一个或多个值作为输入并产生一个或多个值作为输出()一

知识大全 排序算法的各趟排序算法

  以关键字序列()为例分别写出执行以下排序算法的各趟排序结束时关键字序列的状态  ()直接插入排序()希尔排序()冒泡排序()快速排序  ()直接选择排序()堆排序()归并排序()基数排序  上述方

知识大全 排序算法的各趟排序算法

  以关键字序列()为例分别写出执行以下排序算法的各趟排序结束时关键字序列的状态  ()直接插入排序()希尔排序()冒泡排序()快速排序  ()直接选择排序()堆排序()归并排序()基数排序  上述方

知识大全 数据结构之算法和算法分析[5]

  ⒉空间复杂度  一个程序的空间复杂度(Spaceplexity)是指程序运行从开始到结束所需的存储量  程序的一次运行是针对所求解的问题的某一特定实例而言的例如求解排序问题的排序算法的每次执行是对