Show polynomial division steps

This page demonstrates how to generate ECC blocks by performing polynomial divison on a message polynomial. Just enter the coefficients of the message polynomial and the desired number of ECC blocks, then click Perform Division.

If the steps are unclear, please read the error correction generation section of the tutorial, which includes a detailed explanation of these steps.


(example: 32,91,11,120,209,114,220,77,67,64,236,17,236 )

(example: 13 )

Polynomial Division Steps

The first step to the division is to prepare the message polynomial for the division. The full message polynomial is:

64x15 + 149x14 + 6x13 + 22x12 + 118x11 + 86x10 + 68x9 + 247x8 + 87x7 + 66x6 + 16x5 + 236x4 + 17x3 + 236x2 + 17x1 + 236

To make sure that the exponent of the lead term doesn't become too small during the division, multiply the message polynomial by xn where n is the number of error correction codewords that are needed. In this case n is 10, for 10 error correction codewords, so multiply the message polynomial by x10, which gives us:

64x25 + 149x24 + 6x23 + 22x22 + 118x21 + 86x20 + 68x19 + 247x18 + 87x17 + 66x16 + 16x15 + 236x14 + 17x13 + 236x12 + 17x11 + 236x10

The lead term of the generator polynomial should also have the same exponent, so multiply by x15 to get

α0x25 + α251x24 + α67x23 + α46x22 + α61x21 + α118x20 + α70x19 + α64x18 + α94x17 + α32x16 + α45x15

Now it is possible to perform the repeated division steps. The number of steps in the division must equal the number of terms in the message polynomial. In this case, the division will take 16 steps to complete. This will result in a remainder that has 10 terms. These terms will be the 10 error correction codewords that are required.

Step 1a: Multiply the Generator Polynomial by the Lead Term of the Message Polynomial

The first step is to multiply the generator polynomial by the lead term of the message polynomial. The lead term in this case is 64x25. Since alpha notation makes it easier to perform the multiplication, it is recommended to convert 64x25 to alpha notation. According to the log antilog table, for the integer value 64, the alpha exponent is 6. Therefore 64 = α6. Multiply the generator polynomial by α6:

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α6x25 + α(257 % 255)x24 + α73x23 + α52x22 + α67x21 + α124x20 + α76x19 + α70x18 + α100x17 + α38x16 + α51x15

The result is:

α6x25 + α2x24 + α73x23 + α52x22 + α67x21 + α124x20 + α76x19 + α70x18 + α100x17 + α38x16 + α51x15

Now, convert this to integer notation:

64x25 + 4x24 + 202x23 + 20x22 + 194x21 + 151x20 + 30x19 + 94x18 + 17x17 + 148x16 + 10x15

Step 1b: XOR the result with the message polynomial

Since this is the first division step, XOR the result from 1a with the message polynomial.

(64 ⊕ 64)x25 + (149 ⊕ 4)x24 + (6 ⊕ 202)x23 + (22 ⊕ 20)x22 + (118 ⊕ 194)x21 + (86 ⊕ 151)x20 + (68 ⊕ 30)x19 + (247 ⊕ 94)x18 + (87 ⊕ 17)x17 + (66 ⊕ 148)x16 + (16 ⊕ 10)x15 + (236 ⊕ 0)x14 + (17 ⊕ 0)x13 + (236 ⊕ 0)x12 + (17 ⊕ 0)x11 + (236 ⊕ 0)x10

The result is:

0x25 + 145x24 + 204x23 + 2x22 + 180x21 + 193x20 + 90x19 + 169x18 + 70x17 + 214x16 + 26x15 + 236x14 + 17x13 + 236x12 + 17x11 + 236x10

Discard the lead 0 term to get:

145x24 + 204x23 + 2x22 + 180x21 + 193x20 + 90x19 + 169x18 + 70x17 + 214x16 + 26x15 + 236x14 + 17x13 + 236x12 + 17x11 + 236x10

Step 2a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 145x24. Convert 145x24 to alpha notation. According to the log antilog table, for the integer value 145, the alpha exponent is 165. Therefore 145 = α165. Multiply the generator polynomial by α165:

