Nhập môn Tin học - Chương 1: Giới thiệu về tin học

Tài liệu Nhập môn Tin học - Chương 1: Giới thiệu về tin học: NHẬP MƠN TIN HỌC Chương 1 GIỚI THIỆU VỀ TIN HỌC 2Nội dung chương 1 I. Máy tính điện tử II. Phân loại máy tính III. Ngành Tin Học 3I. Máy tính điện tử (Computer) 1. ðịnh nghĩa máy tính điện tử 2. Tổ chức máy tính điện tử 41. ðịnh nghĩa máy tính điện tử Máy tính là thiết bị: • Thực hiện các tính tốn • Thực hiện các quyết định luận lý Máy tính thực hiện các thao tác với tốc độ rất nhanh so với con người • Các máy tính hiện đại cĩ thể thực hiện hàng tỷ phép cộng trong 1 giây Máy tính thực hiện các thao tác dưới sự điều khiển của chương trình (program) 5ðịnh nghĩa máy tính điện tử (tt) Chương trình (program): • Là tập hợp các lệnh/chỉ thị (instructions) • Do người lập trình (programmer) tạo ra Máy tính điện tử là thiết bị xử lý dữ liệu dưới sự điều khiển của chương trình 62. Tổ chức máy tính điện tử Máy tính bao gồm các thành phần: • Bộ xử lý trung tâm (Central Processing Unit, CPU) ðơn vị xử lý ðơn vị điều khiển • Bộ nhớ (memory) • Bộ nhớ ngồ...

