Cho một dữ liệu 100100, được mã hóa lỗi theo dạng CRC với số chia (đa thức sinh) có dạng 1101. Đâu là chuỗi dữ liệu truyền đi?
Trả lời:
Đáp án đúng: D
Để tìm chuỗi dữ liệu truyền đi sau khi mã hóa CRC, ta thực hiện các bước sau:
1. **Xác định số dư (remainder):**
- Dữ liệu ban đầu: 100100
- Số chia (đa thức sinh): 1101
- Ta thêm vào cuối dữ liệu ban đầu một số lượng bit 0 bằng với bậc của đa thức sinh. Trong trường hợp này, đa thức sinh 1101 có bậc 3, vậy ta thêm 3 bit 0 vào cuối dữ liệu: 100100000
- Thực hiện phép chia nhị phân (phép XOR) dữ liệu đã thêm 0 với số chia 1101.
100100000
XOR 1101
-----------
0100000
XOR 1101 (dịch số chia sao cho bit старший соответствует биту старшего в делимом)
-----------
0101000
XOR 1101
-----------
0011000
XOR 1101
-----------
000100
Ở bước cuối này, do số bit còn lại (4 bits) nhỏ hơn số chia (4 bits), ta ngừng phép chia.
Số dư là 100 (đại diện cho 0100 trong bảng mã hóa nhị phân), cần 3 bits (vì số chia bậc 3).
Tuy nhiên, phép chia nhị phân có thể thực hiện như sau:
100100000 : 1101 = 110
1101
----
1000
1101
----
1010
1101
----
1110
1101
----
110 - số dư
2. **Ghép số dư vào dữ liệu ban đầu:**
- Dữ liệu ban đầu: 100100
- Số dư: 111
- Chuỗi dữ liệu truyền đi: 100100111
Vậy đáp án đúng là C. 100100111