165 * α0)x24 + (α165 * α251)x23 + (α165 * α67)x22 + (α165 * α46)x21 + (α165 * α61)x20 + (α165 * α118)x19 + (α165 * α70)x18 + (α165 * α64)x17 + (α165 * α94)x16 + (α165 * α32)x15 + (α165 * α45)x14

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α165x24 + α(416 % 255)x23 + α232x22 + α211x21 + α226x20 + α(283 % 255)x19 + α235x18 + α229x17 + α(259 % 255)x16 + α197x15 + α210x14

The result is:

α165x24 + α161x23 + α232x22 + α211x21 + α226x20 + α28x19 + α235x18 + α229x17 + α4x16 + α197x15 + α210x14

Now, convert this to integer notation:

145x24 + 209x23 + 247x22 + 178x21 + 72x20 + 24x19 + 235x18 + 122x17 + 16x16 + 141x15 + 89x14

Step 2b: XOR the result with the result from step 1b

Use the result from step 1b to perform the next XOR.

(145 ⊕ 145)x24 + (204 ⊕ 209)x23 + (2 ⊕ 247)x22 + (180 ⊕ 178)x21 + (193 ⊕ 72)x20 + (90 ⊕ 24)x19 + (169 ⊕ 235)x18 + (70 ⊕ 122)x17 + (214 ⊕ 16)x16 + (26 ⊕ 141)x15 + (236 ⊕ 89)x14 + (17 ⊕ 0)x13 + (236 ⊕ 0)x12 + (17 ⊕ 0)x11 + (236 ⊕ 0)x10

The result is:

0x24 + 29x23 + 245x22 + 6x21 + 137x20 + 66x19 + 66x18 + 60x17 + 198x16 + 151x15 + 181x14 + 17x13 + 236x12 + 17x11 + 236x10

Discard the lead 0 term to get:

29x23 + 245x22 + 6x21 + 137x20 + 66x19 + 66x18 + 60x17 + 198x16 + 151x15 + 181x14 + 17x13 + 236x12 + 17x11 + 236x10

Step 3a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 29x23. Convert 29x23 to alpha notation. According to the log antilog table, for the integer value 29, the alpha exponent is 8. Therefore 29 = α8. Multiply the generator polynomial by α8:

8 * α0)x23 + (α8 * α251)x22 + (α8 * α67)x21 + (α8 * α46)x20 + (α8 * α61)x19 + (α8 * α118)x18 + (α8 * α70)x17 + (α8 * α64)x16 + (α8 * α94)x15 + (α8 * α32)x14 + (α8 * α45)x13

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α8x23 + α(259 % 255)x22 + α75x21 + α54x20 + α69x19 + α126x18 + α78x17 + α72x16 + α102x15 + α40x14 + α53x13

The result is:

α8x23 + α4x22 + α75x21 + α54x20 + α69x19 + α126x18 + α78x17 + α72x16 + α102x15 + α40x14 + α53x13

Now, convert this to integer notation:

29x23 + 16x22 + 15x21 + 80x20 + 47x19 + 102x18 + 120x17 + 101x16 + 68x15 + 106x14 + 40x13

Step 3b: XOR the result with the result from step 2b

Use the result from step 2b to perform the next XOR.

(29 ⊕ 29)x23 + (245 ⊕ 16)x22 + (6 ⊕ 15)x21 + (137 ⊕ 80)x20 + (66 ⊕ 47)x19 + (66 ⊕ 102)x18 + (60 ⊕ 120)x17 + (198 ⊕ 101)x16 + (151 ⊕ 68)x15 + (181 ⊕ 106)x14 + (17 ⊕ 40)x13 + (236 ⊕ 0)x12 + (17 ⊕ 0)x11 + (236 ⊕ 0)x10

The result is:

0x23 + 229x22 + 9x21 + 217x20 + 109x19 + 36x18 + 68x17 + 163x16 + 211x15 + 223x14 + 57x13 + 236x12 + 17x11 + 236x10

Discard the lead 0 term to get:

229x22 + 9x21 + 217x20 + 109x19 + 36x18 + 68x17 + 163x16 + 211x15 + 223x14 + 57x13 + 236x12 + 17x11 + 236x10

Step 4a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 229x22. Convert 229x22 to alpha notation. According to the log antilog table, for the integer value 229, the alpha exponent is 169. Therefore 229 = α169. Multiply the generator polynomial by α169:

