Khác biệt giữa bản sửa đổi của “Mã Hamming”

Nội dung được xóa Nội dung được thêm vào
n Đã lùi lại sửa đổi của 2402:9D80:228:FAD3:D197:7E03:A939:8EC2 (Thảo luận) quay về phiên bản cuối của Wiki thành viên Liên minh hội (WTL)
Thẻ: Lùi tất cả
Tính năng gợi ý liên kết: 3 liên kết được thêm.
Dòng 14:
}}
 
Trong [[viễn thông]] (''telecommunication''), '''mã Hamming''' là một [[mã sửa lỗi]] [[mã tuyến tính|tuyến tính]] (''linear error-correcting code''), được đặt tên theo tên của người phát minh ra nó, [[Richard Hamming]]. Mã Hamming có thể phát hiện một bit hoặc hai bit bị lỗi (''single and double-bit errors''). Mã Hamming còn có thể sửa các lỗi do một bit bị sai gây ra. Ngược lại với mã của ông, [[mã chẵn lẻ]] (''parity code'') đơn giản vừa không có khả năng phát hiện các lỗi khi 2 bit cùng một lúc bị [[hoán vị]] (0 thành 1 và ngược lại), vừa không thể giúp để sửa được các lỗi mà nó phát hiện được.
 
== Lịch sử ==
Dòng 206:
\end{pmatrix}</math>
 
Các cột vectơ trong <math>H_e</math> là nền tảng [[hạt nhân (đại số)|hạch]] của <math>H_d</math> và phần trên của <math>H_e</math> (4 hàng đầu) là một ma trận đơn vị (''identity matrix''). Ma trận đơn vị cho phép vectơ dữ liệu đi qua trong khi làm tính nhân, và như vậy, các bit dữ liệu sẽ nằm ở 4 vị trí trên cùng (sau khi nhân). Sau khi [[phép nhân]] hoàn thành, khác với cách giải thích ở phần trước (các bit chẵn lẻ nằm ở vị trí 2<sup>k</sup>), trật tự của các bit trong từ mã (''codewords'') ở đây khác với cách bố trí đã nói (các bit dữ liệu nằm ở trên, các bit kiểm chẵn lẻ nằm ở dưới).
 
Chúng ta dùng một nhóm 4 bit dữ liệu (số 4 trong cái tên của mã là vì vậy) chủ chốt, và cộng thêm vào đó 3 bit dữ liệu thừa (vì 4+3=7 nên mới có số 7 trong cái tên của mã). Để truyền gửi dữ liệu, chúng ta hãy nhóm các bit dữ liệu mà mình muốn gửi thành một vectơ. Lấy ví dụ, nếu dữ liệu là "1011" thì vectơ của nó là:
Dòng 225:
\begin{pmatrix} 1 \\ 0 \\ 1 \\ 1 \\ 0 \\ 1 \\ 0 \end{pmatrix}=\mathbf{r}</math>
 
Máy thu sẽ nhân <math>H_d</math> với '''r''', để kiểm tra xem có lỗi xảy ra hay không. Thi hành tính nhân này, máy thu được (một lần nữa, các giá trị [[đồng dư]] môđulô 2):
 
: <math>H_d\mathbf{r} = \begin{pmatrix}