1 ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA BÁO CÁO BÀI TẬP LỚN ĐẠI SỐ TUYẾN TÍNH ĐỀ TÀI 6: MÃ HAMMING Giảng viên hướng dẫn : TS Nguyễn Xuân Mỹ Lớp : L14 Nhóm : MỤC LỤC 1.Giới thiệu Mã Hamming (7,4) 2.Ví dụ 3.Minh họa mã Hamming Matlab 4.Ứng dụng vào đời sống Truyền tin không gian Tài liệu tham khảo Kết luận Mã Hamming (7,4) nguyên lý mật mã đặt móng cho phát triển q trình truyền tải, sửa lỗi thông tin ứng dụng thông tin vào mặt của đời sống đại Thơng qua sở lý thuyết, ví dụ, chương trình minh họa ứng dụng thực tiễn, hiểu rõ tính chất loại mã GIỚI THIỆU VỀ MÃ HAMMING (7,4) 1 Lịch sử: Từ lỗi phát sinh khó chịu thường gặp việc vận hành máy điện cơ: - Tốc độ hoạt động chậm - Luôn gây lỗi đọc - Không tự sửa lỗi mà chuyển sang công việc khác Hamming xây dựng hàng loạt thuật tốn có hiệu cao để giải vấn đề sửa lỗi Năm 1950, ông công bố phương pháp mà biết Mã Hamming 1.2 Khái niệm Với nhóm bit liệu, mã Hamming thêm bit kiểm tra Thuật tốn (7,4) Hamming sửa chữa bit lỗi nào, phát tất lỗi bit, lỗi bit gây Sơ đồ: Mã ban đầu 1.3 - Ưu điểm Có thể phát tối đa lỗi trường bit sửa lỗi trường bit mà khơng cần tìm cụ thể lõi lỗi nào, nằm đâu - Phương pháp mã Hamming có hiệu mạng nơi luồng liệu cung cấp cho lỗi bit - Mã Hamming sử dụng dễ dàng nên phù hợp ứng dụng nhớ máy tính sửa lỗi đơn 1.4 Nhược điểm Nếu nhiều bit bị lỗi,có thể dẫn đến bit khác bị thay đổi,điều khiến liệu bị sai sót thêm Ví dụ Nguyên lý mã Hamming bắt nguồn từ việc khai triển mở rộng quan điểm chẵn lẻ Việc khai triển bắt đầu việc nhân ma trận, gọi Ma trận Hamming Ta có ma trận: - Để truyền gửi liệu, nhóm bit liệu mà muốn gửi thành vectơ Lấy ví dụ, liệu "1011" vectơ là: P= - Giả sử, muốn truyền gửi liệu Chúng ta tìm tích He P He P = = =r TH1: Giả sử khơng có lỗi xảy tín hiệu máy thu thu r’ giống với r - Máy thu nhân Hd với r’, để kiểm tra xem có lỗi xảy hay khơng = - Vì vectơ tồn số khơng máy thu kết luận khơng có lỗi xảy TH2: Nếu có lỗi xảy bit Ví dụ bit số Thì vector mà máy thu nhận là: - Máy thu nhân Hd với r’ thu kết Ta vector giống với cột thứ Hd nên bit thứ r’ bị lỗi Ta việc chuyển thành ngược lại MINH HỌA MÃ HAMMING BẰNG CHƯƠNG TRÌNH SỬA LỖI TRONG MƠI TRƯỜNG MATLAB 3.1 Vấn đề: Nhập đoạn mã có số từ hai số 1, sau truyền Để nhận mã xác ban đầu, ta phải thêm vào đoạn ba bit để sửa lỗi phát sinh q trình truyền đi, đoạn mã nhận xác 5 3.2 Code function Hamming_Code syms w v a i t x a=input('Nhap thong tin can chuyen a='); H=[1101100;1011010;0111001]; G=[1110000;1101100;0101010;1001001]; v=a*G; for i=1:7 if mod(v(1,i),2)==0; v(1,i)=0; else v(1,i)=1; end end num2str(v); fprintf('Ma tran chuyen di\n'); disp(v); w=input ('Nhap vector nhan duoc w='); x=H*w'; for i=1:3 if mod(x(i,1),2)==0;%chuyen ve va x(i,1)=0; else x(i,1)=1; end end for i=1:7 if x==H(:,i); t=i; break; else t=0; end end if t~=0 if w(1,t)==0; w(1,t)=1; else w(1,t)=0; end end num2str(w); fprintf('Ma tran sau chuyen doi \n'); disp(v); end 3.3 Ví dụ minh họa Một tín hiệu gửi gồm bit “1 0 1” Tín hiệu nhận “0 1 0 0” Thực mơi trường Matlab để tìm bit sai sửa lại cho 6 ỨNG DỤNG THỰC TẾ VÀO ĐỜI SỐNG: Được sử dụng vào tính tốn máy tính, thông tin liên lạc, nén thông tin Ứng dụng truyền thông tin không gian: - Các vệ tinh, tàu thám hiểm vũ trụ thường chụp ảnh hành tinh khác, sau gửi Trái Đất - Trong q trình truyền thơng tin đi, ảnh chụp mã hóa đoạn mã 1, mơi trường truyền ln có từ trường làm nhiễu loạn thông tin, dẫn đến thông tin bị sai, ảnh bị nhiễu hay hư hỏng, khơng cịn giữ trạng thái ban đầu - Khi mã Hamming áp dụng để nhận biết sửa thông tin sai trước trạm mặt đất nhận thơng tin xác Ngồi ra, nhờ việc ứng dụng mã Hamming vào việc truyền thông tin mà ta có ảnh từ vệ tinh với chất lượng ảnh rõ nét 7 Lỗi truyền hình ảnh dạng mã qua mơi trường vũ trụ Nguồn :youtube TÀI LIỆU THAM KHẢO [1] Mã Hamming Truy câp 2/12/2019 http://wikipedia.com [2] Ứng dụng thực tế mã sửa sai.Truy câp 2/12/2019 http://antoanthongtin.vn ... thiệu Mã Hamming (7,4) 2.Ví dụ 3.Minh họa mã Hamming Matlab 4.Ứng dụng vào đời sống Truyền tin không gian Tài liệu tham khảo Kết luận Mã Hamming. .. việc chuyển thành ngược lại MINH HỌA MÃ HAMMING BẰNG CHƯƠNG TRÌNH SỬA LỖI TRONG MÔI TRƯỜNG MATLAB 3.1 Vấn đề: Nhập đoạn mã có số từ hai số 1, sau truyền Để nhận mã xác ban đầu, ta phải thêm vào đoạn... công việc khác Hamming xây dựng hàng loạt thuật tốn có hiệu cao để giải vấn đề sửa lỗi Năm 1950, ông công bố phương pháp mà biết Mã Hamming 1.2 Khái niệm Với nhóm bit liệu, mã Hamming thêm bit