169 * α0)x22 + (α169 * α251)x21 + (α169 * α67)x20 + (α169 * α46)x19 + (α169 * α61)x18 + (α169 * α118)x17 + (α169 * α70)x16 + (α169 * α64)x15 + (α169 * α94)x14 + (α169 * α32)x13 + (α169 * α45)x12

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α169x22 + α(420 % 255)x21 + α236x20 + α215x19 + α230x18 + α(287 % 255)x17 + α239x16 + α233x15 + α(263 % 255)x14 + α201x13 + α214x12

The result is:

α169x22 + α165x21 + α236x20 + α215x19 + α230x18 + α32x17 + α239x16 + α233x15 + α8x14 + α201x13 + α214x12

Now, convert this to integer notation:

229x22 + 145x21 + 203x20 + 239x19 + 244x18 + 157x17 + 22x16 + 243x15 + 29x14 + 56x13 + 249x12

Step 4b: XOR the result with the result from step 3b

Use the result from step 3b to perform the next XOR.

(229 ⊕ 229)x22 + (9 ⊕ 145)x21 + (217 ⊕ 203)x20 + (109 ⊕ 239)x19 + (36 ⊕ 244)x18 + (68 ⊕ 157)x17 + (163 ⊕ 22)x16 + (211 ⊕ 243)x15 + (223 ⊕ 29)x14 + (57 ⊕ 56)x13 + (236 ⊕ 249)x12 + (17 ⊕ 0)x11 + (236 ⊕ 0)x10

The result is:

0x22 + 152x21 + 18x20 + 130x19 + 208x18 + 217x17 + 181x16 + 32x15 + 194x14 + 1x13 + 21x12 + 17x11 + 236x10

Discard the lead 0 term to get:

152x21 + 18x20 + 130x19 + 208x18 + 217x17 + 181x16 + 32x15 + 194x14 + 1x13 + 21x12 + 17x11 + 236x10

Step 5a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 152x21. Convert 152x21 to alpha notation. According to the log antilog table, for the integer value 152, the alpha exponent is 17. Therefore 152 = α17. Multiply the generator polynomial by α17:

17 * α0)x21 + (α17 * α251)x20 + (α17 * α67)x19 + (α17 * α46)x18 + (α17 * α61)x17 + (α17 * α118)x16 + (α17 * α70)x15 + (α17 * α64)x14 + (α17 * α94)x13 + (α17 * α32)x12 + (α17 * α45)x11

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α17x21 + α(268 % 255)x20 + α84x19 + α63x18 + α78x17 + α135x16 + α87x15 + α81x14 + α111x13 + α49x12 + α62x11

The result is:

α17x21 + α13x20 + α84x19 + α63x18 + α78x17 + α135x16 + α87x15 + α81x14 + α111x13 + α49x12 + α62x11

Now, convert this to integer notation:

152x21 + 135x20 + 107x19 + 161x18 + 120x17 + 169x16 + 127x15 + 231x14 + 206x13 + 140x12 + 222x11

Step 5b: XOR the result with the result from step 4b

Use the result from step 4b to perform the next XOR.

(152 ⊕ 152)x21 + (18 ⊕ 135)x20 + (130 ⊕ 107)x19 + (208 ⊕ 161)x18 + (217 ⊕ 120)x17 + (181 ⊕ 169)x16 + (32 ⊕ 127)x15 + (194 ⊕ 231)x14 + (1 ⊕ 206)x13 + (21 ⊕ 140)x12 + (17 ⊕ 222)x11 + (236 ⊕ 0)x10

The result is:

0x21 + 149x20 + 233x19 + 113x18 + 161x17 + 28x16 + 95x15 + 37x14 + 207x13 + 153x12 + 207x11 + 236x10

Discard the lead 0 term to get:

149x20 + 233x19 + 113x18 + 161x17 + 28x16 + 95x15 + 37x14 + 207x13 + 153x12 + 207x11 + 236x10

Step 6a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 149x20. Convert 149x20 to alpha notation. According to the log antilog table, for the integer value 149, the alpha exponent is 184. Therefore 149 = α184. Multiply the generator polynomial by α184:

184 * α0)x20 + (α184 * α251)x19 + (α184 * α67)x18 + (α184 * α46)x17 + (α184 * α61)x16 + (α184 * α118)x15 + (α184 * α70)x14 + (α184 * α64)x13 + (α184 * α94)x12 + (α184 * α32)x11 + (α184 * α45)x10

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α184x20 + α(435 % 255)x19 + α251x18 + α230x17 + α245x16 + α(302 % 255)x15 + α254x14 + α248x13 + α(278 % 255)x12 + α216x11 + α229x10

