Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 54 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
54
Dung lượng
1,42 MB
Nội dung
GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN LỜI NĨI ĐẦU Ngày nay, cơng nghệ thơng tin phát triển mạnh mẽ trở thành ngành mũi nhọn Nó ứng dụng rộng rãi tất lĩnh vực đời sống xã hội Có thể nói phát triển cơng nghệ thơng tin giúp người giải toán khó thời gian ngắn, mà trước địi hỏi người phải nhiều thời gian công sức với độ xác độ tin cậy cao Điều đánh dấu bước ngoăt vĩ đại ngành tin học nói riêng lĩnh vực đời sống xã hội nói chung Sinh viên CNTT ngày phải không ngừng học hỏi, cập nhật biết vận dụng kiến thức học hỏi vào thực tiễn sống Đợt thực tập sở bước sâu tìm hiểu hội để sinh viên tổng hợp lại học năm qua Đề tài thực tập sở nhóm 03 – Lớp 48KTin trình bày cho thấy phần hữu ích cơng nghệ thơng tin sống Đề tài nghiên cứu bao gồm: Sử dụng thư điện tử(Email), Bài toán dùng thuật toán sinh thuật tốn quay lui, Tìm hiểu khai thác dịch vụ Windows Firewall Windows, Tìm hiểu cài đặt thuật toán nén giải nén liệu Run Length Code(RLE) cho tệp nhiều nói lên phát triển Công nghệ thông tin ảnh hưởng tới mặt sống nào? Chúng em xin gửi lời cảm ơn chân thành đến cô Thsy.Hồ Thị Huyền Thương thầy cô tổ Phương Pháp Giảng Dạy giúp đỡ chúng em trình thực hiền đề tài Do nhiều yếu tố khách quan tầm hiểu biết chúng em hạn chế, đề tài thực tập sở nhóm cịn có nhiều sai sót Chúng em mong góp ý chân thành thầy cô bạn để kịp thời sửa chữa để thực tốt lần sau Chúng em xin chân thành cảm ơn! Nhóm SV thực ĐỀ TÀI THỰC TẬP CƠ SỞ GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN Nội dung đề tài : 021 Câu 1: Sử dụng thư điện tử (Email) Các thành phần cấu trúc địa thư điện tử Đăng ký hộp thư, thực chức gửi nhận thư Vấn đề an toàn dùng thư điện tử Câu 2: Bài toán dùng thuật toán sinh thuật toán quay lui Sinh hoán vị Sinh xâu nhị phân Sinh tổ hợp Yêu cầu: - Nêu toán - Nêu thuật tốn - Ví dụ minh họa - Cài đặt thuật tốn ngơn ngữ ( Pascal, C, C++ ) Câu 3: Tìm hiểu khai thác dịch vụ Windows Firewall Windows Câu 4: Nén liệu: Tìm hiểu cài đặt thuật tốn nén giải nén liệu RLE( Run Length Code) cho tệp liệu Yêu cầu: Ngôn ngữ cài đặt : C C++ Báo cáo: - Đề tốn - Mơ tả thuật tốn - Mơ tả modul thiết kế tốn Chương trình ĐỀ TÀI THỰC TẬP CƠ SỞ GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN PHẦN I: SỬ DỤNG THƯ ĐIỆN TỬ (EMAIL) Việc trao đổi thông tin thời đại cơng nghệ thơng tin địi hỏi phải nhanh gọn, đơn giản, xác mà hịm thư điện tử đời thay phần cho việc trao trổi thông tin truyền thống mà bạn biết đến Lá thư gửi hệ thống bưu vật liệu không cần máy nhận hay máy gửi Trong đó, gửi thư điện tử, có tín hiệu điện mã hố nội dung thư điện tử truyền đến máy nhận Do đó, có nội dung hay cách trình bày thư điện tử bảo tồn Trong đó, dùng đường bưu điện người ta gửi vật liệu hàm chứa thêm nội dung hay ý nghĩa khác Điều quan trọng nhiều người Dùng thư điện tử lúc mở phần mềm thư điện tử đọc nên tiện lợi việc phải bỏ thư thùng thư Đồng thời, người dùng thư phải nhập mật vào máy nên thư điện tử khó bị người chung đọc so với thư gửi bưu điện Nhưng ngược lại, tay tin tặc xa lạ xâm nhập vào hệ thống thư điện tử cá nhân mật mã hay hệ thống an toàn phần mềm bị bẻ gãy Khối lượng gửi nhận thư điện tử nhiều thư bưu điện nhiều lần Đối với dịch vụ thư điện tử dung lượng lên đến hàng Gbyte dịch vụ Gmail chẳng hạn, hay nhiều Số thư dự trữ dung lượng tương đương với vài tự điển bách khoa Các trường hợp thư phá hoại hệ thống bưu điện (như thư có bột antrax, thư bom, ) có gây thương vong Ngược lại, hệ thống thư điện tử, gây thương tích mà thường phải đương đầu với nhiều vấn nạn virut máy tính thư nhũng lam(spam mail) thư quảng cáo (advertisement mail) thư khiêu dụ tình dục (pornography mail), đặc biệt cho trẻ em, lại nhiều Đối với loại thư độc hại (malicious mail) người dùng cần phải cài đặt thêm tiện ích chức lọc swanx có phần mềm hay phải mua thêm Các dạng chuyển tiếp (chain mail) người nhận lại chuyển nội dung thư cho hay nghiều người khác thường phổ biến hai hệ thống bưu thư điện tử Khả ảnh hưởng thông tin ĐỀ TÀI THỰC TẬP CƠ SỞ GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN hai loại tương đương thư điện tử chuyển tiếp có nhiều xác suất gây nhiễm virus máy tính • Hộp thư nơi cất giữ thư từ với địa hẳn hoi Tương tự, hệ thống thư điện tử, hộp thư tương đương với phần liệu chứa nội dung email cộng vói điạ người chủ thư điện tử Điểm khác biệt hộp thư điện tử có nhiều chức việc xố bỏ thư cũ Mỗi người có hay nhiều địa email (và phải đăng ký qua hệ thống đó) Mỗi hộp thư có địa phân biệt không trùng với địa email khác Như hồn tồn khơng nhầm lẫn dùng danh từ hộp thư điện tử hay hòm thư điện tử (email account) để phần mềm email đăng kí dùng để nhận gửi email cho cá nhân Cấu trúc dịa gmail ( hay email) Một địa email bao gồm Tên_định_dạng_thêm tên_email@tên_miền ba phần có dạng Phần tên_định_dạng_thêm: Đây dạng tên người đọc dễ dàng nhận người gửi hay nơi gửi Tuy nhiên, thư điện tử người ta khơng cần cho tên định dạng thư điện tử gửi nơi Thí dụ: Trong địa gửi thư tới viết dạng Nguyễn Thị A nguyenthia111@yahoo.com hay viết dạng nguyenthia111@yahoo.com phần mềm thư điện tử hoạt động xác gửi đến địa Phần tên_email: Đây phần xác định hộp thư Thông thường, cho dễ nhớ, phần hay mang tên người chủ ghép với vài kí tự đặc biệt Phần tên thường người đăng kí hộp thư điện tử đặt Phần gọi Tên đại phương Phần tên_miền: Đây tên miền nơi cung cấp thư điện tử.Ngay sau phần tên_email bắt đầu chữ "@" nối liền sau tên miền ĐỀ TÀI THỰC TẬP CƠ SỞ GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN Cách đăng ký thư điện tử có nhiều phần mềm thư điện tử tiện ích dễ dáng sử dụng nhiên đại đa số người dùng quan tâm đến Gmail thơng dụng khả lưu trữ lớn Để đăng ký tài khoản Gmail làm sau Đầu tiên vào https://www.google.com sau chọn Gmail cửa sổ ĐỀ TÀI THỰC TẬP CƠ SỞ GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN Chọn tạo tài khoản xong điền đầy đủ thông tin vào mục ghi hình lưu ý hình bạn ý phần lựa chọn ngơn ngữ lựa chọn ngơn ngữ mà người dung tùy chọn ĐỀ TÀI THỰC TẬP CƠ SỞ GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN Cửa sổ đăng ký • Sau điền đầy đủ thông tin vào chọn I accepe Create my account ( tao tai khoản) Sau lam xong ĐỀ TÀI THỰC TẬP CƠ SỞ GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN Chức thư điện thử Ngồi chức thơng thường để nhận soạn thảo email, phần mềm thư điện tử cịn cung cấp thêm chức khác là: ĐỀ TÀI THỰC TẬP CƠ SỞ GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG • • NHĨM 03-LỚP 48KTIN Lịch làm việc (calendar): người ta dùng thời khố biểu Trong phần mềm mạnh, chức cịn giữ nhiệm vụ thơng báo kiện đăng kí lịch làm việc trước xảy cho người chủ hộp thư Sổ địa (addresses hay contacts): dùng để ghi nhớ tất địa cần thiết cho công việc hay cho cá nhân Sổ tay (note book hay notes): để ghi chép, hay ghi nhớ điều Cơng cụ tìm kiếm thư điện tử (find hay search mail) Để hiểu hết tất chức phần mềm thư điện tử người dùng dùng chức giúp đỡ (thường mở chức cách nhấn nút bên phần mềm thư điện tử Các mệnh lệnh Anh ngữ để vào ngăn chứa thư Đây thực ngăn chứa thư từ phân loại theo tình trạng email cho tiện dùng Người chủ thư tự xếp loại mail hay chúng xếp cách tự động (do cài đặt hay mặc định) Inbox có nghĩa Hộp thư nhận hay Hộp thư vào: Đây ngăn đựng thư nhận thư mục inbox nơi mà mà lưu trữ thư mà người khác người gửi đến bạn truy nhập xem thơng tin nội dung mà hộp thư đến lúc mà ban đăng nhập vào Gmail Outbox có nghĩa Hộp thư gửi hay Hộp thư ra: Đây ngăn đựng thư chờ gửi Thơng thường, hệ thống email hoạt động tốt thư nằm hộp thời gian ngắn (vài giây đến vài phút tối đa) Do đó, ngăn chứa thường ngăn trống • Draft có nghĩa Ngăn nháp: Để chứa email chưa hoàn tất hay hoàn tất chủ thư chưa muốn gửi • Trash, Trash can hay Deleted Item có nghĩa Ngăn xóa: Cịn gọi Thùng rác hay Ngăn thư xóa Đây chỗ dự phòng tạm thời chứa email xóa bỏ thời gian Chức tiện lợi để phục hồi hay đọc lại thư điện tử cần thiết lỡ tay bị xóa Sent, sent Messages hay Sent Item có nghĩa Ngăn gửi: Nơi dùng để chứa thư gửi ĐỀ TÀI THỰC TẬP CƠ SỞ GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG • NHĨM 03-LỚP 48KTIN Junk hay Bulk có nghĩa Ngăn thư linh tinh: Đây nơi chứa mail lọc bị loại cách tự động, gọi Thùng thư rác hay Ngăn chứa tạp thư Thường nơi chứa thư quảng cáo, thư nhũng lạm, thư gởi đến số lượng lớn địa có nội dung, hay loại thư độc hại Inbox(thư đến) • Các mệnh lệnh Anh ngữ thường thấy phần mềm thư điện tử New hay compose có nghĩa Thảo thư mới: Đây mệnh lệnh cho phép bắt đầu soạn thảo email Send có nghĩa Gửi: Mệnh lệnh tức khắc gửi thư tới địa phần To, CC, BCC ĐỀ TÀI THỰC TẬP CƠ SỞ 10 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN 1.3.2.3.Advanced: Hình Trong cửa sổ cho ta lựa chọn để thiết lập liên kết Internet bảo vệ window firewall: - Network connection settings: Thiết lập liên kết mạng - Security logging : An ninh đăng nhập - ICMP(internet control message protocol) :kiểm soát giao thức internet - Default settings : Thiết lập ngầm định ĐỀ TÀI THỰC TẬP CƠ SỞ 40 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN * Networkconnection settings: Thiết lập liên kết mạng Hình 11 * Service (Dịch vụ) Ở lựa chọn cho phép ta lựa chọn dich vụ chạy mạng bạn mà người dụng Internet truy cập được, có lựa chọn sau: - FTP Server ( File transfer protocol ): dịch vụ chuyển file cho phép file truyền, chép từ hệ thống máy đến hệ thống máy khác - Internet mail access protocol version (IMAP3): giao thức truy cập thư tín Internet cho phép quản lý thư từ gửi vào từ gửi - Internet mail access protocol version (IMAP4) : giống IMAP3 - Internet mail server :dịch vụ mail internet - Pos – office protocol version (pop3) giao thức bưu điện tức hoạt động để quản lý lưu lượng thư vào máy tính - Remote Desktop: cho phép truy cập, điều khiển máy tính từ xa - Secure web server : Dịch vụ bảo mật web - Telnet server : Tạo liên kết từ xa máy tính bạn với thiết bị có mạng ĐỀ TÀI THỰC TẬP CƠ SỞ 41 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN - Web server : Dịch vụ web kiểm soát hoạt động máy truy cập web Ngoài thêm kết nối cách chọn Add,chỉnh sữa lựa chọn kết nối cách chọn Edit Hình 11 ĐỀ TÀI THỰC TẬP CƠ SỞ 42 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN * ICMP (Internet control messasge protocol) Hình 12 Kiểm sốt giao thức internet cho phép tin nhắn máy tính, mạng lưới chia sẻ thơng tin tình trạng lỗi, lựa chọn yêu cầu thông tin từ internet máy tính trả lời cho phép dịch vụ qua Dưới số lựa chọn: - Allow incoming echo request: Cho phép yêu cầu phản hồi lại thông tin - Allow incoming timestamp request :Cho phép yêu cầu thời gian - Allow incoming mask request: Cho phép yêu cầu mặt nạ (mask) - Allow incoming router request: Cho phép yêu cầu định tuyến - Allow outgoing destination unreachable: Cho phép gửi thư tới unreachable (không thể đến,không thể tới) - Allow outgoing source quench: Gửi thư cho phép mỡ nguồn nhúng (quench) - Allow outgoing parameter problem: Gửi thư cho phép tham số vấn đề - Allow outgoing time exceeded: Gửi thư cho phép vượt thời gian ĐỀ TÀI THỰC TẬP CƠ SỞ 43 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN - Allow redirect: Cho phép chuyển hướng - Allow outgoing pasket too big: Cho phép gửi thư gói lớn * Security logging : An ning đăng nhập Hình 13 Bạn tạo tập tin đăng nhập cho mục đích xử lý cố ĐỀ TÀI THỰC TẬP CƠ SỞ 44 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN * Default settings Thiết lập ngầm định Hình 14 Khi ta chọn restore Defaults sẻ khơi phục lại tất cửa sổ cài đặt tường lửa trạng thái ngầm định 1.4 Khai thác dịch vụ firewall windown service: Ngoài chức firewall windown firewall windown service cịn có ưu như: • Windows Firewall : Protect all network connections: thiết lập buộc tường lửa tắt hay mở cho định danh • Windows Firewall : Do not allow exceptions: Tựy chọn thị cho tường lửa từ chối trường hợp đặc biệt định Kích hoạt thiết lập tương đương với việc chọn “ Don’t allow exceptions ” (Không cho phép trường hợp đặc biệt) thẻ General Windows Firewall Control Panel • Windows Firewall: Define program exceptions Properties: Thiết lập cho phép bạn tuỳ chọn định chương trình, giúp bạn cấp phép cho trường hợp đặc biệt “tấm vé” để qua tường lửa ĐỀ TÀI THỰC TẬP CƠ SỞ 45 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHĨM 03-LỚP 48KTIN • Windows Firewall: Prohibit notifications: Thiết lập dừng thông báo tường lửa chương trình u cầu Windows Firewall bổ sung vào danh sách chương trình cho phép • Windows Firewall: Allow logging: Tuỳ chọn cho phép bạn cấu hình cấp bậc ghi lưu trữ thơng tin cho tường lửa, kích cỡ ghi, tên vị trí… Ngồi cịn firewall cịn có tính bảo mật nâng cao tích hợp Windows Server 2008 Group Policy, cho phép bạn sử dụng giao diện điều khiển Group Policy Group Policy Editor để tạo sách tường lửa cho máy tính tồn miền, OU site PHÂN IV: NÉN DỮ LIỆU 4.1 Đề tốn: Tìm hiểu cài đặt thuật toán nén giải nén liệu RLE ( Run Length Code) cho tệp liệu 4.2 Tìm hiểu chung: 4.2.1 Nén liệu: Dữ liệu gốc qua mã hóa, mã hóa làm giảm dung lượng thông tin “dư thừa” liệu gốc làm cho lượng thông tin thu sau nén thường nhỏ liệu gốc nhiều Mục đích tiết kiệm nhớ, giảm chi phí việc lưu trữ liệu chi phí thời gian để truyền liệu xa truyền thông cho phép khôi phục lại liệu ban đầu mà đảm bảo chất lượng liệu 4.2.2 Giải nén liệu: Dữ liệu nén qua giải mã liệu, giải mã thực giải nén để thu liệu gốc ban đầu Việc giải nén thường dựa vào thông tin kèm theo liệu nén, tùy thuộc vào kiểu nén hay phương pháp nén mà liệu giải nén có hồn tồn giống với liệu gốc ban đầu hay khơng Ta có sơ đồ nén giải nén sau: ĐỀ TÀI THỰC TẬP CƠ SỞ 46 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHĨM 03-LỚP 48KTIN 4.2.3 Mục đích: Thu nhỏ dũ liệu cần thiết tiết kiệm tài nguyên lưu trữ tiết kiệm thời gian, thông lượng đường truyền cần truyền dũ liệu mạng WAN, LAN Ngoài việc nén liệu cách mã hoá liệu nhằm mục đích bảo mật liệu 4.2.4 Phương thức: Khi nói đến phương thức nén liệu ta cần hiểu có hai cơng nghệ hai loại thuật toán nén liệu nén mát thông tin nén không mát thông tin 4.2.4.1 Nén khơng mát thơng tin: Khi ta có liệu gọi X nhờ thuật toán nén không mát thông tin ta thu liệu Xc sau nhờ việc giải nén liêu Xc ta thu Y liệu X liệu Y giống hoàn toàn Những thuật toán nén dạng RLE, Huffman, Lempel-Ziv Những liệu dạng văn bản, ký tụ thường sử dụng cơng nghệ nén Ví dụ giá trị 65 ASSCI ‘A’ sau nén giải nén sử dụng công nghệ mát thông tin sai lệch mã 65 thành 66 dẫn đến ‘B’ chấp nhận 4.2.4.2 Nén mát thơng tin: Cịn ta sử dụng cơng nghệ nén liệu có mát thơng tin X Y theo ví dụ khơng giống hoàn toàn việc chuẩn xác liệu sau giải nén với liệu ban đầu có thê tin cậy cịn thuộc vào thuật tốn mà sử dung kích thước liệu dùng để thao tác sử lý Những thuật toán thường sử dụng nén tín hiệu ( tệp liệu dạng nhị phân liệu tệp ảnh, video, audio) Có nhiều phương pháp nén giải nén đời khơng ngừng cải tiến để ngày hồn thiện, đem lại hiệu nén cao chất lượng giải nén tốt Trong đề tài em nghiên cứu phương pháp nén giải nén mã loạt dài Run Length Coding (RLE) Qua đề tài cho biết hiệu việc nén giải nén 4.3 Phương pháp mã hóa độ dài loạt RLE: Mã hoá theo độ dài loạt RLE (Run Length Encoding) phương pháp nén liệu dựa cắt bớt dư thừa không gian Loạt định nghĩa dãy phần tử liệu liên tiếp có chung giá trị Nguyên tắc: ĐỀ TÀI THỰC TẬP CƠ SỞ 47 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN Nguyên tắc phương pháp phát loạt phần tử liệu lặp lặp lại liên tiếp, ví dụ:110000000000000011 Ta thấy phần tử có giá trị xuất nhiều lần liên tiếp thay phải lưu trữ tồn phần tử có giá trị ta cần lưu trữ chúng cách sử dụng cặp (độ dài loạt, giá trị) Loại dư thừa đơn giản tập tin đường chạy dài gồm kí tự lặp lại, điều thường thấy tập tin đồ hoạ bitmap, vùng liệu tập tin chương trình, số tập tin văn Ví dụ, xét chuỗi sau: AAAABBBAABBBBBCCCCCCCCDABCBAAABBBBCCCD Chuỗi mã hố cách đọng cách thay chuỗi kí tự lặp lại thể kí tự lặp lại với biến đếm số lần kí tự lặp lại Ta muốn nói chuỗi gồm bốn chữ A theo sau ba chữ B lại theo sau hai chữ A, lại theo sau năm chữ B Việc nén chuỗi theo phương pháp gọi mã hoá độ dài loạt Khi có loạt dài, việc tiết kiệm đáng kể Có nhiều cách để thực ý tưởng này, tuỳ thuộc vào đặc trưng ứng dụng (các loạt chạy có khuynh hướng tương đối dài hay khơng ? Có bit dùng để mã hố kí tự mã ?) Nếu ta biết chuỗi chứa chữ cái, ta mã hố biến đếm cách đơn giản cách xen kẻ số với chữ Vì chuỗi kí tự mã hoá lại sau: #A4#B3#A2#B5#C8#D1#A1#B1#C1#B1#A3#B4#C3#D1 Ở "#A4" có nghĩa "bốn chữ A" Chú ý khơng đáng để mã hố loạt chạy có độ dài cần đến hai kí tự để mã hoá Đối với tập tin nhị phân phiên tinh chế phương pháp dùng để thu tiết kiệm đáng kể Ý tưởng lưu lại độ dài loạt, tận dụng kiện loạt chạy thay đổi để tránh phải lưu số Điều giả định có vài loạt chạy ngắn (Ta tiết kiệm bit loạt chạy độ dài đường chạy lớn số bit cần để biễu diễn dạng nhị phân), khó có phương pháp mã hoá độ dài loạt hoạt động thật tốt hầu hết loạt chạy dài ĐỀ TÀI THỰC TẬP CƠ SỞ 48 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHĨM 03-LỚP 48KTIN Việc mã hố độ dài loạt cần đến biễu diễn riêng biệt cho tập tin cho mã hoá nó, khơng thể dùng cho tập tin, điều hồn tồn bất lợi, ví dụ, phương pháp nén tập tin kí tự đề nghị không dùng chuỗi kí tự có chứa số Nếu kí tự khác sử dụng để mã hố số đếm, khơng làm việc với chuỗi chứa kí tự Giả sử ta phải mã hố kí tự từ bảng chữ cố định cách dùng kí tự từ bảng chữ Để minh hoạ, giả sử ta phải mã hố chuỗi từ chữ đó, ta giả định ta có 26 chữ bảng chữ (và khoảng trống) để làm việc Để dùng vài chữ để biểu diễn số kí tự khác biểu diễn phần tử chuỗi mã hố, ta phải chọn kí tự gọi kí tự "Escape" Mỗi xuất kí tự báo hiệu hai chữ tạo thành cặp (số đếm, kí tự) với số đếm biểu diễn cách dùng kí tự thứ i bảng chữ để biểu diễn số i Vì vậy, chuỗi ví dụ biểu diễn sau với Q xem kí tự "Escape" QDABBBAABQHCDABCBAAAQDBCCCD Tổ hợp kí tự "Escape", số đếm kí tự lặp lại gọi dãy Escape Chú ý khơng đáng để mã hố đường chạy có chiều dài bốn kí tự, cần đến ba kí tự để mã hố loạt chạy Trong trường hợp thân kí tự "Escape" xuất dãy kí tự cần mã hoá ta sử dụng dãy "Escape" với số đếm (kí tự space) để biểu diễn kí tự "Escape" Như trường hợp kí tự "Escape" xuất nhiều làm cho tập tin nén phình to trước Các loạt chạy dài cắt để mã hố nhiều dãy Escape, ví dụ, loạt chạy gồm 51 chữ A mã hoá QZAQYA cách dùng Phương pháp mã hoá độ dài loạt thường áp dụng cho tập tin đồ hoạ bitmap thường có mảng lớn màu biểu diễn dạng bitmap chuỗi bit có đường chạy dài Trên thực tế, dùng tập tin PCX, RLE 4.4 Mô tả thuật toán: 4.4.1 Thuật toán giải nén: Lấy byte While ( phẩn tử mảng cuối cùng) ĐỀ TÀI THỰC TẬP CƠ SỞ 49 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN { if( byte có giá trị nhau) { Đếm có byte liền kề sau có giá trị Đẩy byte mảng kết Đẩy giá trị đếm vào byte mảng kết Cập nhật trở mảng nguồn Lấy byte } Else { Đẩy byte trước vào mảng kết Biến lưu byte trước giá trị gần byte sau Lấy tiếp byte làm byte liền sau Cật nhật trỏ mảng nguồn } } 4.4.2 Thuật toán giải nén: Lấy byte, đẩy byte vừa lấy vào mảng kết Lấy tiếp byte kế sau While (phần tử mảng cuối cùng) { If(2 byte có giá trị nhau) { Lấy byte kế tiếp, giá trị đếm phần tử trùng “đếm” Đẩy byte “kế sau” vào mảng kết Đẩy đếm byte vào mảng kết giá trị “kế sau” Cập nhật trỏ mảng nguồn Lấy byte } Else { Đẩy byte trước vào mảng kết Biến lưu byte trước gán giá trị byte Lấy tiếp byte làm byte liền kế sau ĐỀ TÀI THỰC TẬP CƠ SỞ 50 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN Cập nhật trỏ mảng nguồn } } 4.5 Modul thiết kế toán: 4.5.1 Chương trình nén: int RleEncodeFile(char *inFile, char *outFile) { FILE *fpIn; FILE *fpOut; int currChar, prevChar; unsigned char count; if ((fpIn = fopen(inFile, "rb")) == NULL) { perror(inFile); return FALSE; } if (outFile == NULL) { fpOut = stdout; } else { if ((fpOut = fopen(outFile, "wb")) == NULL) { fclose(fpIn); perror(outFile); return FALSE; } } prevChar = EOF; count = 0; while ((currChar = fgetc(fpIn)) != EOF) { fputc(currChar, fpOut); ĐỀ TÀI THỰC TẬP CƠ SỞ 51 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN if (currChar == prevChar) { count = 0; while ((currChar = fgetc(fpIn)) != EOF) { if (currChar == prevChar) { count++; if (count == UCHAR_MAX) { fputc(count, fpOut); prevChar = EOF; break; } } else { fputc(count, fpOut); fputc(currChar, fpOut); prevChar = currChar; break; } } } else { prevChar = currChar; } if (currChar == EOF) { fputc(count, fpOut); break; } } ĐỀ TÀI THỰC TẬP CƠ SỞ 52 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN fclose(fpOut); fclose(fpIn); return TRUE; } 4.5.2 Chương trình giải nén: int RleDecodeFile(char *inFile, char *outFile) { FILE *fpIn; FILE *fpOut; int currChar, prevChar; unsigned char count; if ((fpIn = fopen(inFile, "rb")) == NULL) { perror(inFile); return FALSE; } if (outFile == NULL) { fpOut = stdout; } else { if ((fpOut = fopen(outFile, "wb")) == NULL) { fclose(fpIn); perror(outFile); return FALSE; } } prevChar = EOF; while ((currChar = fgetc(fpIn)) != EOF) { fputc(currChar, fpOut); ĐỀ TÀI THỰC TẬP CƠ SỞ 53 GVHD: Thsy HỒ THỊ HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN if (currChar == prevChar) { count = fgetc(fpIn); while (count > 0) { fputc(currChar, fpOut); count ; } prevChar = EOF; } else { prevChar = currChar; } } fclose(fpOut); fclose(fpIn); return TRUE; } 4.6 Chương trình: phụ lục II 4.7 Chạy chương trình: ĐỀ TÀI THỰC TẬP CƠ SỞ 54 ... HUYỀN THƯƠNG NHÓM 03-LỚP 48KTIN Nội dung đề tài : 021 Câu 1: Sử dụng thư điện tử (Email) Các thành phần cấu trúc địa thư điện tử Đăng ký hộp thư, thực chức gửi nhận thư Vấn đề an toàn dùng thư điện. .. Hộp thư nơi cất giữ thư từ với địa hẳn hoi Tương tự, hệ thống thư điện tử, hộp thư tương đương với phần liệu chứa nội dung email cộng vói điạ người chủ thư điện tử Điểm khác biệt hộp thư điện tử. .. tạp thư Thường nơi chứa thư quảng cáo, thư nhũng lạm, thư gởi đến số lượng lớn địa có nội dung, hay loại thư độc hại Inbox (thư đến) • Các mệnh lệnh Anh ngữ thư? ??ng thấy phần mềm thư điện tử New