Konvolusi biner dijelaskan oleh angka M, dan diterapkan pada angka N. Untuk setiap bit dalam representasi biner M, jika bit diatur ( 1), bit yang sesuai dalam output diberikan oleh XORing dua bit yang berdekatan dengan bit yang sesuai N(membungkus jika perlu). Jika bit tidak disetel ( 0), bit yang sesuai dalam output diberikan oleh bit yang sesuai di N.
Contoh yang dikerjakan (dengan nilai 8-bit):
- Mari
N = 150,M = 59. Representasi biner mereka adalah (masing-masing)10010110dan00111011. - Berdasarkan
Mrepresentasi biner, bit 0, 1, 3, 4, dan 5 berbelit-belit.- Hasil untuk bit 0 diberikan oleh XORing bit 1 dan 7 (karena kami membungkusnya), menghasilkan
1. - Hasil untuk bit 1 diberikan oleh XORing bit 0 dan 2, menghasilkan
0. - Hasil untuk bit 2 diberikan oleh bit asli 2, menghasilkan
1. - Hasil untuk bit 3 diberikan oleh XORing bit 2 dan 4, menghasilkan
0. - Hasil untuk bit 4 diberikan oleh XORing bit 3 dan 5, menghasilkan
0. - Hasil untuk bit 5 diberikan oleh XORing bit 4 dan 6, menghasilkan
1. - Hasil untuk bit 6 dan 7 diberikan oleh bit asli 6 dan 7, menghasilkan
0dan1.
- Hasil untuk bit 0 diberikan oleh XORing bit 1 dan 7 (karena kami membungkusnya), menghasilkan
- Outputnya demikian
10100110(166).
Tantangan
Diberikan Ndan M, hasilkan output dari melakukan konvolusi biner yang dijelaskan oleh Mpada N. Input dan output mungkin dalam format yang nyaman, konsisten, dan tidak ambigu. Ndan Makan selalu berada dalam kisaran (inklusif) [0, 255](bilangan bulat 8-bit tidak ditandatangani), dan representasi binernya harus diisi hingga 8 bit untuk melakukan konvolusi biner.
Uji Kasus
150 59 -> 166
242 209 -> 178
1 17 -> 0
189 139 -> 181
215 104 -> 215
79 214 -> 25
190 207 -> 50
61 139 -> 180
140 110 -> 206
252 115 -> 143
83 76 -> 31
244 25 -> 245
24 124 -> 60
180 41 -> 181
105 239 -> 102
215 125 -> 198
49 183 -> 178
183 158 -> 181
158 55 -> 186
215 117 -> 198
255 12 -> 243