The result is:

α184x20 + α180x19 + α251x18 + α230x17 + α245x16 + α47x15 + α254x14 + α248x13 + α23x12 + α216x11 + α229x10

Now, convert this to integer notation:

149x20 + 150x19 + 216x18 + 244x17 + 233x16 + 35x15 + 142x14 + 27x13 + 201x12 + 195x11 + 122x10

Step 6b: XOR the result with the result from step 5b

Use the result from step 5b to perform the next XOR.

(149 ⊕ 149)x20 + (233 ⊕ 150)x19 + (113 ⊕ 216)x18 + (161 ⊕ 244)x17 + (28 ⊕ 233)x16 + (95 ⊕ 35)x15 + (37 ⊕ 142)x14 + (207 ⊕ 27)x13 + (153 ⊕ 201)x12 + (207 ⊕ 195)x11 + (236 ⊕ 122)x10

The result is:

0x20 + 127x19 + 169x18 + 85x17 + 245x16 + 124x15 + 171x14 + 212x13 + 80x12 + 12x11 + 150x10

Discard the lead 0 term to get:

127x19 + 169x18 + 85x17 + 245x16 + 124x15 + 171x14 + 212x13 + 80x12 + 12x11 + 150x10

Step 7a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 127x19. Convert 127x19 to alpha notation. According to the log antilog table, for the integer value 127, the alpha exponent is 87. Therefore 127 = α87. Multiply the generator polynomial by α87:

87 * α0)x19 + (α87 * α251)x18 + (α87 * α67)x17 + (α87 * α46)x16 + (α87 * α61)x15 + (α87 * α118)x14 + (α87 * α70)x13 + (α87 * α64)x12 + (α87 * α94)x11 + (α87 * α32)x10 + (α87 * α45)x9

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α87x19 + α(338 % 255)x18 + α154x17 + α133x16 + α148x15 + α205x14 + α157x13 + α151x12 + α181x11 + α119x10 + α132x9

The result is:

α87x19 + α83x18 + α154x17 + α133x16 + α148x15 + α205x14 + α157x13 + α151x12 + α181x11 + α119x10 + α132x9

Now, convert this to integer notation:

127x19 + 187x18 + 57x17 + 109x16 + 82x15 + 167x14 + 213x13 + 170x12 + 49x11 + 147x10 + 184x9

Step 7b: XOR the result with the result from step 6b

Use the result from step 6b to perform the next XOR.

(127 ⊕ 127)x19 + (169 ⊕ 187)x18 + (85 ⊕ 57)x17 + (245 ⊕ 109)x16 + (124 ⊕ 82)x15 + (171 ⊕ 167)x14 + (212 ⊕ 213)x13 + (80 ⊕ 170)x12 + (12 ⊕ 49)x11 + (150 ⊕ 147)x10 + (0 ⊕ 184)x9

The result is:

0x19 + 18x18 + 108x17 + 152x16 + 46x15 + 12x14 + 1x13 + 250x12 + 61x11 + 5x10 + 184x9

Discard the lead 0 term to get:

18x18 + 108x17 + 152x16 + 46x15 + 12x14 + 1x13 + 250x12 + 61x11 + 5x10 + 184x9

Step 8a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 18x18. Convert 18x18 to alpha notation. According to the log antilog table, for the integer value 18, the alpha exponent is 224. Therefore 18 = α224. Multiply the generator polynomial by α224:

224 * α0)x18 + (α224 * α251)x17 + (α224 * α67)x16 + (α224 * α46)x15 + (α224 * α61)x14 + (α224 * α118)x13 + (α224 * α70)x12 + (α224 * α64)x11 + (α224 * α94)x10 + (α224 * α32)x9 + (α224 * α45)x8

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α224x18 + α(475 % 255)x17 + α(291 % 255)x16 + α(270 % 255)x15 + α(285 % 255)x14 + α(342 % 255)x13 + α(294 % 255)x12 + α(288 % 255)x11 + α(318 % 255)x10 + α(256 % 255)x9 + α(269 % 255)x8

The result is:

α224x18 + α220x17 + α36x16 + α15x15 + α30x14 + α87x13 + α39x12 + α33x11 + α63x10 + α1x9 + α14x8

