1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2<html> 3<head> 4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 5<title>Pre-Defined CRC Samples</title> 6<link rel="stylesheet" href="../../../doc/src/boostbook.css" type="text/css"> 7<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 8<link rel="home" href="../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset"> 9<link rel="up" href="../crc.html" title="Chapter 12. Boost.CRC 1.5"> 10<link rel="prev" href="acrc_function.html" title="Augmented-CRC Function"> 11<link rel="next" href="end.html" title="End Matter"> 12</head> 13<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 14<table cellpadding="2" width="100%"><tr> 15<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../boost.png"></td> 16<td align="center"><a href="../../../index.html">Home</a></td> 17<td align="center"><a href="../../../libs/libraries.htm">Libraries</a></td> 18<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td> 19<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td> 20<td align="center"><a href="../../../more/index.htm">More</a></td> 21</tr></table> 22<hr> 23<div class="spirit-nav"> 24<a accesskey="p" href="acrc_function.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../crc.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="end.html"><img src="../../../doc/src/images/next.png" alt="Next"></a> 25</div> 26<div class="section"> 27<div class="titlepage"><div><div><h2 class="title" style="clear: both"> 28<a name="crc.crc_samples"></a><a class="link" href="crc_samples.html" title="Pre-Defined CRC Samples">Pre-Defined CRC Samples</a> 29</h2></div></div></div> 30<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span> 31<span class="special">{</span> 32 <span class="keyword">typedef</span> <span class="identifier">crc_optimal</span><span class="special"><</span><span class="number">16</span><span class="special">,</span> <span class="number">0x8005</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="keyword">true</span><span class="special">,</span> <span class="keyword">true</span><span class="special">></span> 33 <span class="identifier">crc_16_type</span><span class="special">;</span> 34 35 <span class="keyword">typedef</span> <span class="identifier">crc_optimal</span><span class="special"><</span><span class="number">16</span><span class="special">,</span> <span class="number">0x1021</span><span class="special">,</span> <span class="number">0xFFFF</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="keyword">false</span><span class="special">,</span> <span class="keyword">false</span><span class="special">></span> 36 <span class="identifier">crc_ccitt_false_t</span><span class="special">,</span> <span class="identifier">crc_ccitt_type</span><span class="special">;</span> 37 <span class="keyword">typedef</span> <span class="identifier">crc_optimal</span><span class="special"><</span><span class="number">16</span><span class="special">,</span> <span class="number">0x1021</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="keyword">true</span><span class="special">,</span> <span class="keyword">true</span><span class="special">></span> <span class="identifier">crc_ccitt_true_t</span><span class="special">;</span> 38 39 <span class="keyword">typedef</span> <span class="identifier">crc_optimal</span><span class="special"><</span><span class="number">16</span><span class="special">,</span> <span class="number">0x8408</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="keyword">true</span><span class="special">,</span> <span class="keyword">true</span><span class="special">></span> <span class="identifier">crc_xmodem_type</span><span class="special">;</span> 40 <span class="keyword">typedef</span> <span class="identifier">crc_optimal</span><span class="special"><</span><span class="number">16</span><span class="special">,</span> <span class="number">0x1021</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="keyword">false</span><span class="special">,</span> <span class="keyword">false</span><span class="special">></span> <span class="identifier">crc_xmodem_t</span><span class="special">;</span> 41 42 <span class="keyword">typedef</span> <span class="identifier">crc_optimal</span><span class="special"><</span><span class="number">32</span><span class="special">,</span> <span class="number">0x04C11DB7</span><span class="special">,</span> <span class="number">0xFFFFFFFF</span><span class="special">,</span> <span class="number">0xFFFFFFFF</span><span class="special">,</span> <span class="keyword">true</span><span class="special">,</span> <span class="keyword">true</span><span class="special">></span> 43 <span class="identifier">crc_32_type</span><span class="special">;</span> 44<span class="special">}</span> 45</pre> 46<p> 47 Several sample CRC types are given, representing common CRC algorithms. The 48 samples have now been checked against the <a href="http://regregex.bbcmicro.net/crc-catalogue.htm" target="_top"><span class="emphasis"><em>Catalogue 49 of parametrised CRC algorithms</em></span></a>, leading to some new type-aliases 50 corresponding to the corrected profiles. (Older, incorrect profiles keep their 51 name for backwards compatibility.) However, this library is primarily concerned 52 with CRC implementation, and not with determining "good" sets of 53 CRC parameters. 54 </p> 55<div class="table"> 56<a name="crc.crc_samples.crc_samples_list"></a><p class="title"><b>Table 12.4. Common CRCs</b></p> 57<div class="table-contents"><table class="table" summary="Common CRCs"> 58<colgroup> 59<col> 60<col> 61</colgroup> 62<thead><tr> 63<th> 64 <p> 65 Computer Type 66 </p> 67 </th> 68<th> 69 <p> 70 Standard(s) 71 </p> 72 </th> 73</tr></thead> 74<tbody> 75<tr> 76<td> 77 <p> 78 <code class="computeroutput"><span class="identifier">crc_16_type</span></code> 79 </p> 80 </td> 81<td> 82 <p> 83 BISYNCH, ARC, LHA, ZOO 84 </p> 85 </td> 86</tr> 87<tr> 88<td> 89 <p> 90 <code class="computeroutput"><span class="identifier">crc_ccitt_false_t</span></code> 91 </p> 92 </td> 93<td> 94 <p> 95 Commonly misidentified as the standard by CCITT 96 </p> 97 </td> 98</tr> 99<tr> 100<td> 101 <p> 102 <code class="computeroutput"><span class="identifier">crc_ccitt_type</span></code> 103 </p> 104 </td> 105<td> 106 <p> 107 <code class="computeroutput"><span class="identifier">crc_ccitt_false_t</span></code> 108 (I made the same mistake.) 109 </p> 110 </td> 111</tr> 112<tr> 113<td> 114 <p> 115 <code class="computeroutput"><span class="identifier">crc_ccitt_true_t</span></code> 116 </p> 117 </td> 118<td> 119 <p> 120 Designated by CCITT (Comité Consultatif International Télégraphique 121 et Téléphonique), KERMIT 122 </p> 123 </td> 124</tr> 125<tr> 126<td> 127 <p> 128 <code class="computeroutput"><span class="identifier">crc_xmodem_type</span></code> 129 </p> 130 </td> 131<td> 132 <p> 133 A mistake I didn't catch in defining <code class="computeroutput"><span class="identifier">crc_xmodem_t</span></code>. 134 </p> 135 </td> 136</tr> 137<tr> 138<td> 139 <p> 140 <code class="computeroutput"><span class="identifier">crc_xmodem_t</span></code> 141 </p> 142 </td> 143<td> 144 <p> 145 XMODEM, ZMODEM, ACORN 146 </p> 147 </td> 148</tr> 149<tr> 150<td> 151 <p> 152 <code class="computeroutput"><span class="identifier">crc_32_type</span></code> 153 </p> 154 </td> 155<td> 156 <p> 157 ADCCP, PKZip, libPNG, AUTODIN II, Ethernet, FDDI 158 </p> 159 </td> 160</tr> 161</tbody> 162</table></div> 163</div> 164<br class="table-break"> 165</div> 166<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> 167<td align="left"></td> 168<td align="right"><div class="copyright-footer">Copyright © 2001, 2003, 2012 Daryle Walker<p> 169 Distributed under the Boost Software License, Version 1.0. (See the accompanying 170 file LICENSE_1_0.txt or a copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) 171 </p> 172</div></td> 173</tr></table> 174<hr> 175<div class="spirit-nav"> 176<a accesskey="p" href="acrc_function.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../crc.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="end.html"><img src="../../../doc/src/images/next.png" alt="Next"></a> 177</div> 178</body> 179</html> 180