pdf346 trang | Chia sẻ: Khủng Long | Lượt xem: 1545 | Lượt tải: 1download
Bạn đang xem trước 20 trang mẫu tài liệu Nhập môn Tin học - Chương 1: Giới thiệu về tin học, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
NHẬP MƠN TIN HỌC Chương 1 GIỚI THIỆU VỀ TIN HỌC 2Nội dung chương 1 I. Máy tính điện tử II. Phân loại máy tính III. Ngành Tin Học 3I. Máy tính điện tử (Computer) 1. ðịnh nghĩa máy tính điện tử 2. Tổ chức máy tính điện tử 41. ðịnh nghĩa máy tính điện tử Máy tính là thiết bị: • Thực hiện các tính tốn • Thực hiện các quyết định luận lý Máy tính thực hiện các thao tác với tốc độ rất nhanh so với con người • Các máy tính hiện đại cĩ thể thực hiện hàng tỷ phép cộng trong 1 giây Máy tính thực hiện các thao tác dưới sự điều khiển của chương trình (program) 5ðịnh nghĩa máy tính điện tử (tt) Chương trình (program): • Là tập hợp các lệnh/chỉ thị (instructions) • Do người lập trình (programmer) tạo ra Máy tính điện tử là thiết bị xử lý dữ liệu dưới sự điều khiển của chương trình 62. Tổ chức máy tính điện tử Máy tính bao gồm các thành phần: • Bộ xử lý trung tâm (Central Processing Unit, CPU) ðơn vị xử lý ðơn vị điều khiển • Bộ nhớ (memory) • Bộ nhớ ngồi (secondary storage) • Thiết bị nhập (input device) • Thiết bị xuất (output device) 7Tổ chức máy tính điện tử (tt) Mơ hình máy tính Von-Neumann 8Tổ chức máy tính điện tử (tt)  Bus: đường dẫn tín hiệu Dịng dữ liệu trong máy tính Von Neumann 9Bộ xử lý trung tâm  ðiều khiển mọi hoạt động của máy tính  Thực hiện các thao tác xử lý • Tính tốn (cộng, trừ, ) • So sánh, quyết định,  Thực hiện các thao tác điều khiển • Lấy lệnh từ bộ nhớ • Giải mã lệnh: xác định thao tác cần thực hiện  Hoạt động của CPU • Lấy lệnh – Giải mã lệnh – Thực hiện lệnh 10 Chu kỳ Lấy lệnh – Giải mã – Thực hiện lệnh (1) Lấy lệnh (2) Giải mã lệnh (3) Lấy dữ liệu (4) Thực hiện lệnh 11 Bộ nhớ  Là nơi máy tính làm việc Bao gồm các ơ nhớ: • Mỗi ơ nhớ cĩ địa chỉ (address) và nội dung (content) dạng nhị phân 12 Ví dụ: địa chỉ và nội dung các ơ nhớ 13 Bộ nhớ ngồi  Là nơi lưu trữ dữ liệu lâu dài Các dạng thơng dụng: • ðĩa từ • ðĩa quang (đĩa CD/VCD/DVD) 14 Thiết bị nhập  Là nơi nhập dữ liệu, chương trình Các dạng thơng dụng: • Bàn phím (keyboard) • Con chuột (mouse) • Máy quét (scanner) 15 Thiết bị xuất  Là nơi lưu kết quả xử lý Các dạng thơng dụng: • Màn hình (monitor) • Máy in (printer) 16 II. Phân loại máy tính 1. Phân loại theo thứ tự xuất hiện  Lịch sử máy tính 2. Phân loại theo khả năng hoạt động 17 1. Phân loại theo thứ tự xuất hiện Thế hệ máy tính Cơng nghệ phần cứng Nguyên lý hoạt động phần mềm 18 Sơ lược lịch sử máy tính Thế hệ 1 ðèn điện tử (1945-1953) Tuần tự; ngơn ngữ máy Thế hệ 2 Transistor (1954-1965) Dạng batch; ngơn ngữ cấp cao Thế hệ 3 Mạch tích hợp (IC) (1965-1980) Dạng đa chương Thế hệ 4 Mạch tích hợp mật độ cao (1980-) Dạng đa chương hiện đại 19 Các linh kiện chế tạo phần cứng máy tính 20 Sự phát triển của ngơn ngữ lập trình Ngơn ngữ máy (machine language) • Dạng nhị phân của tập lệnh CPU Hợp ngữ (assembly language) • Dạng gợi nhớ (văn bản) của tập lệnh CPU Ngơn ngữ cấp cao (high-level language) • Ví dụ: C++, C#, Java, 21 2. Phân loại theo khả năng hoạt động Máy vi tính – Microcomputer Personal Computer (PC) Máy tính nhỏ – Minicomputer Máy tính lớn – Mainframe Siêu máy tính – Supercomputer 22 III. Ngành Tin Học  Computing, Computer Science, Information Technology  Tin học, Cơng nghệ thơng tin 1. Tin học là cơng cụ 2. Tin học là ngành khoa học 23 1. Tin học là cơng cụ Programmer / User Applications Programmer (uses tools) User with No Computer Background Systems Programmer (builds tools) Domain-Specific Programs 24 Tin học là cơng cụ (tt) Người lập trình Người lập trình ứng dụng (sử dụng cơng cụ) Người sử dụng đầu cuối Người lập trình hệ thống (xây dựng cơng cụ) Chương trình ứng dụng 25 2. Tin học là ngành khoa học a. Các lãnh vực nghiên cứu b.Các chuyên ngành đào tạo 26 a. Các lãnh vực nghiên cứu Các lãnh vực hệ thống Các lãnh vực ứng dụng 27 Các lãnh vực nghiên cứu hệ thống  Cấu trúc dữ liệu và thuật giải (Algorithms and Data Structures)  Ngơn ngữ lập trình (Programming languages)  Kiến trúc máy tính (Computer Architecture)  Hệ điều hành (Operating Systems)  Kỹ thuật phần mềm (Software Engineering)  Truyền thơng giữa người và máy (Human-Computer Communication)  28 Các lãnh vực nghiên cứu ứng dụng  Tính tốn số và ký hiệu (Numerical and Symbolic Computation)  Cơ sở dữ liệu và xử lý thơng tin (Databases and Information Retrieval)  ðồ họa (Graphics)  Trí tuệ nhân tạo (Artificial Intelligence)  Truyền thơng (Communication)  Tin học trong Sinh học (Bioinformatics)  29 b. Các chuyên ngành đào tạo  Theo Dự Thảo Chương Trình Khung Giáo Dục ðại Học – Nhĩm ngành Cơng Nghệ Thơng Tin của Bộ Giáo Dục và ðào Tạo • Khoa học máy tính • Kỹ thuật máy tính • Kỹ thuật phần mềm • Hệ thống thơng tin • Mạng máy tính và truyền thơng 30 Các chuyên ngành đào tạo (tt)  Theo Computing Curricula 2005 (CC 2005), là dự án chung của các tổ chức: • The Association for Computing Machinery (ACM) • The Association for Information Systems (AIS) • The Computer Society (IEEE-CS) 31 Các chuyên ngành đào tạo theo CC2005 Tin học/Cơng nghệ Thơng tin gồm các chuyên ngành đào tạo: • Khoa học máy tính (Computer Science) • Kỹ thuật máy tính (Computer Engineering) • Kỹ thuật phần mềm (Software Engineering) • Hệ thống thơng tin (Information Systems) • Cơng nghệ thơng tin (Information Technology) 32 Vị trí các chuyên ngành đào tạo EE: Electrical Engineering 33 Ngành Khoa học máy tính Bao gồm các vấn đề từ nền tảng lý thuyết đến phát triển các ứng dụng hiện đại  Thiết kế và hiện thực phần mềm  Phát triển các kỹ thuật mới trong ứng dụng máy tính  Phát triển các phương pháp hiệu quả hơn trong ứng dụng máy tính 34 Ngành Khoa học máy tính (tt) 35 Ngành Kỹ thuật máy tính Bao gồm các vấn đề về thiết kế và hiện thực máy tính, các hệ thống dựa trên máy tính (computer-based systems)  Thiết kế phần cứng hệ thống kỹ thuật số (máy tính, hệ thống truyền thơng, )  Phát triển phần mềm điều khiển thiết bị, phần giao tiếp với thiết bị  Phát triển phần cứng, phần mềm các dạng thiết bị nhúng (embedded systems) 36 Ngành Kỹ thuật máy tính (tt) 37 Ngành Kỹ thuật phần mềm Phát triển và bảo trì các hệ thống phần mềm tin cậy, hiệu quả, đáp ứng các yêu cầu của người sử dụng Các kỹ thuật phát triển, bảo trì phần mềm ðánh giá các yêu cầu của người sử dụng và đáp ứng các yêu cầu này 38 Ngành Kỹ thuật phần mềm (tt) 39 Ngành Hệ thống thơng tin Tích hợp các giải pháp cơng nghệ thơng tin vào hoạt động của cơ quan, doanh nghiệp  Tập trung vào “thơng tin”, với “cơng nghệ” là phương tiện để tạo, xử lý, phân phối thơng tin theo yêu cầu Yêu cầu nắm vững về quản lý, thực hiện đặc tả, thiết kế, hiện thực các hệ thống thơng tin 40 Ngành Hệ thống thơng tin (tt) 41 Ngành Cơng nghệ thơng tin Tích hợp các giải pháp cơng nghệ thơng tin và hoạt động của cơ quan, doanh nghiệp  Tập trung vào “cơng nghệ”, để phát triển và bảo trì các hạ tầng cơng nghệ thơng tin cho cơ quan, doanh nghiệp  Thiết kế, cài đặt, điều chỉnh, bảo trì hệ thống thơng tin 42 Ngành Cơng nghệ thơng tin (tt) 43 Ngành Mạng máy tính và Truyền thơng Thiết kế, bảo trì, quản lý các hệ thống mạng máy tính và truyền thơng Các vấn đề nguyên lý về xử lý số tín hiệu, truyền dữ liệu, truyền thơng đa phương tiện, mạng máy tính  Thiết kế, quản lý, lập trình, bảo mật các mạng máy tính 44 Mơn học NHẬP MƠN TIN HỌC  Phần LÝ THUYẾT • Chương 1 – Giới thiệu về Tin Học • Chương 2 – Tổ chức máy vi tính • Chương 3 – Biểu diễn dữ liệu • Chương 4 – Giới thiệu Hệ ðiều Hành • Chương 5 – Giới thiệu Mạng Máy Tính 45 Mơn học NHẬP MƠN TIN HỌC  Phần THỰC HÀNH • Phần A – Hệ ðiều hành Windows • Phần B – Microsoft Word • Phần C – Microsoft Excel • Phần D – Truy cập mạng Internet NHẬP MƠN TIN HỌC Chương 2 TỔ CHỨC MÁY VI TÍNH 2Nội dung chương 2 I. Cấu trúc máy vi tính II. Hoạt động máy vi tính III.Một số thiết bị xuất nhập IV.Các khái niệm cơ bản về phần mềm 3I. Cấu trúc máy vi tính 1. Cấu trúc vật lý 2. Cấu trúc luận lý 41. Cấu trúc vật lý • System Unit: ðơn vị hệ thống (CPU) • Monitor: màn hình • Keyboard: bàn phím • Mouse: chuột • Speakers: loa 5Các đầu nối (connectors) 6Bên trong system unit 7Ví dụ: mainboard 8Sơ đồ khối Intel Chipset 945G 9Các loại CPU Intel 10 Một số loại CPU Core 2 Duo 11 Một số loại CPU Pentium D 12 Các đơn vị bộ nhớ Viết tắt: B , KB, MB, GB, TB 13 2. Cấu trúc luận lý  1 CPU hay nhiều CPU (SMP, Symmetric MultiProcessor) Bộ nhớ Các thiết bị I/O • Mạch điều khiển (Controller) • Thiết bị (Device) Các loại bus 14 Cấu trúc tiêu biểu máy vi tính 15 Cấu trúc tiêu biểu máy vi tính 16 PCI bus Do Intel thiết kế, độc lập với CPU Băng thơng rộng Hỗ trợ Plug-and-Play (thiết lập cấu hình tự động)  PCI 1.0, 2.0, 2.1, 2.2 17 PCI bus (tt) Bus dữ liệu: 32 bit, 64 bit Xung nhịp: 33 MHz, 66 MHz Băng thơng (bandwidth) ~ 133MB/sec ~ 528MB/sec 18 PCI Express bus  Phát triển kiến trúc PCI  tương thích với PCI Băng thơng rộng Bắt đầu từ 200 MB/sec, cĩ thể x2, ..,x32 Hỗ trợ tốt hơn cho truyền thơng, đa phương tiện (audio, video)  Thêm bớt thiết bị khi máy hoạt động (Hot plugging) 19 USB (Universal Serial Bus) Kết nối các thiết bị đặt ngồi (external) ðặc điểm: • Thống nhất đầu nối • Cấp nguồn • Thêm bớt khi máy hoạt động (Hot-plugging) • Tự động thiết lập cấu hình (Plug-and-Play)  Tốc độ: 12 Mbps(1.0), 450 Mbps(2.0)  7 thiết bị, cĩ thể đến 127 thiết bị với Hub 20 Các tài nguyên hệ thống (phần cứng)  I/O address ðịa chỉ I/O  IRQ i (Interrupt ReQuest) Yêu cầu ngắt DMA channel Kênh DMA 21 II. Hoạt động máy vi tính 1. Quá trình khởi động 2. Thực thi chương trình ứng dụng 3. Xử lý lỗi 22 Hệ thống máy tính với phần cứng, phần mềm 23 1. Quá trình khởi động  Power Supply – Nguồn cấp điện ROM BIOS trên mainboard ROM extensions – ROM mở rộng Ví dụ: ROM trên card màn hình, Boot Drive – ðĩa khởi động Boot record – Mẩu tin khởi động Operating system – Hệ điều hành 24 2. Thực thi chương trình ứng dụng Giả sử hệ điều hành đang hoạt động  User yêu cầu thực thi một chương trình • Click trên icon; chọn menu; dịng lệnh  Hệ điều hành xác định vị trí chương trình (và dữ liệu) trên thiết bị nhớ ngồi  Hệ điều hành tìm khoảng trống phù hợp trên bộ nhớ  Hệ điều hành nạp chương trình vào bộ nhớ • Chương trình trên đĩa khơng thay đổi, trên bộ nhớ chỉ là bản sao 25 Thực thi chương trình ứng dụng (tt) Hệ điều hành cung cấp các tài nguyên hệ thống cho chương trình Hệ điều hành khởi động (cho thực thi) chương trình • Khi chương trình được thực thi, hệ điều hành hoạt động bên dưới (background) để cung cấp tài nguyên, thực hiện xuất nhập Khi chương trình kết thúc thì cĩ được ghi trở lại bộ nhớ ngồi? 26 3. Xử lý lỗi Máy tính khơng sử dụng được khi: Các thành phần cĩ lỗi  khơng hoạt động bình thường Cấu hình hệ thống khơng đáp ứng được yêu cầu của phần mềm • Theo system requirements Cĩ hệ thống mới với các tính chất tốt hơn thay thế 27 Xử lý lỗi phần cứng 1) Xác định lỗi 2) Thu thập dữ liệu 3) Chọn giải pháp 4) Thực hiện giải pháp 5) Nếu vấn đề chưa được giải quyết thì lặp lại các bước từ 1 đến 4 6) Nếu vấn đề đã được giải quyết thì ghi nhận lại (văn bản) lỗi và cách giải quyết 28 Xử lý lỗi phần mềm  Thu thập thơng tin từ end-user: • ðã sử dụng chương trình nào? • ðã thực hiện thao tác gì? • Cĩ cài đặt (install) thêm hay gỡ bỏ (uninstall) phần cứng, phần mềm?  Lập lại các triệu chứng của lỗi • Xác định vị trí xảy ra lỗi • Ví dụ: khởi động lại 29 Xử lý lỗi phần mềm (tt) Xác định các thay đổi trên mơi trường • ðã cài đặt chương trình khơng tương thích? • ðã gỡ bỏ chương trình? Xĩa files? Xác định lỗi phần cứng hay lỗi phần mềm Xử lý lỗi: • Copy lại các file đã xĩa • ðiều chỉnh lại các thơng số (đường dẫn, ) • Cài đặt lại phần mềm 30 III. Một số thiết bị xuất nhập 1. ðĩa từ 2. Màn hình 3. Máy in 31 1. ðĩa từ ðĩa cứng với 4 đĩa 32 Cấu trúc một mặt đĩa 33 ðĩa từ (tt)  Track, Sector, Cylinder ðơn vị truy xuất: sector Các bước truy xuất sector: • Di chuyển hệ thống đầu từ đến cylinder chứa sector – Seek time (mili sec) • Chờ sector xoay đến vị trí đầu từ - Rotational latency (rpm) • Truy xuất sector  Thơng số tổng quát: tốc độ truy xuất (Data Transfer Rate) theo MB/sec 34 2. Màn hình Hai dạng thơng dụng: Dùng đèn hình CRT Dùng tinh thể lỏng LCD 35 Màn hình dạng CRT (Cathod Ray Tube) a. CRT b. Quét tia điện tử 36 Màn hình LCD (Liquid Crystal Display) 37 Thơng số màn hình Dot pitch – Kích thước điểm ảnh, ví dụ 0.22mm Refresh rate – Tốc độ làm tươi (hz) Resolution – ðộ phân giải Monitor screen size – Kích thước màn hình, ví dụ 17” Display colors – Số màu 38 3. Máy in Các loại máy in:  In kim – Dot-matrix printer  In phun – InkJet  In laser – Laser printer Thơng số chính: ðộ phân giải – dots per inch (dpi)  Tốc độ in – pages per minute (ppm) 39 Máy in Laser 40 IV. Các khái niệm cơ bản về phần mềm 1. Phần mềm ứng dụng 2. Phần mềm hệ thống 3. Giải quyết vấn đề dùng máy tính 4. Giới hạn của máy tính 41 1. Phần mềm ứng dụng Xử lý văn bản – Word Processor Microsoft Word, Corel WordPerfect Bảng tính – Spreadsheet Excel, Lotus 1-2-3 Quản trị cơ sở dữ liệu – Database Access ðồ hoạ – Graphics Multimedia, Games, CAD (Computer-Aided Design) 42 Phần mềm ứng dụng mạng Web Browser Internet Explorer, Netscape Web-based Applications  E-Mail Microsoft Outlook, Web-Mail  43 2. Phần mềm hệ thống a. Hệ điều hành (Operating System) b. Chương trình cơng cụ, tiện ích (Tools, Utilities) c. Cơng cụ lập trình (Programming Tools) 44 a. Hệ ðiều Hành Với người sử dụng ðược nạp vào bộ nhớ đầu tiên Quản lý các chu kỳ nhập-xử lý-xuất Với chương trình/người lập trình Mở rộng phần cứng máy tính Quản lý tài nguyên hệ thống Ví dụ: Microsoft Windows, Linux, UNIX, MAC OS, . 45 b. Chương trình cơng cụ, tiện ích Hỗ trợ quản lý hệ thống Ví dụ: Norton Ghost/Antivirus Speeddisk Disk Defragmentation Hỗ trợ sử dụng hệ thống hiệu quả hơn Ví dụ: Download Accelerater 46 c. Cơng cụ lập trình Ngơn ngữ lập trình Ngơn ngữ máy – Machine language dạng nhị phân của tập lệnh CPU Ngơn ngữ dùng ký hiệu / Hợp ngữ Symbolic language / Assembly language dạng ký hiệu/gợi nhớ của tập lệnh CPU Ngơn ngữ cấp cao – High-level language 47 Thực thi chương trình hợp ngữ Viết chương trình nguồn dùng hợp ngữ Dùng chương trình dịch hợp ngữ (Assembler) chuyển đổi chương trình nguồn thành chương trình thực thi (trên ngơn ngữ máy tương ứng với một hệ điều hành).  Thực hiện chương trình trên ngơn ngữ máy 48 Thực thi chương trình hợp ngữ (tt) 49 Thực thi chương trình ngơn ngữ cấp cao Viết chương trình nguồn dùng ngơn ngữ cấp cao Cĩ hai phương pháp thực thi: • Biên dịch • Thơng dịch/Phiên dịch 50 Biên dịch (compilation) Dùng chương trình biên dịch (Compiler) chuyển chương trình nguồn thành chương trình trên ngơn ngữ máy  Thực thi chương trình trên ngơn ngữ máy  Thực thi nhanh Cần biên dịch lại khi cĩ thay đổi Ví dụ: ngơn ngữ C,C++, 51 Quá trình biên dịch 52 Thơng dịch (Interpretation) Dùng chương trình thơng dịch (Interpreter) đọc và thực thi từng phát biểu trên chương trình nguồn  Luơn cần chương trình nguồn  Thực thi chậm hơn Ví dụ: Basic, Scripting language, 53 Quá trình thơng dịch 54 JAVA Cĩ thể thực thi trên mọi mơi trường Thực thi chương trình Java: Quá trình biên dịch Quá trình thơng dịch trên JVM (Java Virtual Machine) 55 Mơi trường lập trình Java II 56 Thực thi chương trình Java 57 Chương trình Java trên các mơi trường 58 3. Giải quyết vấn đề dùng máy tính Chia vấn đề lớn thành các vấn đề nhỏ hơn • Divide and conquer • Thực hiện nhiếu lần cho đến khi các vấn đề nhỏ cĩ thể giải quyết trọn vẹn • Áp dụng với các kỹ thuật khác nhau  Thuật giải (algorithm) • Tập hợp các bước (hay lệnh) để giải quyết một vấn đề trong thới gian hữu hạn với dữ liệu hữu hạn 59 Các giai đoạn giải quyết vấn đề Giai đoạn phát triển thuật giải: • Phân tích (analyze) ðịnh nghĩa, phân tích vấn đề • ðề xuất thuật giải (propose algorithm) Xác định các bước giải quyết vấn đề • Kiểm tra thuật giải (test algorithm) Thực hiện các bước trong thuật giải để kiểm tra kết quả của việc giải quyết vấn đề 60 Các giai đoạn giải quyết vấn đề (tt) Giai đoạn hiện thực thuật giải: • Mã hĩa (code) Chuyển thuật giải sang một ngơn ngữ lập trình • Kiểm tra (test) Thực hiện chương trình trên máy tính để kiểm tra kết quả của việc giải quyết vấn đề 61 Các giai đoạn giải quyết vấn đề (tt) Giai đoạn bảo trì: • Sử dụng (use) Sử dụng chương trình • Bảo trì (maintain) ðiều chỉnh chương trình để sửa lỗi (nếu cĩ) hay đáp ứng các yêu cầu tiếp theo của việc giải quyết vấn đề 62 Tương tác giữa các giai đoạn giải quyết vấn đề 63 4. Giới hạn của máy tính Máy tính với phần mềm cĩ thể khơng giải quyết được một vấn đề vì: Giới hạn số học (limits of arithmetic) Giới hạn truyền thơng (limits on communication)  Sự phức tạp của phần mềm (complexity of software) 64 Giới hạn số học Cĩ các giới hạn của phần cứng trong biểu diễn số nguyên và số thực • Ví dụ: số integer 32 bit chỉ biểu diễn được từ -2,147,483,648 đến +2,147,483,647 Cĩ thể dùng phần mềm để vượt qua giới hạn này • Ví dụ: biểu diễn số rất lớn như danh sách liên kết các số nhỏ 65 Ví dụ: biểu diễn số rất lớn 66 Giới hạn truyền thơng Cĩ các giới hạn trên băng thơng (bandwidth) của các đường truyền • Cĩ thể khơng thể đáp ứng yêu cầu của phần mềm Các đường truyền cĩ thể cĩ lỗi • Cĩ thể dùng các dạng mã sửa sai (error- correcting code) 67 Sự phức tạp của phần mềm  Phần mềm cĩ lỗi do: • Sự phức tạp của vấn đề • Trung bình: 25 lỗi(bug)/1000 dịng chương trình Cĩ các vấn đề khơng cĩ giải thuật Cĩ các giải thuật với thời gian thực thi quá lớn NHẬP MƠN TIN HỌC Chương 3 BIỂU DIỄN DỮ LIỆU 2Nội dung chương 3 I. Khái niệm về biểu diễn dữ liệu II. Biểu diễn số nguyên III.Biểu diễn số thực IV.Biểu diễn ký tự V. Dữ liệu âm thanh, hình ảnh 3I. Khái niệm về biểu diễn dữ liệu 1. Dữ liệu trên máy tính 2. Hệ đếm theo vị trí 3. Các hệ đếm thơng dụng 4. Chuyển đổi giữa các hệ đếm 41. Dữ liệu trên máy tính Máy tính là thiết bị đa phương tiện (multimedia device) Máy tính lưu trữ, xử lý, hiển thị các dạng dữ liệu: • Giá trị số (numbers) • Văn bản (text) • Hình ảnh (images, graphics) • Âm thanh (audio) • Hình ảnh động (video) 5Nén dữ liệu (Data Compression) Mục tiêu: giảm kích thước lưu trữ dữ liệu • Tỉ số nén (Compression ratio) Cĩ hai kỹ thuật chính: • Nén khơng mất dữ liệu (lossless): dữ liệu cĩ thể được phục hồi nguyên vẹn từ dữ liệu nén • Nén cĩ mất dữ liệu (lossly): cĩ một phần dữ liệu bị mất khi nén 6Dữ liệu dạng nhị phân Máy tính được thiết kế để sử dụng dữ liệu dạng nhị phân: • Giá thành thấp • ðộ tin cậy cao BIT (Binary digiT): chữ số nhị phân 72. Hệ đếm theo vị trí Xét ví dụ 642 trong hệ đếm theo vị trí cơ số 10: 6 x 102 = 6 x 100 = 600 + 4 x 101 = 4 x 10 = 40 + 2 x 10º = 2 x 1 = 2 = 64210 (642 trong hệ đếm 10) Hệ đếm cơ số 10 Số mũ thể hiện vị trí của chữ số 8Biểu thức tổng quát hệ đếm theo vị trí dn-1 * R n-1 + dn-2 * R n-2 + ... + d1 * R 1 + d0 X = dn-1dn-2d1d0 642 = 6 * 102 + 4 * 10 + 2 R là cơ số của hệ đếm n là số chữ số trong giá trị X di là chữ số tại vị trí thứ i trong giá trị X 9Ví dụ: 642 trong hệ đếm 12 (64212) 64212= 6*12 2 + 4*12 + 2 = 864 + 48 + 2 = 91410 10 3. Các hệ đếm thơng dụng Hệ thập phân (decimal) dùng 10 chữ số: • 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Hệ nhị phân (binary) dùng 2 chữ số: • 0, 1 Hệ bát phân (octal) dùng 8 chữ số: • 0, 1, 2, 3, 4, 5, 6, 7 Hệ thập lục phân (hexadecimal) dùng 16 chữ số: • 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F 11 Một số giá trị cần nhớ 771117 661106 551015 441004 33113 22102 1111 0000 HexOctBinDec F17111115 E16111014 D15110113 C14110012 B13101111 A12101010 91110019 81010008 HexOctBinDec 12 Một số giá trị cần nhớ (tt) 3225 1624 823 422 221 120 0.52-1 0.252-2 Dec 1048576220 4096212 2048211 1024210 51229 25628 12827 6426 Dec 13 4. Chuyển đổi giữa các hệ đếm Chuyển từ hệ 2, hệ 8, hệ 16 sang hệ 10 Chuyển đổi giữa hệ 2 và hệ 8 Chuyển đổi giữa hệ 2 và hệ 16 Chuyển từ hệ 10 sang hệ 2 Chuyển từ hệ 10 sang hệ đếm cơ số K 14 Chuyển từ hệ 2, hệ 8, hệ 16 sang hệ 10 Dùng định nghĩa hệ đếm theo vị trí Ví dụ • 101012 = 2 4 + 22 + 1 = 2110 • 3458 = 3*8 2 + 4*8 + 5 = 22910 • AB116 = 10*16 2 + 11*16 + 1 = 273710 15 Chuyển đổi giữa hệ 2 và hệ 8 Ba bit (nhị phân) tương đương 1 chữ số hệ 8 Ví dụ: • 101001110 = 101 001 110 = 5168 • 10101 = 10 101 = 258 • 1758 = 001 111 101 = 11111012 16 Chuyển đổi giữa hệ 2 và hệ 16 Bốn bit (nhị phân) tương đương 1 chữ số hệ 16 Ví dụ: • 10100111 = 1010 0111 = A716 • 110110 = 11 0110 = 3616 • 17516 = 0001 0111 0101 = 1011101012 17 Chuyển từ hệ 10 sang hệ 2 Hai phương pháp thơng dụng:  Phân tích thành tổng các lũy thừa của 2  Thực hiện các phép chia cho 2 18 Phân tích thành tổng các lũy thừa của 2 Ví dụ: 4510 ?2  45 = 32 + 8 + 4 + 1 = 25 + 23 + 22 + 20 = 1011012 19 Thực hiện các phép chia cho 2 Ví dụ: 4510 ?2 45 22 1 11 0 5 1 2 1 1 0 0 1 1 0 1 1 0 1 20 Chuyển từ hệ 10 sang hệ đếm cơ số K Giá trị thập phân X  Thực hiện các phép chia X và các thương số cĩ được cho K, cho đến khi thương số là 0 Kết quả là các dư số được lấy theo chiều ngược lại (từ đáy lên đỉnh.) 21 Ví dụ: 4510 ?3 45 15 0 5 0 1 2 0 1 1 2 0 0 3 22 Bài tập 1 ðổi các số thập phân sau đây sang hệ 2, hệ 8, hệ 16: • 50, 129, 200, 257, 300 ðổi các số thập phân sau sang hệ 3, hệ 7: • 50, 150 23 II. Biểu diễn số nguyên 1. Các khái niệm 2. Số nguyên khơng dấu 3. Số nguyên cĩ dấu 24 1. Các khái niệm Giá trị X được biểu diễn trên n bit • X: giá trị cần biểu diễn • n: kích thước biểu diễn • Với n bit chỉ biểu diễn được các giá trị X trong một khoảng biểu diễn  Số nguyên khơng dấu (unsigned integer)  Số nguyên cĩ dấu (signed integer) 25 2. Số nguyên khơng dấu Dùng biểu diễn nhị phân của giá trị X Ví dụ: • X = 1010, n = 4  X = 10102 • X = 1010, n = 8  X = 000010102 • X = 10010, n = 8  X = 011001002 Khoảng biểu diễn: 0  2n-1 • n = 8 : 0  255 • n = 16 : 0  65535 26 Bài tập 2  Tìm biểu diễn nhị phân, bát phân, thập lục phân của các số thập phân khơng dấu sau đây: • 81, 102, 250 với n = 8 • 1000, 2050 với n = 16 27 3. Số nguyên cĩ dấu a. ðộ lớn cĩ dấu (signed magnitude) b. Mã bù 1 (one’s complement) c. Mã bù 2 (two’s complement) d. Mã quá N (excess N, biased) 28 a. ðộ lớn cĩ dấu Dùng 1 bit thể hiện dấu: • 0: số dương (+) • 1: số âm (-)  (n-1) bit cịn lại là biểu diễn nhị phân của độ lớn X (trị tuyệt đối của X) Ví dụ: • X = 5, n = 4  X = 0101 • X = -10, n = 8  X = 10001010 29 ðộ lớn cĩ dấu (tt) Khoảng biểu diễn: - (2n-1 – 1)  +(2n-1 – 1) • n = 8: -12710 +12710 • n = 16: -3276710 +3276710 Nhận xét: với n = 8 • 00000000 = +0 • 10000000 = -0 ðược sử dụng trên các máy tính thế hệ đầu, ví dụ IBM 7090 30 b. Mã bù 1  Dùng phép tốn bitwise NOT (đổi bit 1 thành bit 0, bit 0 thành bit 1) để tạo số âm.  Ví dụ: với n = 4 • 0101 = +5 • 1010 = -5  mã bù 1 của -5 là 1010  Nhận xét: cĩ 1 bit dấu (0:dương, 1:âm)  Khoảng biểu diễn: - (2n-1 – 1)  +(2n-1 – 1) • n = 8: -12710 +12710 • n = 16: -3276710 +3276710 31 Mã bù 1 (tt) Nhận xét: với n = 8 • 00000000 = +0 • 11111111 = -0 ðược sử dụng trên các máy tính thế hệ đầu, ví dụ PDP-1, UNIVAC 1100 32 c. Mã bù 2 Mã bù 2 của một số âm bằng mã bù 1 cộng thêm 1 Ví dụ: với n = 4 • 0101 = +5 • 1010 = -5 (mã bù 1 của -5 là 1010) 1011 (mã bù 2 của -5 là 1011) Nhận xét: cĩ 1 bit dấu (0:dương, 1:âm) 33 Mã bù 2 (tt) Khoảng biểu diễn: - 2n-1  +(2n-1 – 1) • n = 8: -12810 +12710 • n = 16: -3276810 +3276710 ðược sử dụng trên các máy tính hiện đại (trong CPU, ngơn ngữ lập trình) 34 Tìm mã bù 2 X: giá trị cần biểu diễn, n: số bit dùng biểu diễn X dương: mã bù 2 là biểu diễn nhị phân dùng n bit của X • X=5, n=8, mã bù 2 của 5 là 00000101 X âm: • Biểu diễn trị tuyệt đối X dùng n bit • ðổi bit 1 thành bit 0 và bit 0 thành bit 1 • Cộng thêm 1 35 Tìm mã bù 2 (tt) Ví dụ: X = -10, n = 8 • 5 = 00001010 • ðổi 10, 01: 11110101 • Cộng thêm 1: mã bù 2 của -10 là 11110110 36 Tìm mã bù 2 (tt)  Phương pháp đơn giản cho X âm • Biểu diễn trị tuyệt đối của X dùng n bit • Tìm bit 1 đầu tiên từ bên phải • ðổi 10, 01 tất cả các bit bên trái bit 1 đã tìm Ví dụ: X = -10, n = 8 • 10 = 00001010 • Tìm bit 1 đầu tiên từ bên phải 00001010 • Mã bù 2 của -10 là 11110110 37 Cộng số bù 2  Ví dụ 1: 1 1 1 1 1 1 1 carries 0 0 0 1 0 1 1 1 (23) + 1 1 1 1 0 1 1 1 +(-9) 0 0 0 0 1 1 1 0 14  Ví dụ 2: hiện tượng tràn (overflow) 0 1 1 1 1 carries 0 1 1 1 1 1 1 0 (126) + 0 0 0 0 1 0 0 0 +(8) 1 0 0 0 0 1 1 0 ??? (-122) 38 Xác định kết quả phép cộng số bù 2 Nếu số nhớ vào (carry in) bằng với số nhớ ra (carry out) trong phép cộng bit dấu thì khơng cĩ hiện tượng tràn Nếu số nhớ vào (carry in) khác với số nhớ ra (carry out) trong phép cộng bit dấu thì cĩ hiện tượng tràn • Overflow: kết quả phép tốn vượt ra ngồi khoảng biểu diễn 39 d. Mã quá N  Cịn gọi là phương pháp di chuyển (biased) Một giá trị nguyên cĩ dấu X được biểu diễn thành một số nguyên khơng dấu cĩ giá trị là X+N Ví dụ: N=7  mã quá 7, n=4 • Mã quá 7 của -5 là 0010 • Mã quá 7 của 5 là 1100 40 Mã quá N (tt) Khoảng biểu diễn - N  +(2n – 1 - N) • n = 8, N = 127: -12710 +12810 Mã quá N dùng trong biểu diễn số dấu chấm động theo tiêu chuẩn IEEE 754 41 Các dạng mã hố số nguyên với n = 4 42 Bài tập 3 Cho n = 8, tìm mã độ lớn cĩ dấu, mã bù 1, mã bù 2, mã quá 127 của các số thập phân sau đây: • 10, 61, 102 • -22, -55, -100 43 III. Biểu diễn số thực 1. Khái niệm về số thực 2. Số dấu chấm tĩnh 3. Số dấu chấm động 4. Tiêu chuẩn số dấu chấm động IEEE 754 44 1. Khái niệm về số thực  Trục số thực: chia làm 7 vùng  Trong khoảng biểu diễn cĩ vơ số số thực • Ví dụ: 20/3 = 6.666 • Cĩ thể cĩ sai số khi biểu diễn số thực Số âm quá lớn Số dương quá lớn Số âm quá nhỏ Số dương quá nhỏ KHOẢNG BIỂU DIỄN KHOẢNG BIỂU DIỄN SỐ 0 45 2. Số dấu chấm tĩnh Ví dụ: • +3.2510 , -11.012 Dùng n+m+1 bit để biểu diễn: • 1 bit dấu (0: dương, 1: âm) • n bit: phần nguyên • m bit: phần phân số đúng Bit dấu Phần nguyên Phần phân số đúng 1 bit n bit m bit 46 Số dấu chấm tĩnh (tt)  Sai số tuyệt đối:  Số dương lớn nhất:  Số dương nhỏ nhất: 47 Ví dụ số dấu chấm tĩnh X = 3.37510, n = 7, m = 8 • 00000011.011000002 = 03.6016 X = -7.2510, n = 7, m = 8 • 10000111.010000002 = 87.4016 48 Ứng dụng số dấu chấm tĩnh Dùng trong các chương trình tính tốn thương mại (các ứng dụng spreadsheet), và được hỗ trợ trên một số ngơn ngữ lập trình 49 Bài tập 4 Cho n=7, m=8, tìm biểu diễn số dấu chấm tĩnh của các số thập phân sau đây: • 100.625, -70.3125, -120.4375 50 3. Số dấu chấm động X là số bất kỳ, cĩ thể phân tích dưới dạng: X = m*ae (1) trong đĩ: a gọi là cơ số (radix) m gọi là phần định trị (mantissa) e gọi là phần bậc (exponent) 51 Số dấu chấm động (tt)  Ví dụ: • a = 10, X = 3.14 X = 3.14 = 0.314*101 = 31.4*10-1 • a = 2, X = 11.101 X = (11.101)2 =(1.1101*101)2 =(0.11101*10 10) 2  Với cơ số a cho trước, cĩ nhiều cách phân tích X theo dạng (1)  Vị trí ngăn cách giữa phần nguyên và phần phân số phụ thuộc phần bậc e khơng cố định như trong biểu diễn số dấu chấm tĩnh  biểu diễn số dấu chấm động 52 Số dấu chấm động (tt) Nếu đặt thêm điều kiện a-1 ≤ | m | < 1 thì cách phân tích là duy nhất: dạng chuẩn Xét lại ví dụ trên: a = 10, X = 3.1410 = 0.314*10 1 a = 2, X = (11.101)2 = (0.11101*1010)2 53 Khái niệm FLOPS Dùng trong đánh giá hiệu suất máy tính  FLoating-point Operations Per Second • Số tính tốn số dấu chấm động trong 1 giây Khái niệm tương tự MIPS • Million Instructions Per Second Số lệnh thực hiện trong một giây, trong đĩ lệnh cĩ thể là tính tốn số nguyên, tính tốn số dấu chấm động, tính tốn luận lý, 54 4. Tiêu chuẩn số dấu chấm động IEEE 754 Do tổ chức IEEE (Institude of Electrical and Electronic Engineers) • Mở rộng thành tiêu chuẩn IEEE 854 ðược sử dụng phổ biến trên các đơn vị số dấu chấm động (FPU, Floating-Point Unit) trong các bộ xử lý, và trên các ngơn ngữ lập trình 55 Tiêu chuẩn IEEE754 (tt)  Tiêu chuẩn IEEE 754 gồm các dạng số chấm động tiêu chuẩn (normalized): • Số chính xác đơn – Single-precision 32 bit (Số single) • Số chính xác kép – Double-precision 64 bit (Số double) • Số chính xác kép mở rộng – Double-Extended precision 80 bit (Số extended)  Số extended dùng để giảm các lỗi khi làm trịn số và chỉ dùng bên trong các FPU 56 Tiêu chuẩn IEEE754 (tt)  Các số dấu chấm động IEEE 754 cĩ dạng: X = S*2e trong đĩ: S là phần định trị (significand) e là phần bậc (exponent) với 1.0 ≤ | S | < 2 S cĩ thể viết thành S = 1.f trong đĩ f là phần phân số (fraction) X = ± 1.f * 2e 57 Số chính xác đơn (số single)  Số chính xác đơn cĩ 32 bit: • 1 bit dấu (0:dương, 1:âm) • 8 bit phần bậc dùng mã quá 127 • 23 bit phần phân số (thuộc phần định trị) Bit dấu Phần bậc Phần phân số 1 bit 8 bit 23 bit 58 Ví dụ số single  X = 0.510 • 0.5 = 1.0 * 2-1 • Bit dấu: 0 • Phần bậc: -1 mã quá 127 của -1 là -1+127 = 126 12610 = 011111102 • Phần định trị S = 1.0, phần phân số = 0  Biểu diễn dang số chính xác đơn của 0.5: • 0 01111110 00..002 = 3F00000016 23 BIT 0 59 Ví dụ số single (tt)  X = -2010 • -20 = -1.25 * 24 • Bit dấu: 1 • Phần bậc: 4 mã quá 127 của 4 là 4+127 = 131 13110 = 100000112 • Phần định trị S = 1.25, phần phân số = 0.25 0.2510 = 0.012  Biểu diễn dang số chính xác đơn của 0.5: • 1 10000011 010..002 = C1A0000016 21 BIT 0 60 Số chính xác kép (số double)  Số chính xác kép cĩ 64 bit: • 1 bit dấu (0:dương, 1:âm) • 11 bit phần bậc dùng mã quá 1023 • 52 bit phần phân số (thuộc phần định trị) Bit dấu Phần bậc Phần phân số 1 bit 11 bit 52 bit 61 Các đặc điểm chính của số single, số double -1022  1023-126  +127Khoảng phần bậc Mã quá 1023Mã quá 127Biểu diễn phần bậc 6432Tổng số bit 5223Số bit phần định trị 118Số bit phần bậc 11Số bit dấu Số doubleSố single 62 Các đặc điểm chính của số single, số double (tt) ≈ 10-324≈ 10-45 Giá trị nhỏ nhất (dạng số đặc biệt) ≈ 10-308 10+308≈ 10-38  10+38Khoảng biểu diễn (theo thập phân) ≈ 2+1024≈ 2+128Giá trị lớn nhất 2-10222-126Giá trị nhỏ nhất Số doubleSố single 63 Các dạng số đặc biệt Tùy ý khác 0 1111+/-NaN (Not a Number) 01111+/-Vơ cực / Vơ cùng (Infinity) 00+/-Zero Tùy ý khác 0 0+/-Số khơng chuẩn (Denornalized) Tùy ý 0<exponent<max +/-Số tiêu chuẩn (Normalized) 64 Các dạng số đặc biệt (tt)  Số dạng denormalized dùng để biểu diễn số rất nhỏ • Số nhỏ nhất là 2-23 * 2-127 = 2-150 Cĩ thể biểu diễn 2 số 0 (+0, -0)  Số vơ cực cĩ thể dùng làm tốn hạng tuân theo các quy tắc tốn học cho số vơ cực Khi kết quả phép tốn khơng xác định, ví dụ ∞/∞ thì dùng dạng NaN (Not a Number) 65 Làm trịn số (rounding)  Tiêu chuẩn IEEE 754 cĩ các dạng làm trịn số: • Unbiased: round to nearest Làm trịn về số gần nhất Nếu số cần làm trịn ở giữa 2 giá trị thì làm trịn về số cĩ bit cuối bên phải là 0 • Toward zero: làm trịn về zero • Toward positive infinity: làm trịn về +∞ • Toward negative infinity: làm trịn về -∞ 66 Bài tập 5 ðổi các giá trị thập phân sau đây sang dạng số single (IEEE 754), trình bày kết quả ở dạng hệ 16: • -15.5, 20.5, -34 ðổi các số dạng single sau đây về dạng thập phân: • 42E48000H, 3F880000H 67 IV. Biểu diễn ký tự 1. Các khái niệm 2. ASCII 3. Unicode 4. Tiếng Việt trên máy tính 68 1. Các khái niệm Ký tự trên máy tính (computer character) là đơn vị thơng tin tương ứng với: • Một ký hiệu âm tiết (syllabary) trong dạng viết của ngơn ngữ tự nhiên • Ký tự điều khiển trong xử lý văn bản Mỗi ký tự được mã hố bằng một chuỗi bit và được liệt kê trong bảng mã (character encoding scheme) hay bộ ký tự (character set) • Ví dụ: ASCII, Unicode 69 Lưu trữ, xử lý và hiển thị ký tự Mỗi ký tự được lưu trữ và xử lý theo vị trí ký tự trên bảng mã (mã ký tự) • Ví dụ: ‘A’ cĩ giá trị 41H trong mã ASCII Các ký tự cĩ biểu diễn đồ họa (glyph) trên các thiết bị xuất (màn hình, máy in)  Font chữ (computer font) là file dữ liệu bao gồm tập hợp các biểu diễn đồ họa của các ký tự, ký hiệu theo một dạng (typeface) 70 Các thơng số chính của font chữ Dạng chữ (typeface) • Ví dụ: Time New Roman  Loại chữ (style) • Ví dụ: Normal, Bold, Italic, Bold Italic Kích thước (cỡ) chữ • Ví dụ: 12 points, 24 points với point là đơn vị trong kỹ thuật in (1 point = 1/72 inch) 71 Ví dụ font chữ Time New Roman – Bold – 36 point Arial – Bold Italic – 36 point French Script – Bold – 48 point  Courier New – Normal – 32 point 72 Các định dạng chính của dữ liệu font chữ Bitmap font • Bao gồm một chuỗi các điểm ảnh (pixel) biểu diễn ảnh của ký tự theo một dạng chữ trên một cỡ chữ Outline font • Bao gồm các đường cong dạng Bézier, các lệnh vẽ, các biểu thức tốn, cho phép thể hiện một dạng chữ theo kích thước tùy ý (scalable) 73 True Type font  Là dạng Outline font được sử dụng phổ biến trên các hệ điều hành hiện đại Ví dụ: Windows 2K/XP sử dụng True Type font dạng OpenType 74 2. ASCII American Standard Code for Information Interchange Do ANSI (American National Standards Institude) cơng bố năm 1967, cập nhật năm 1986 Bảng mã ASCII dùng biểu diễn ký tự trên máy tính và các thiết bị truyền thơng 75 Mã ASCII (tt) Mã ASCII chuẩn dùng 7 bit, biểu diễn được 128 ký tự, bao gồm: • Các ký tự điều khiển (control characters) cĩ giá trị (mã) từ 0 đến 1Fh • Các ký tự in được (printable characters) cĩ giá trị (mã) từ 20h đến 7Fh Mã ASCII mở rộng dùng 8 bit, bao gồm: • Phần ASCII chuẩn • Các ký tự đặc biệt cĩ giá trị (mã) từ 80h đến FFh 76 Mã ASCII chuẩn 77 Mã ASCII mở rộng 78 3. Unicode a. Giới thiệu Unicode b. Các đặc điểm chính 79 a. Giới thiệu Unicode Unicode là tiêu chuẩn mã hĩa ký tự của Hiệp hội Unicode (Unicode Consortium) bao gồm các nhà sản xuất IBM, Apple, HP, MicroSoft, Adobe, Unicode là một hiện thực của chuẩn ISO 10646 UCS 2 (Universal Character Set) Unicode được hỗ trợ trên các hệ điều hành, trình duyệt web, các tiêu chuẩn phần mềm hiện đại như XML, Java, LDAP, CORBA, 80 Giới thiệu Unicode (tt) Mục tiêu của Unicode là cung cấp mã (code point) duy nhất cho ký tự, ký hiệu trên tất cả các ngơn ngữ, hệ thống chữ viết (writing systems) • Việc hiển thị ký tự (font) do chương trình ứng dụng (web, word processor, ) thực hiện Unicode là mã 16 bit biểu diễn được 65536 ký tự, và cĩ thể mở rộng đến trên 1 triệu ký tự 81 b. Các đặc điểm chính Cĩ các phiên bản Unicode: 1.0, 1.1, 2.0, , 5.0 Cách thể hiện mã ký tự theo Unicode: U+xxxx, với x là 1 chữ số hệ 16, ví dụ: • Latin -1 {U+0080..U+00FF} • Latin Extended A, B {U+0100..U+024F} • Combining Diacritical Marks {U+0300.. U+036F} • Latin Extended Additional {U+1E00..U+1EFF} • ðơn vị tiền tệ Việt Nam (ðồng): c U+20AB 82 Mã tổ hợp, mã dựng sẵn (dự tác) Ví dụ: chữ Ở, từ việt  Mã tổ hợp (combining) • Gồm chữ Ơ (U+01A0) và dấu hỏi (U+0309) • việt = v + i + e + ^ + . + t • việt = v + i + ê + . + t  Mã dựng sẵn (precomposed) • Mã U+1EDE • việt = v + i + ệ + t Cĩ chuẩn để chuyển đổi giữa hai dạng trên  NFC (Normalization Form C)  NFD (Normalization Form D) 83 Các sơ đồ mã hĩa chính UTF (Unicode Transformation Format)  UTF – 16: • Dạng mã hĩa chuẩn, dùng 1 hay 2 số nguyên 16 bit • ðược dùng trong Windows API, .NET, Java  UTF – 8: • Gồm 1 đến 4 byte • ðược thiết kế để tương thích với mã ASCII và các giao thức trên byte • Dùng trên Web Browsers, E-Mail 84 Ví dụ UTF-8 E1 BB A9U+1EE9ứ C6 B0U+01B0ư C6 A1U+01A1ơ E1 BB 9CU+1EDCỜ E1 BB 93U+1ED3ồ E1 BB 92U+1ED2Ồ Mã UTF-8Mã Unicode 16 bitChữ Việt 85 4. Tiếng Việt trên máy tính a. Bảng mã tiếng Việt b. Các font chữ Việt c. Chương trình bàn phím tiếng Việt 86 a. Bảng mã tiếng Việt Các nhĩm bảng mã tiếng Việt: Dựa trên mã ASCII • Mã 1 byte • Mã 2 byte Mã Unicode 87 Mã tiếng Việt 1 byte Dùng phần mã ASCII mở rộng để biểu diễn các ký tự tiếng Việt • Khơng đủ vì cần 134 mã (Ââ, ðđ, ) Giải quyết bằng việc dùng chung mã cho chữ thường và chữ hoa (cần 67 mã), phân biệt bằng font chữ hoa, chữ thường hoặc sử dụng 6 mã trong vùng ASCII chuẩn Ví dụ:TCVN-5712 (font ABC), BKHCM 1 byte, VPS, 88 Mã tiếng Việt 2 byte Các nguyên âm cĩ dấu được mã hĩa bằng 2 byte Chữ Việt cĩ dấu chữ hoa, chữ thường trong cùng 1 font Ví dụ: VNI, BKHCM 2 byte, 89 Tiếng Việt trên mã Unicode  Chính phủ Việt Nam qui định dùng tiêu chuẩn TCVN 6909:2001 dùng mã Unicode 16 bit (theo Unicode 3.1) làm chuẩn mã tiếng Việt trong trao đổi thơng tin điện tử  Unicode dạng dựng sẵn • Latin Extended Additional {U+1E00..U+1EFF}  Unicode dạng tổ hợp • Latin -1 {U+0080..U+00FF} • Latin Extended A, B {U+0100..U+024F} • Combining Diacritical Marks {U+0300.. U+036F} 90 b. Các font chữ Việt Các dạng mã 1 byte và 2 byte cần cĩ các font chữ tương ứng. Ví dụ: • ABC, BKHCM 2 byte, VNI, Mã Unicode dùng các font chữ do hệ điều hành và các phần mềm hỗ trợ 91 c. Chương trình bàn phím tiếng Việt Keyboard driver • Chương trình điều khiển bàn phím • Chương trình bàn phím • Bộ gõ Nhận chuỗi phím theo quy định cách nhập (input method) tiếng Việt, chuyển đổi thành mã ký tự Việt theo bảng mã xác định 92 Chương trình bàn phím tiếng Việt (tt) Windows • Unikey, VietKey, WinVNkey,  Linux • X- Unikey, xvnkb MAC OS • TCVN/VNI/Telex keyboard layouts 93 Các cách nhập tiếng Việt thơng dụng VNI • Vie65t Nam d9a61t nu7o7c1 to6i o7i  Telex • Vieetj Nam ddaats nwowcs tooi owi VIQR • Vie^.t Nam dda^’t nu+o+’c to^i o+i 94 V. Dữ liệu âm thanh, hình ảnh 1. Dữ liệu âm thanh (audio) 2. Dữ liệu hình ảnh (images, graphics) 3. Dữ liệu hình ảnh động (video) 95 1. Dữ liệu âm thanh Con người cảm nhận âm thanh do sĩng âm tác động trên tai, và tai truyền tín hiệu lên não  Thiết bị loa tạo âm thanh do các tín hiệu điện dạng tương tự (analog) Khi số hĩa dữ liệu âm thanh thì sẽ định kỳ đo điện áp tín hiệu và lưu lại trên các giá trị số thích hợp • Sampling: Quá trình lấy mẫu 96 Lấy mẫu âm thanh 97 Lấy mẫu âm thanh (tt) Âm thanh nghe được • 20Hz  20000Hz Về nguyên tắc, tốc độ lấy mẫu khoảng 40000 lần/giây là cĩ thể lưu trữ, phục hồi âm thanh với chất lượng tốt 98 Các định dạng file âm thanh thơng dụng Dạng khơng nén (uncompressed) • PCM (Pulse Code Modulation) • Dạng file .wav Dạng nén mất dữ liệu (lossy compression) • MPEG-1 layer 3 (MP3), Vorbis, lossy Windows Media Audio (WMA) Dạng nén khơng mất dữ liệu (lossless compression) • Apple lossless, lossless WMA 99 2. Dữ liệu hình ảnh Mắt người phân biệt màu sắc dựa trên tần số ánh sáng tác động trên võng mạc Võng mạc cĩ các tế bào nhận màu sắc theo ba nhĩm chính: Red, Green, Blue Màu sắc biểu diễn trên máy tính thường dựa trên các giá trị R,G,B thể hiện thành phần của các màu cơ bản 100 Ví dụ màu theo RGB 101 Biểu diễn màu sắc Color depth: số lượng dữ liệu dùng để biểu diễn màu • Hi Color: 16 bit, True Color: 32 bit Một chương trình ứng dụng cĩ thể chỉ thể hiện một số lượng màu hạn chế theo color palette (bảng màu) 102 Dữ liệu hình ảnh Bao gồm tập hợp các điểm ảnh (pixel) Resolution (độ phân giải): số điểm ảnh thể hiện một hình ảnh • 800x600 • 1024x800 103 Raster graphic format  Dữ liệu hình ảnh được lưu dựa trên thơng tin các điểm ảnh: raster graphic format  Các định dạng file thơng dụng: • BMP (BitMaP), dạng uncompressed • GIF (Graphic Interchange Format) dạng lossless data compression • PNG (Portable Network Graphics) dạng lossless data compression, thay thế dạng GIF • JPEG (Joint Photographic Experts Group) dạng lossy data compression 104 Vector graphic format Dữ liệu hình ảnh được lưu theo các dạng hình học (điểm, đường thẳng, đường cong, ) và màu sắc: vector graphic format Hình ảnh dạng vector graphic cĩ thể thay đổi kích thước theo tốn học Khơng phù hợp cho hình ảnh thực 105 Vector graphic format (tt) Các định dạng file thơng dụng • swf (Small Web Format/ShockWave Flash) • ps (PostScript) • wmf (Windows Metafile) • pdf (Portable Document Format) 106 3. Dữ liệu hình ảnh động Hình ảnh động (video) bao gồm các hình ảnh liên tục  Thơng số chính: frames per second • Phim: 24 frames/sec Video Codec (COmpressor/DECompressor): là phương pháp chuyển hình ảnh động thành dữ liệu trên máy tính 107 Dữ liệu hình ảnh động (tt) Hầu hết các video codec đều là dạng nén mất dữ liệu (lossless compression) Cĩ 2 dạng nén chính • Temporal: dựa trên sự khác nhau giữa các frame liên tục • Spatial: dựa trên dữ liệu cĩ trên từng frame (tương tự nén ảnh tĩnh) 108 Các định dạng file thơng dụng  Container format: định dạng file nén theo các codec  Các định dạng container thơng dụng: • avi (chuẩn trên Windows) • asf (dùng cho WMA, WMV) • mov (Quicktime container) • Mpeg-2, Mpeg4 (Moving Picture Experts Group) • RealMedia (dùng cho Real Video, Real audio) • DivX media format NHẬP MƠN TIN HỌC Chương 4 GIỚI THIỆU HỆ ðIỀU HÀNH 2Nội dung chương 4 I. Khái niệm về hệ điều hành II. Tập tin và thư mục III.Ví dụ hệ điều hành 3I. Khái niệm về hệ điều hành 1. ðịnh nghĩa hệ điều hành 2. Phân loại hệ điều hành 3. Các khái niệm cơ bản 41. ðịnh nghĩa hệ điều hành  Với người sử dụng (users): • HDH là chương trình nạp vào máy đầu tiên • HDH quản lý tương tác người máy  Với người lập trình (programmers): • HDH là máy tính mở rộng • HDH quản lý tài nguyên, quản lý hoạt động của các chương trình ứng dụng Mục tiêu: • Tiện lợi, hiệu quả • Dễ phát triển 5Các lớp hoạt động của máy tính 62. Phân loại hệ điều hành  Phân loại theo thứ tự xuất hiện  Lịch sử hệ điều hành  Phân loại theo hoạt động 7Phân loại theo thứ tự xuất hiện  Thế hệ 1 1945 - 1955 • ðèn điện tử chân khơng – tuần tự  Thế hệ 2 1955 - 1965 • Transistors – batch systems  Thế hệ 3 1965 - 1980 • Mạch tích hợp (ICs) – đa chương  Thế hệ 4 1980 - nay • Máy vi tính – đa chương hiện đại 8Ví dụ: batch system 9Các loại hệ điều hành hiện đại  Hệ điều hành máy tính lớn (mainframe)  Hệ điều hành server  Hệ điều hành đa xử lý (multiprocessor)  Hệ điều hành máy vi tính  Hệ điều hành thời gian thực (real-time)  Hệ điều hành nhúng (embeded) 10 Hệ thống máy tính lớn 11 PDA (Personal Digital Assistant) 12 3. Các khái niệm cơ bản a. Process (tiến trình) và Thread (luồng) b. File c. System Calls – Lệnh gọi hệ thống d. Shell – Giao diện với người sử dụng 13 a. Process và thread  Process: chương trình được cho thực thi • ðược nạp vào bộ nhớ • Cĩ các thơng tin trạng thái  Hệ thống đa chương: tập hợp các process tồn tại đồng thời • Các process của hệ điều hành Kernel mode • Các process ứng dụng User mode 14 Thread  Process cĩ 2 đặc trưng: • ðơn vị được cấp phát tài nguyên • ðơn vị được thực thi  Thread là sự trừu tượng hố đặc trưng thực thi của process • Control path • Lightweight process • Context of execution 15 Mơ hình thread a. Dạng 1-1 b. Dạng n-1 16 Ví dụ ứng dụng thread Một word processor với 3 thread 17 2. File  File: đơn vị lưu trữ trên thiết bị nhớ ngồi  Là sự trừu tượng hố dữ liệu (che dấu phần cứng)  Các thiết bị xuất nhập cĩ thể trừu tượng hố như file  Hệ điều hành tổ chức và quản lý theo hệ thống file (file system), ví dụ: FAT, NTFS, 18 3. Lệnh gọi hệ thống  Chương trình ứng dụng (user program) truyền thơng và yêu cầu dịch vụ của hệ điều hành thơng qua lệnh gọi hệ thống (system calls)  System call: • Hàm thư viện của hệ điều hành • Phụ thuộc từng loại hệ điều hành 19 Ví dụ: UNIX/Win32 API (Application Programming Interface) 20 Ví dụ: các bước gọi read(fd, buffer, nbytes) 21 4. Giao diện với người sử dụng  Các dạng cơ bản: • Dịng lệnh (command line) • ðồ hoạ (Graphical User Interface, GUI) 22 II. Tập tin và thư mục 1. Tập tin (File) 2. Thư mục (Folder/Directory) 3. Khái niệm hệ thống file (File system) 23 1. File a. Tên file b. Cấu trúc file c. Loại file d. Thuộc tính file e. Các thao tác trên file 24 a. Tên file Mỗi file cĩ tên (filename) theo quy định của hệ điều hành, ví dụ: • DOS  8.3 • Windows  long filename (<=255)  Tên file cĩ phần mở rộng (extensions) xác định loại file • Cĩ thể cĩ nhiều phần mở rộng 25 b. Cấu trúc file Các dạng chính (cấp thấp): • Chuỗi byte (byte sequence) • Chuỗi record (record sequence) • Cây record (record tree) Cấu trúc luận lý (cấp cao) do chương trình ứng dụng qui định • Ví dụ: field, record, file, database, 26 Cấu trúc file (tt) a. Chuỗi byte b. Chuỗi record c. Cây record 27 c. Loại file  File thường (regular files) • Dạng nhị phân (binary) • Dạng văn bản (text)  Thư mục (folder, directory): file hệ thống  File đặc biệt (special files): trừu tượng hố thiết bị I/O • Dạng ký tự card mạng • Dạng khối  đĩa 28 d. Thuộc tính file  File cĩ tên, dữ liệu khi được tạo ra Hệ điều hành thêm các thuộc tính (attributes) cần thiết như date, time, • Các thuộc tính phụ thuộc hệ thống file 29 Các thuộc tính thơng dụng Name – Tên file  Identifier – Danh hiệu (Id)  Type – loại file  Location – Vị trí  Size – Kích thước  Protection – Dùng trong bảo vệ Date, Time – Các thơng tin về thời gian  30 e. Các thao tác trên file Các hệ điều hành cung cấp các thao tác trên file khác nhau • Dùng cho user  các thao tác trên File Manager • Dùng cho programmer  các lệnh gọi hệ thống (system calls) 31 Một số thao tác cơ bản trên file Ghi dữ liệu vào file tại vị trí hiện hànhWrite ðọc file tại vị trí hiện hànhRead Cần đĩng file sau khi sử dụngClose Cần mở file trước khi truy xuấtOpen Xố file. Cĩ thể xố tự động, phục hồiDelete Tạo file rỗng và đặt 1 số thuộc tínhCreate Ý nghĩaThao tác 32 Một số thao tác cơ bản trên file (tt) ðổi tên fileRename ðặt các thuộc tính của fileSet Attributes Lấy thuộc tính của fileGet Attributes Xác định nơi truy xuất fileSeek Ghi vào cuối fileAppend Ý nghĩaThao tác 33 2. Thư mục a. Tổ chức thứ bậc của thư mục b. Tên đường dẫn c. Các thao tác trên thư mục 34 a. Tổ chức thứ bậc của thư mục  Thư mục (directory, folder) là file hệ thống dùng để quản lý hệ thống file  Thư mục bao gồm các phần tử (entry), tương ứng với các file trong thư mục, lưu các thơng tin: • Tên file • Các thuộc tính • 35 Tổ chức thứ bậc của thư mục (tt)  Tổ chức thơng dụng của thư mục: dạng hình cây, với thư mục gốc (root) Ví dụ • Windows: cây thư mục cho từng đĩa luận lý, hệ thống file trên mạng, • Linux chỉ cĩ 1 cây thư mục trên hệ thống • Cần phải mount các đĩa luận lý, hệ thống file trên mạng vào cây thư mục 36 Ví dụ: cây thư mục 37 Ví dụ: đồ thị thư mục 38 b. Tên đường dẫn Khi cĩ tổ chức thư mục thì cần thơng tin về vị trí file trên cây thư mục  tên đường dẫn (pathname) • Pathname = path + filename Ví dụ: • c:\windows\explorer.exe • /etc/samba/samba.conf 39 c. Các thao tác trên thư mục  Tương tự thao tác trên file, các thao tác trên thư mục khác nhau trên các hệ thống file 40 Một số thao tác cơ bản trên thư mục Cho phép file xuất hiện trong nhiều thư mục Link Trả lại phần tử tiếp theo trong thư mụcReaddir Cần đĩng thư mục sau khi sử dụngClosedir Cần mở thư mục trước khi truy xuất, tương đương liệt kê file trong thư mục Opendir Xố thư mục rỗngDelete Tạo thư mục rỗng với . và ..Create Ý nghĩaThao tác 41 3. Khái niệm hệ thống file Mỗi partition bao gồm các khối (block/cluster) gồm các sector liên tục: đơn vị cấp phát cho file • Mỗi khối cĩ địa chỉ Hiện thực hệ thống file: • Quản lý các khối thuộc về file • Quản lý khối chưa sử dụng (free blocks) • Quản lý khối khơng sử dụng được (bad blocks) 42 Ví dụ 43 Các dạng partition, logical drives 44 Các hệ thống file thơng dụng  FAT • Windows 9x, Windows 2K/XP/2K3 NTFS • Windows 2K/XP/2K3  I-node • UNIX • Linux  i-node extensions (Ext2, Ext3) 45 III. Ví dụ hệ điều hành 1. Hệ điều hành Windows 2. Hệ điều hành Unix, Linux 46 1. Hệ điều hành Windows a. Các hệ điều hành Windows b. Giới thiệu Windows XP 47 a. Các hệ điều hành Windows Các hệ điều hành Windows 9x 48 Các hệ điều hành Windows (tt) Các hệ điều hành Windows NT 49 b. Giới thiệu Windows XP Hệ điều hành dạng preemptive multitasking trên Intel CPU Dùng kiến trúc micro-kernel Các phiên bản: • XP Home 32 bit • XP Professional 32 bit • XP 64 bit 50 Các đặc trưng Khả năng mở rộng (Extensibility) • Kiến trúc nhiều lớp Khả năng di chuyển (Portability) • Viết trên C, C++  Tin cậy • Dùng bộ nhớ ảo và cơ chế bảo vệ tài nguyên  Tương thích với chuẩn POSIX (IEEE 1003.1) 51 Các đặc trưng (tt) Hiệu suất cao • Ngưng (preemption) các thread độ ưu tiên thấp  hệ thống đáp ứng nhanh Hỗ trợ nhiều loại ngơn ngữ 52 Kiến trúc hệ thống Windows XP  Tổ chức theo lớp các khối chức năng  Protected mode • HAL, kernel, executive User mode – tập hợp các subsystem • Environment: giả lập các hệ điều hành • Protection: cung cấp các chức năng bảo mật 53 Kiến trúc Windows XP (tt) 54 2. Hệ điều hành Unix, Linux a. Giới thiệu hệ điều hành Unix b. Giới thiệu hệ điều hành Linux 55 a. Giới thiệu hệ điều hành Unix UNIX xuất phát từ dự án MULTICS • AT&T Bell và MIT Ken Thompson, Dennis Ritchie phát triển thành UNIX • Chương trình nguồn trên C 56 Cấu trúc UNIX 57 Các họ /dịng UNIX hiện đại  System V • AT&T và SUN  Solaris • Sun BSD • Berkeley Software Distribution • Mơ hình socket trên TCP/IP 58 b. Giới thiệu hệ điều hành Linux  Do Linus Torvard phát triển từ hệ điều hành Minix • Dùng cho máy IBM PC 80386 (năm 1991, kernel 0.01) • Hiện nay (kernel 2.4, 2.6) thực thi trên IA32/64, PowerPC, Sun SPARC, • Dự án Beowulf với Linux Cluster  Linux cĩ dạng mã nguồn mở, miễn phí theo GNU FSF • Dự án Gnu Not Unix • Các cơng cụ gcc, make, • Free Software Foundation • GPL – GNU Public License 59 Một số bản phát hành Linux Red Hat Linux www.redhat.com • Fedora fedora.redhat.com OpenLinux www.calderasystems.com  SuSE www.suse.com Debian www.debian.org  Slackware www.slackware.com  TurboLinux www.turbolinux.com  60 Kiến trúc hệ thống Linux  Linux là hệ điều hành dạng multiuser, multitasking Mục tiêu thiết kế: tốc độ, hiệu quả, tiêu chuẩn hĩa  Tương thích với chuẩn POSIX Giao diện lập trình theo SVR4 UNIX Kernel dùng cấu trúc khối (modular structure) 61 Các thành phần trên Linux 62 Các thành phần trên Linux (tt) Gồm 3 thành phần theo UNIX Kernel • Thực hiện trên kernel mode, trong một khơng gian địa chỉ  System libraries • Các hàm chức năng cung cấp cho chương trình ứng dụng  System utilities • Thực hiện các cơng việc quản trị xác định 63 Linux kernel  Tập hợp các module • Cĩ thể nạp/xĩa độc lập • Device driver/file system/network protocol Các đặc trưng: • Dynamic linking • Stackable module 64 Các thành phần trên Linux kernel NHẬP MƠN TIN HỌC Chương 5 GIỚI THIỆU MẠNG MÁY TÍNH 2Nội dung chương 5 I. ðịnh nghĩa mạng máy tính II. Các mơ hình mạng máy tính III. Kiến trúc mạng máy tính IV. Mơi trường truyền vật lý mạng cục bộ V. Các kỹ thuật kết nối mạng miền rộng 3I. ðịnh nghĩa mạng máy tính Mạng máy tính: bao gồm các máy tính độc lập, được kết nối với nhau trên mạng nhằm chia sẻ tài nguyên và trao đổi dữ liệu Host: máy tính trên mạng 4Ví dụ 1: mơ hình client-server Mạng máy tính với 2 Client và 1 Server 5Mơ hình ứng dụng mạng Client-Server 6Ví dụ 2: mơ hình peer-to-peer Mạng ngang hàng (peer-to-peer network) 7Các ứng dụng của mạng máy tính Ứng dụng trong cơ quan, doanh nghiệp Ứng dụng trong gia đình, cá nhân Ứng dụng trên thiết bị di động 8Ví dụ: e-commerce – thương mại điện tử Chia sẻ filePeer-to-peerP2P ðấu giá trên mạngConsumer-to-consumerC2C Chính phủ phát hành biểu mẫuGovernment-to-consumerG2C Nhà sản xuất đặt hàngBusiness-to-businessB2B ðặt mua hàng trên mạngBusiness-to-consumerB2C Ví dụDạng đầy đủ Một số dạng thương mại điện tử 9II. Các mơ hình mạng máy tính 1. Các kỹ thuật truyền dữ liệu 2. Phân loại mạng máy tính 3. Phần cứng mạng máy tính 4. Phần mềm mạng máy tính 10 1. Các kỹ thuật truyền dữ liệu Broadcast  Point-to-point 11 Truyền dữ liệu dạng broadcast Dùng 1 kênh truyền chung cho tất cả các máy trên mạng Dữ liệu (packet) gởi từ 1 máy sẽ đến tất cả các máy khác Cĩ địa chỉ máy nhận cùng với dữ liệu Multicast: 1 máy gởi dữ liệu và một nhĩm máy nhận 12 Truyền dữ liệu dạng point-to-point  Tồn tại một kênh truyền riêng giữa hai máy Kênh truyền này cĩ thể qua các máy trung gian khác trên mạng Cịn được gọi là dạng unicast 13 2. Phân loại mạng máy tính Phân loại mạng máy tính theo khoảng cách Internet10.000km Wide Area Network (WAN)100km-1.000km Metropolitan Area Network (MAN)10km-100km Local Area Network (LAN)10m – 1km Loại mạngKhoảng cách 14 3. Phần cứng mạng máy tính  Local Area Network Mạng cục bộ Wide Area Network Mạng miền rộng/Mạng diện rộng Wireless Network Mạng khơng dây 15 Mạng cục bộ - LAN Hai dạng mạng cục bộ a. Bus b. Ring 16 Các thành phần kết nối LAN Card mạng – Network Interface Card (NIC) Dây mạng – Cable Các thiết bị kết nối: Hub, Switch, 17 Mạng miền rộng - WAN WAN gồm các LANs và phần kết nối (subnet) 18 Subnet Phần kết nối mạng miền rộng gồm 2 phần: Các đường truyền (transmission lines) dây đồng, cáp quang, sĩng điện từ, Các phần tử chuyển mạch (switching elements), thường được gọi là router • Kết nối với nhiều đường truyền • Nhận dữ liệu và chọn đường truyền để chuyển sang mạng khác 19 Mạng khơng dây –Wireless LAN Hai dạng kết nối mạng khơng dây a. Cĩ dùng base station, cịn gọi là access point b. Các máy gởi nhận trực tiếp, ad hoc networking 20 Mạng Internet Tổng quan mạng Internet 21 Các thành phần chính trên mạng Internet  Trục chính – Backbone Các nhà cung cấp dịch vụ - ISPs (Internet Service Provider) • POP (Point of Presence):nơi nhận tín hiệu từ mạng điện thoại và đưa vào mạng của ISP NAP (Network Access Point) Các server Client từ máy lẻ, các LANs 22 4. Phần mềm mạng máy tính Hệ điều hành mạng  Phần mềm phía server  Phần mềm phía client 23 III. Kiến trúc mạng máy tính 1. Tổ chức thứ bậc của các giao thức 2. Các tiêu chuẩn mạng • ISO OSI • TCP/IP 24 1. Tổ chức thứ bậc của các giao thức  Tổ chức luận lý mạng máy tính: gồm các lớp (layers/levels) • Số lớp, chức năng mỗi lớp phụ thuộc loại mạng. Giao thức (protocol): tập hợp các luật và thủ tục thực hiện việc truyền thơng giữa hai bên truyền thơng. Giao diện (Interface): định nghĩa các thao tác cơ sở của lớp dưới cung cấp cho lớp trên 25 Ví dụ: tổ chức mạng cĩ 5 lớp 26 Mục đích của tổ chức mạng theo lớp Giảm sự phức tạp khi thiết kế Mơ tả chi tiết quá trình truyền dữ liệu từ một máy đến một máy khác 27 Ví dụ: truyền dữ liệu M giữa 2 máy H: Header, T: Trailer 28 Kiến trúc mạng máy tính Kiến trúc mạng máy tính: Tập hợp các lớp và giao thức. Bộ giao thức (protocol stack / protocol suite): Danh sách các giao thức được sử dụng cho từng lớp trên một hệ thống xác định. 29 2. Các tiêu chuẩn mạng Hai mơ hình kiến trúc mạng quan trọng: OSI (Open Systems Interconnection) TCP/IP (Transmission Control Protocol/ Internet Protocol) Các bộ giao thức khác: • IPX/SPX (Internetwork Packet Exchange/ Sequenced Packet Exchange) • NetBEUI (NetBIOS Extended User Interface) • AppleTalk 30 OSI a. Mơ hình OSI b. Truyền thơng giữa 2 máy 31 Sơ lược chức năng các lớp mơ hình OSI Lớp vật lý - Physical • Truyền chuỗi bít trên kênh truyền • Quy định về mơi trường truyền vật lý, tín hiệu điện, cơ khí. Lớp liên kết dữ liệu – Data Link • Truyền dữ liệu cĩ cấu trúc (frame) tin cậy giữa hai máy trên mơi trường vật lý. • Quy định về địa chỉ thiết bị, kiểm sốt lỗi 32 Sơ lược chức năng các lớp mơ hình OSI (tt) Lớp mạng – Network • Xác định con đường (route) từ máy gởi đến máy nhận, quản lý các vấn đề lưu thơng trên mạng • Quy định về địa chỉ mạng Lớp giao vận - Transport • Chia dữ liệu thành các đơn vị nhỏ hơn nếu cần và ghép lại tại nơi nhận. • Thực hiện kiểm sốt lỗi 33 Sơ lược chức năng các lớp mơ hình OSI (tt) Lớp phiên – Session • Thiết lập, quản lý, kết thúc các phiên làm việc giữa các ứng dụng Lớp trình diễn – Presentation • Quy định về khuơn dạng, cú pháp, ngữ nghĩa của dữ liệu khi truyền thơng  data representation Lớp ứng dụng – Application • Bao gồm các giao thức của các dịch vụ mạng 34 OSI và TCP/IP 35 TCP/IP Cĩ 4 lớp, so với mơ hình OSI:  Lớp ứng dụng (application) bao gồm lớp presentation và lớp session của mơ hình OSI  Lớp giao vận giải quyết vấn đề chất lượng dịch vụ (quality of service) như độ tin cậy, kiểm sốt lỗi, kiểm sốt lưu lượng  Lớp internet chia dữ liệu từ lớp transport thành các gĩi (packet)  Lớp host-to-network thực hiện tạo kết nối vật lý, bao gồm các lớp Physical và Data Link của mơ hình OSI 36 Một phần của bộ giao thức TCP/IP 37 IV. Mơi trường truyền vật lý mạng cục bộ 1. Card mạng 2. Dây mạng 3. Một số thiết bị kết nối 38 1. Card mạng II 39 Các thành phần trên card mạng II 40 Card mạng khơng dây II 41 2. Dây mạng Cáp đồng trục – Coaxial cable Các đơi dây xoắn – Twisted pairs • UTP – Unshielded Twisted - Pair • STP – Shielded Twisted - Pair Cáp quang – Fiber optic 42 Cáp đồng trục II 43 UTP – Unshielded Twisted-Pair II 44 Dạng nối thẳng – Straight-Through 45 Dạng nối chéo – Crossover 46 Cáp quang 47 Nguyên tắc phản xạ tồn phần trong cáp quang 48 ðầu nối cáp quang II 49 3. Các thiết bị kết nối  Phụ thuộc loại mạng, sơ đồ kết nối Ví dụ: • Hub: điểm nối dây trên mạng cục bộ dạng Ethernet • Access Point trên mạng khơng dây 50 Ví dụ: Hub / Switch 51 Kết nối mạng dùng dây UTP II 52 Ví dụ: Access point 53 Kết nối mạng khơng dây 54 V. Các kỹ thuật kết nối mạng miền rộng Dùng đường dây điện thoại Kết nối trực tiếp dùng cable  ISDN (Integrated Services Digital Network) Kết nối khơng dây Kết nối qua vệ tinh 55 Kết nối dùng đường dây điện thoại Dạng quay số (Dial-up) DSL (Digital Subcriber Line) 56 Dạng quay số Thiết bị: Người sử dụng: modem Nhà cung cấp dịch vụ: modem Giao thức thơng dụng: PPP (Point-to-Point Protocol) Phần mềm: tích hợp trên các hệ điều hành 57 Modem Modem thực hiện điều chế (MOdulation) khi gởi và giải điều chế (DEModulation) khi nhận 58 Modem (tt) Các dạng modem:  Internal – mạch điều khiển gắn trong máy • Kết nối với I/O bus, ví dụ PCI • Tích hợp trên mainboard  External – Thiết bị đặt ngồi kết nối qua cổng COM hay USB Một số tiêu chuẩn modem theo ITU: V34 – tốc độ 28.800 bps (bits per second) V90 – tốc độ 56.600 bps 59 Digital Subcriber Line - DSL Dùng chung kết nối mạng trên đường dây điện thoại Khơng cĩ quay số kết nối thường trực  Tốc độ cao hơn so với dùng modem 60 DSL (tt) Cĩ các dạng: ADSL-Asymmetric DSL: thơng dụng Tốc độ download: 384Kbps  8Mbps Tốc độ upload: 64Kbps  1 Mbps Cĩ giới hạn về khoảng cách ~ 5.500 mét  SDSL-Symmetric DSL Tốc độ download và upload đến 3Mbps VDSL-Very High Data Rate DSL Tốc độ download và upload đến 52Mbps 61 ADSL Thiết bị  Người sử dụng: ADSL modem/ ADSL router  Nhà cung cấp dịch vụ: Access Multiplexer Phần mềm:  Người sử dụng dùng phần mềm do nhà sản xuất thiết bị cung cấp  Nhà cung cấp dịch vụ thường dùng kỹ thuật ATM (Asynchronous Transfer Mode) ADSL là tiêu chuẩn của lớp vật lý 62 ADSL (tt) Cấu hình cơ bản dùng ADSL

Các file đính kèm theo tài liệu này:

  • pdftailieu.pdf
Tài liệu liên quan