Now, convert this to integer notation:

18x18 + 172x17 + 37x16 + 38x15 + 96x14 + 127x13 + 53x12 + 39x11 + 161x10 + 2x9 + 19x8

Step 8b: XOR the result with the result from step 7b

Use the result from step 7b to perform the next XOR.

(18 ⊕ 18)x18 + (108 ⊕ 172)x17 + (152 ⊕ 37)x16 + (46 ⊕ 38)x15 + (12 ⊕ 96)x14 + (1 ⊕ 127)x13 + (250 ⊕ 53)x12 + (61 ⊕ 39)x11 + (5 ⊕ 161)x10 + (184 ⊕ 2)x9 + (0 ⊕ 19)x8

The result is:

0x18 + 192x17 + 189x16 + 8x15 + 108x14 + 126x13 + 207x12 + 26x11 + 164x10 + 186x9 + 19x8

Discard the lead 0 term to get:

192x17 + 189x16 + 8x15 + 108x14 + 126x13 + 207x12 + 26x11 + 164x10 + 186x9 + 19x8

Step 9a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 192x17. Convert 192x17 to alpha notation. According to the log antilog table, for the integer value 192, the alpha exponent is 31. Therefore 192 = α31. Multiply the generator polynomial by α31:

31 * α0)x17 + (α31 * α251)x16 + (α31 * α67)x15 + (α31 * α46)x14 + (α31 * α61)x13 + (α31 * α118)x12 + (α31 * α70)x11 + (α31 * α64)x10 + (α31 * α94)x9 + (α31 * α32)x8 + (α31 * α45)x7

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α31x17 + α(282 % 255)x16 + α98x15 + α77x14 + α92x13 + α149x12 + α101x11 + α95x10 + α125x9 + α63x8 + α76x7

The result is:

α31x17 + α27x16 + α98x15 + α77x14 + α92x13 + α149x12 + α101x11 + α95x10 + α125x9 + α63x8 + α76x7

Now, convert this to integer notation:

192x17 + 12x16 + 67x15 + 60x14 + 91x13 + 164x12 + 34x11 + 226x10 + 51x9 + 161x8 + 30x7

Step 9b: XOR the result with the result from step 8b

Use the result from step 8b to perform the next XOR.

(192 ⊕ 192)x17 + (189 ⊕ 12)x16 + (8 ⊕ 67)x15 + (108 ⊕ 60)x14 + (126 ⊕ 91)x13 + (207 ⊕ 164)x12 + (26 ⊕ 34)x11 + (164 ⊕ 226)x10 + (186 ⊕ 51)x9 + (19 ⊕ 161)x8 + (0 ⊕ 30)x7

The result is:

0x17 + 177x16 + 75x15 + 80x14 + 37x13 + 107x12 + 56x11 + 70x10 + 137x9 + 178x8 + 30x7

Discard the lead 0 term to get:

177x16 + 75x15 + 80x14 + 37x13 + 107x12 + 56x11 + 70x10 + 137x9 + 178x8 + 30x7

Step 10a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 177x16. Convert 177x16 to alpha notation. According to the log antilog table, for the integer value 177, the alpha exponent is 86. Therefore 177 = α86. Multiply the generator polynomial by α86:

86 * α0)x16 + (α86 * α251)x15 + (α86 * α67)x14 + (α86 * α46)x13 + (α86 * α61)x12 + (α86 * α118)x11 + (α86 * α70)x10 + (α86 * α64)x9 + (α86 * α94)x8 + (α86 * α32)x7 + (α86 * α45)x6

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α86x16 + α(337 % 255)x15 + α153x14 + α132x13 + α147x12 + α204x11 + α156x10 + α150x9 + α180x8 + α118x7 + α131x6

The result is:

α86x16 + α82x15 + α153x14 + α132x13 + α147x12 + α204x11 + α156x10 + α150x9 + α180x8 + α118x7 + α131x6

Now, convert this to integer notation:

177x16 + 211x15 + 146x14 + 184x13 + 41x12 + 221x11 + 228x10 + 85x9 + 150x8 + 199x7 + 92x6

Step 10b: XOR the result with the result from step 9b

Use the result from step 9b to perform the next XOR.

