@@ -90,8 +90,8 @@ First, a quick primer on [CRCs][crc].
90
90
91
91
Some of why CRCs are so prevalent because they are mathematically quite
92
92
pure. You view your message as a big [ binary polynomial] [ binary-polynomial ] ,
93
- divide it by a predefined polynomial (choosing a good CRC polynomial is
94
- the hard part), and the remainder is your CRC:
93
+ divide it by a predetermined "generator polynomial" (choosing a good
94
+ polynomial is the hard part), and the remainder is your CRC:
95
95
96
96
```
97
97
message = "hi!":
@@ -138,8 +138,8 @@ crc = 0x3b
138
138
```
139
139
140
140
You can describe this mathematically in [ GF(2)] [ gf2 ] , but depending on
141
- your experience with GF(2) and other finite-fields, the above example is
142
- probably easier to understand:
141
+ your experience with GF(2) and other finite-fields, the above example may
142
+ be easier to understand:
143
143
144
144
<p align =" center " >
145
145
<img
@@ -152,7 +152,8 @@ The extra $x^{|P|} multiplications represent shifting the message to make
152
152
space for the CRC, and gives us what's called a
153
153
[ "systematic code"] [ systematic-code ] . Alternatively we could actually
154
154
multiply the message with our polynomial to get valid codewords, but that
155
- would just make everything more annoying without much benefit...
155
+ would just make interacting with the message more annoying without much
156
+ benefit...
156
157
157
158
The neat thing is that this remainder operation does a real good job of
158
159
mixing up all the bits. So if you choose a good CRC polynomial, it's very
0 commit comments