(177 ⊕ 177)x16 + (75 ⊕ 211)x15 + (80 ⊕ 146)x14 + (37 ⊕ 184)x13 + (107 ⊕ 41)x12 + (56 ⊕ 221)x11 + (70 ⊕ 228)x10 + (137 ⊕ 85)x9 + (178 ⊕ 150)x8 + (30 ⊕ 199)x7 + (0 ⊕ 92)x6

The result is:

0x16 + 152x15 + 194x14 + 157x13 + 66x12 + 229x11 + 162x10 + 220x9 + 36x8 + 217x7 + 92x6

Discard the lead 0 term to get:

152x15 + 194x14 + 157x13 + 66x12 + 229x11 + 162x10 + 220x9 + 36x8 + 217x7 + 92x6

Step 11a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 152x15. Convert 152x15 to alpha notation. According to the log antilog table, for the integer value 152, the alpha exponent is 17. Therefore 152 = α17. Multiply the generator polynomial by α17:

17 * α0)x15 + (α17 * α251)x14 + (α17 * α67)x13 + (α17 * α46)x12 + (α17 * α61)x11 + (α17 * α118)x10 + (α17 * α70)x9 + (α17 * α64)x8 + (α17 * α94)x7 + (α17 * α32)x6 + (α17 * α45)x5

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α17x15 + α(268 % 255)x14 + α84x13 + α63x12 + α78x11 + α135x10 + α87x9 + α81x8 + α111x7 + α49x6 + α62x5

The result is:

α17x15 + α13x14 + α84x13 + α63x12 + α78x11 + α135x10 + α87x9 + α81x8 + α111x7 + α49x6 + α62x5

Now, convert this to integer notation:

152x15 + 135x14 + 107x13 + 161x12 + 120x11 + 169x10 + 127x9 + 231x8 + 206x7 + 140x6 + 222x5

Step 11b: XOR the result with the result from step 10b

Use the result from step 10b to perform the next XOR.

(152 ⊕ 152)x15 + (194 ⊕ 135)x14 + (157 ⊕ 107)x13 + (66 ⊕ 161)x12 + (229 ⊕ 120)x11 + (162 ⊕ 169)x10 + (220 ⊕ 127)x9 + (36 ⊕ 231)x8 + (217 ⊕ 206)x7 + (92 ⊕ 140)x6 + (0 ⊕ 222)x5

The result is:

0x15 + 69x14 + 246x13 + 227x12 + 157x11 + 11x10 + 163x9 + 195x8 + 23x7 + 208x6 + 222x5

Discard the lead 0 term to get:

69x14 + 246x13 + 227x12 + 157x11 + 11x10 + 163x9 + 195x8 + 23x7 + 208x6 + 222x5

Step 12a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 69x14. Convert 69x14 to alpha notation. According to the log antilog table, for the integer value 69, the alpha exponent is 221. Therefore 69 = α221. Multiply the generator polynomial by α221:

221 * α0)x14 + (α221 * α251)x13 + (α221 * α67)x12 + (α221 * α46)x11 + (α221 * α61)x10 + (α221 * α118)x9 + (α221 * α70)x8 + (α221 * α64)x7 + (α221 * α94)x6 + (α221 * α32)x5 + (α221 * α45)x4

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α221x14 + α(472 % 255)x13 + α(288 % 255)x12 + α(267 % 255)x11 + α(282 % 255)x10 + α(339 % 255)x9 + α(291 % 255)x8 + α(285 % 255)x7 + α(315 % 255)x6 + α253x5 + α(266 % 255)x4

The result is:

α221x14 + α217x13 + α33x12 + α12x11 + α27x10 + α84x9 + α36x8 + α30x7 + α60x6 + α253x5 + α11x4

Now, convert this to integer notation:

69x14 + 155x13 + 39x12 + 205x11 + 12x10 + 107x9 + 37x8 + 96x7 + 185x6 + 71x5 + 232x4

Step 12b: XOR the result with the result from step 11b

Use the result from step 11b to perform the next XOR.

(69 ⊕ 69)x14 + (246 ⊕ 155)x13 + (227 ⊕ 39)x12 + (157 ⊕ 205)x11 + (11 ⊕ 12)x10 + (163 ⊕ 107)x9 + (195 ⊕ 37)x8 + (23 ⊕ 96)x7 + (208 ⊕ 185)x6 + (222 ⊕ 71)x5 + (0 ⊕ 232)x4

The result is:

0x14 + 109x13 + 196x12 + 80x11 + 7x10 + 200x9 + 230x8 + 119x7 + 105x6 + 153x5 + 232x4

Discard the lead 0 term to get:

109x13 + 196x12 + 80x11 + 7x10 + 200x9 + 230x8 + 119x7 + 105x6 + 153x5 + 232x4

Step 13a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 109x13. Convert 109x13 to alpha notation. According to the log antilog table, for the integer value 109, the alpha exponent is 133. Therefore 109 = α133. Multiply the generator polynomial by α133:

133 * α0)x13 + (α133 * α251)x12 + (α133 * α67)x11 + (α133 * α46)x10 + (α133 * α61)x9 + (α133 * α118)x8 + (α133 * α70)x7 + (α133 * α64)x6 + (α133 * α94)x5 + (α133 * α32)x4 + (α133 * α45)x3

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α133x13 + α(384 % 255)x12 + α200x11 + α179x10 + α194x9 + α251x8 + α203x7 + α197x6 + α227x5 + α165x4 + α178x3

The result is:

α133x13 + α129x12 + α200x11 + α179x10 + α194x9 + α251x8 + α203x7 + α197x6 + α227x5 + α165x4 + α178x3

Now, convert this to integer notation:

109x13 + 23x12 + 28x11 + 75x10 + 50x9 + 216x8 + 224x7 + 141x6 + 144x5 + 145x4 + 171x3

Step 13b: XOR the result with the result from step 12b

Use the result from step 12b to perform the next XOR.

(109 ⊕ 109)x13 + (196 ⊕ 23)x12 + (80 ⊕ 28)x11 + (7 ⊕ 75)x10 + (200 ⊕ 50)x9 + (230 ⊕ 216)x8 + (119 ⊕ 224)x7 + (105 ⊕ 141)x6 + (153 ⊕ 144)x5 + (232 ⊕ 145)x4 + (0 ⊕ 171)x3

The result is:

0x13 + 211x12 + 76x11 + 76x10 + 250x9 + 62x8 + 151x7 + 228x6 + 9x5 + 121x4 + 171x3

Discard the lead 0 term to get:

211x12 + 76x11 + 76x10 + 250x9 + 62x8 + 151x7 + 228x6 + 9x5 + 121x4 + 171x3

Step 14a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 211x12. Convert 211x12 to alpha notation. According to the log antilog table, for the integer value 211, the alpha exponent is 82. Therefore 211 = α82. Multiply the generator polynomial by α82:

82 * α0)x12 + (α82 * α251)x11 + (α82 * α67)x10 + (α82 * α46)x9 + (α82 * α61)x8 + (α82 * α118)x7 + (α82 * α70)x6 + (α82 * α64)x5 + (α82 * α94)x4 + (α82 * α32)x3 + (α82 * α45)x2

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α82x12 + α(333 % 255)x11 + α149x10 + α128x9 + α143x8 + α200x7 + α152x6 + α146x5 + α176x4 + α114x3 + α127x2

The result is:

α82x12 + α78x11 + α149x10 + α128x9 + α143x8 + α200x7 + α152x6 + α146x5 + α176x4 + α114x3 + α127x2

Now, convert this to integer notation:

211x12 + 120x11 + 164x10 + 133x9 + 84x8 + 28x7 + 73x6 + 154x5 + 227x4 + 62x3 + 204x2

Step 14b: XOR the result with the result from step 13b

Use the result from step 13b to perform the next XOR.

(211 ⊕ 211)x12 + (76 ⊕ 120)x11 + (76 ⊕ 164)x10 + (250 ⊕ 133)x9 + (62 ⊕ 84)x8 + (151 ⊕ 28)x7 + (228 ⊕ 73)x6 + (9 ⊕ 154)x5 + (121 ⊕ 227)x4 + (171 ⊕ 62)x3 + (0 ⊕ 204)x2

The result is:

0x12 + 52x11 + 232x10 + 127x9 + 106x8 + 139x7 + 173x6 + 147x5 + 154x4 + 149x3 + 204x2

Discard the lead 0 term to get:

52x11 + 232x10 + 127x9 + 106x8 + 139x7 + 173x6 + 147x5 + 154x4 + 149x3 + 204x2

Step 15a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 52x11. Convert 52x11 to alpha notation. According to the log antilog table, for the integer value 52, the alpha exponent is 106. Therefore 52 = α106. Multiply the generator polynomial by α106:

106 * α0)x11 + (α106 * α251)x10 + (α106 * α67)x9 + (α106 * α46)x8 + (α106 * α61)x7 + (α106 * α118)x6 + (α106 * α70)x5 + (α106 * α64)x4 + (α106 * α94)x3 + (α106 * α32)x2 + (α106 * α45)x1

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α106x11 + α(357 % 255)x10 + α173x9 + α152x8 + α167x7 + α224x6 + α176x5 + α170x4 + α200x3 + α138x2 + α151x1

The result is:

α106x11 + α102x10 + α173x9 + α152x8 + α167x7 + α224x6 + α176x5 + α170x4 + α200x3 + α138x2 + α151x1

Now, convert this to integer notation:

52x11 + 68x10 + 246x9 + 73x8 + 126x7 + 18x6 + 227x5 + 215x4 + 28x3 + 33x2 + 170x1

Step 15b: XOR the result with the result from step 14b

Use the result from step 14b to perform the next XOR.

(52 ⊕ 52)x11 + (232 ⊕ 68)x10 + (127 ⊕ 246)x9 + (106 ⊕ 73)x8 + (139 ⊕ 126)x7 + (173 ⊕ 18)x6 + (147 ⊕ 227)x5 + (154 ⊕ 215)x4 + (149 ⊕ 28)x3 + (204 ⊕ 33)x2 + (0 ⊕ 170)x1

The result is:

0x11 + 172x10 + 137x9 + 35x8 + 245x7 + 191x6 + 112x5 + 77x4 + 137x3 + 237x2 + 170x1

Discard the lead 0 term to get:

172x10 + 137x9 + 35x8 + 245x7 + 191x6 + 112x5 + 77x4 + 137x3 + 237x2 + 170x1

Step 16a: Multiply the Generator Polynomial by the Lead Term of the XOR result from the previous step

Next, multiply the generator polynomial by the lead term of the XOR result from the previous step. The lead term in this case is 172x10. Convert 172x10 to alpha notation. According to the log antilog table, for the integer value 172, the alpha exponent is 220. Therefore 172 = α220. Multiply the generator polynomial by α220:

220 * α0)x10 + (α220 * α251)x9 + (α220 * α67)x8 + (α220 * α46)x7 + (α220 * α61)x6 + (α220 * α118)x5 + (α220 * α70)x4 + (α220 * α64)x3 + (α220 * α94)x2 + (α220 * α32)x1 + (α220 * α45)x0

The exponents of the alphas are added together. In this case, at least one of the exponents is larger than 255, so perform modulo 255 as follows:

α220x10 + α(471 % 255)x9 + α(287 % 255)x8 + α(266 % 255)x7 + α(281 % 255)x6 + α(338 % 255)x5 + α(290 % 255)x4 + α(284 % 255)x3 + α(314 % 255)x2 + α252x1 + α(265 % 255)x0

The result is:

α220x10 + α216x9 + α32x8 + α11x7 + α26x6 + α83x5 + α35x4 + α29x3 + α59x2 + α252x1 + α10x0

Now, convert this to integer notation:

172x10 + 195x9 + 157x8 + 232x7 + 6x6 + 187x5 + 156x4 + 48x3 + 210x2 + 173x1 + 116

Step 16b: XOR the result with the result from step 15b

Use the result from step 15b to perform the next XOR.

(172 ⊕ 172)x10 + (137 ⊕ 195)x9 + (35 ⊕ 157)x8 + (245 ⊕ 232)x7 + (191 ⊕ 6)x6 + (112 ⊕ 187)x5 + (77 ⊕ 156)x4 + (137 ⊕ 48)x3 + (237 ⊕ 210)x2 + (170 ⊕ 173)x1 + (0 ⊕ 116)x0

The result is:

0x10 + 74x9 + 190x8 + 29x7 + 185x6 + 203x5 + 209x4 + 185x3 + 63x2 + 7x1 + 116

Discard the lead 0 term to get:

74x9 + 190x8 + 29x7 + 185x6 + 203x5 + 209x4 + 185x3 + 63x2 + 7x1 + 116

Use the terms of the remainder as the error correction codewords

The division has been performed 16 times, which is the number of terms in the message polynomial. This means that the division is complete and the terms of the above polynomial are the error correction codewords to use for the original message polynomial:

74  190  29  185  203  209  185  63  7  116