🔙 Quay lại trang tải sách pdf ebook Giáo trình máy tính và mạng máy tính Ebooks Nhóm Zalo ọ c THẮNG (Chủ biên) ỄN TIẾN DŨNG GIÁO TRÌNH MÁY TÍNH và MẠNG MÁY TÍNH ■ IGUYẼN c LIỆU TRƯỜNG ĐẠI HỌC sư PHAM KỸ THUẬT HƯNG YÊN TS. PHẠM NGỌC THĂNG (Chủ biên) NGUYỄN TIẾN DŨNG G I Á O T U Ì Ỉ V I I MÁY TÍNH VÀ MANG MẤY TÍNH N H À X U Ấ T BẢN G IÁ O DỤC V IỆ T NAM I .(31 NÓI DÂU MỤC LỤC Trung ........ 7 ...9 DANH MỤC CÁC TỦ VIÉT T Ấ T .................................................................... Chưong 1 TÒNG QUAN HỆ THO NG M Á Y T ÍN H • MỤC I IK U ..................................................................................................... 11 • NỘI DUNG..................................................................................................... 11 1.1. LỊCH SỪ PHÁT TRIẾN CỦA HỆ THÔNG MÁY T ÍN H ................ 11 1.2. CÁC TI 1UẠT NGŨ VÀ KHÁI NIỆM cơ BẢN............................... 22 1.3. rilỏ N G TIN VÂ BIÉU DIÊN TIIỎNG TIN [RONG MẢY TÍNH 23 49 1.4. SO LƯỢC CÁC Bộ PHẠN CUA HỆ THÔNG MÁY T ÍN H ........... 1.5. GIỚI TI III-u MỌT SỎ PHẢN MF.M THÔNG DỤNG DÙNG C llơ M ÁY I ÍN II.................................................................................................. 53 CÂU HOI VA BÀI TẠP............................................................................... 55 Chương 2 K IẺN TRÚC CPU CUA M Ả Y T ÍN H • MỤC TIHIJ..................................................................................................... 58 • NỌI DUNG..................................................................................................... 58 58 2.1. S ự T I I - N H OÁ CỦA CÁC B ộ VI X Ử LÝ I N T E L .............................. ốl 2.2. CẢU I RÚC C P U ............................................................................................ 66 2.3. TẠP CÁC THANH GHI CỦA VI X Ừ I.Ý .......................................... 70 2.4. CÁC PHƯƠNG PHÁP QUÁN LÝ BỘ N H Ó .................................... 72 2.5. CÁC PHƯƠNG PHÁP ĐỊNH ĐỊA c u i ............................................. 2.6 MÃ IIOÁ L Ệ N II..................................................................................... 73 2.7. TẠP LỆNH VI x ử LÝ 8086................................................................ .75 CÀU llò l VẢ BÀI TẬP............................................................................... 86 Chương 3 B ộ NHỚ VÀ CÁC T H IÉ T BỊ NGOẠI VI 88 • MỤC ru -u ......................................................................................... 88 NỘI DUNG...................................................................... 3.1. KI1-N TRÚC HỆ THỐNG N llớ MẢY VI TÍNH 88 4 GIÁO TRlNH MÁY TÍNH VA MẠNG MAy tín h 3.2. HỆ THÔNG V À O /R A ...................................................................................116 3.3. GHÉP NÓI THIẾT BỊ NGOẠI V I................................................................126 3.4. MỘT SỐ THIẾT BỊ NGOẠI V I.................................................................... 139 CÂU HỎI VÀ BÀI TẬP................................................ „...................................145 Chưong 4 G IỚ I T H IỆ U VÈ MẠNG M Á Y T ÍN H VÀ M Ạ NG IN TER N ET • MỤC T IÊ U .............................................................................................................147 • NỘI DUNG .............................................................................................................147 4.1. KHÁI NIỆM VÊ MẠNG MÁY T ÍN H ......................................................... 147 4.2. CÁC THÀNH PHÀN M Ạ N G ........................................................................153 4.3. GIAO THÚC VÀ CÁC MÒ IIÌN II DỊCH v ụ ............................'...........169 4.4. CÂU TRÚC MẠNG IN TER N ET.................................................................186 CẢU HỎI VÀ BÀI TẬP........................................................................................ 190 Chưưng 5 CÁC ỨNG DỤNG MẠNG • MỤC T IÊ U ............................................................................................................. 192 • NỘI DUNG.............................................................................................................192 5 .1 NGUYÊN LÝ HOẠT ĐỘNG CÚA CÁC GIAO THÚC LỚP ỨNG DỤNG.................................................................................................... 192 5.2. CÁC CHƯƠNG TRÌNH ỬNG D ỤN G ........................' ........................... 202 CẢU HỎI VÀ BÀI TẬP........................................................................................235 Chương 6 LỚP TRU YẺN T Ả I • MỤC T IÊ U ............................................................................................................ 237 • NỘI DUNG ............................................................................................................ 237 6.1. CÁC DỊCH VỤ VÀ NGUYÍÍN LÝ c ơ BẢN TRONG LÓP TRUYỀN T Ả I........................................................................................237 6.2. PHƯƠNG THÚ'C TRUYỀN DÃN KHÔNG KÉT NÓI U D P.................. 243 6.3. PHƯƠNG THỨC TRUYÈN DÂN CÓ KẾT NÒI TCP.............................247 6.4. ĐIỀU K1IIÉN l.UÓNG TRONG TC P .........................................................262 6.5. ĐIÊU KHIẾN L Ỏ I......................................................................................... 263 CÂU IIỎ I VẢ BÀI TẬP........................................................................................ 264 MUC LỤC 5 Chương 7 I.O T M ẠNG VẢ CÁC PHƯƠNG PHÁP Đ ỊN H TUYÉN • Ml.'C I lí:tJ............................................................................................................. 265 • NOI D UN G .............................................................................................................265 7.1. CHÚC NĂNG L.ỞPMẠNG TRONG M Ò 1 IÌN II PHẢN I.ỚP................265 7.2. GIAO T llử c l.li.N MẠNG IP .....................................................................271 7..V ( JI A O m ú c PI1ẢN GIAI D Ị A C I I I ...................................................................... 291 7.1. GIAO 11 lứ c THÔNG DII.iP DIÊU KHIKN INTERNET IC M P...........293 7.5. CilAO I Ilú c DỊNH TU Y I-N ........................................................................294 7.6. KOI. I I l<......................................................................................................... 317 CẢI HOI VẢ BÀI TẠP........................................................................................326 Chưoìig 8 M Ạ N(; c ụ c Bộ - M ẠNG LAN • MỤC' I II I . .............................................................................................................329 • NOI DUNG..............................................................................................................329 8.1. DẠC I RƯNG CUA MẠNG CỰC' H Ộ ....................................................... 329 8.2. KU-N TRÚC MẠNG c ụ c B ộ ........ ......... .................................................. 331 8.3. CÁC HIƯ Ơ NG PHÁP TRUY CẠP DƯỜNG T R U Y Ề N ........................ 335 8.4. CÔNG NGHI; MẠNG c ụ c Bộ - L A N .................................................... 356 8.5. CÁC 1'HIÊT BỊ MẠNG LA N ...................................................................... 372 8.6. CÔNG NGHỆ MẠNG DIỆN RỘNG W A N ...............................................380 CẢU MÓ! VÀ BÀI TẠP........................................................................................ 397 DAN1I MỤC TẢI TIỆU THAM K HA O ....................................................................398 J 2 ờ i n ó i đ a u Mạng máy lính phát sinh lừ nhu cầu muốn chia se, dùng chung n'li nguyên và chu phép giao liếp trục tuyến (online) cũng như cúc ứng iluriii íhi phương tiện Irên mạng. Tài nguyên gổm có lài nguyên phún mém (dữ liệu, chương lành ứng dụng...) và lài nguyên phần cứng (máy in. máy quét, CD-ROM ). Giao tiếp trực tuyến hau gom gưi và nhận /hông điệp, thư điện lư... Cúc ứng dụng đa phương tiện có thê là phút thanh, truyền hình, điện thoại qua mạng, hội thao trực luyến, nẹhe nhạc, xem phim... Sự kết hợp cua máy tính với các hệ thống truyền thông đã lạo ra cuộc cách m ạnẹ trong vấn đè tô chức khai thác và sư dụng hệ thống máy tinh. Mỏ hình tập trung dựa trên máy lính lớn được thay thế bới mô hình các máy lính dơn le được kếl nối lại đê cùng thực hiện cúng việc, hình thành môi trường làm việc nhiều người sư dụng phún lán. cho phép núng cao hiệu qua khai thác tài nguyên chung lừ những vị trí địa lý khác nhau. Các hệ thống như ihỡ dược gọi là mạng máy tính. Với sự phiu Iriên cua khoa học và kỹ thuật hiện nay, các hệ thông mạng máy linli del phát triên một cách nhanh chóng và đa dụng, cà vể quy mô, hệ điếu hành vù ừng dụng. Do vậy, việc nghiên cứu đê vận hành, khai thác chúng ngày càng trơ nén phức lạp. Tuy nhiên, các mạng máy tính có cùng các điém chung, thông qua đỏ chúng ta có thê khao sát, phân loại và đánh ỵiá chúng. Giáo trìnli M áy tínli và M ạng m áy tínli là một trong các cuốn sách cua bộ sách Đ iện - Điện tử do tập thê giang viên Khoa Điện - Diện tư, Trường Đại học S u phạm Kỹ thuật Hưng Yên biên soạn dựa trên kinh nghiệm giáng dạy và nghiên cứu Irong những năm qua. Nội dung chính cùa cuốn sách nham Cling cấp cho sinh viên những kiến thức về kiến trúc máy lính, cúc kỹ nùng ihiếl kế, cấu hình vù quan trị hệ thống mạng LAN. Đây có thê xem là những kiến thức nền làng, quan trụng cho các quán trị viên ve hệ thong mạng máy lính. Chính vì vậy, cuốn sách còn là nguồn lài liệu tham khau hint ích cho các sinh viên chuyên ngành Công nghệ thông tin, Kỹ thuật mảy linh và nhũnÍỊ người Jang làm công lác kỹ' thuật trong lĩnh vực Điện, Điện lư và Tin học. 8 GIÁO TRlNH m Ay Tín h v a m ạ n g m ả y t ín h Sách được biên soạn cùa sách này nhằm mục đích bám sát mục liêu cua học phần, nên sau mỗi phần lý thuyết đểu có các vi dụ cụ thê đê giúp người học hiêu rũ vấn để, các hệ thống câu hỏi và bài tập cuối chương iỊÌúp người học hệ thong lại và nắm chắc kiến thức. Các ví dụ. bài lập đều đã đưục kiêm nghiệm thông qua các bài thực hành, thí nghiệm, sẽ rất có ích cho nạười hục trong quá trình làm việc thực tế. Nội dung cùa cuốn sách gồm 8 chương: C hư ơng 1. lỏ n g quan hệ thống máy linh. Chưoug 2. Kiến trúc C PU cua máy linh. C h v o n g 3. Bộ nhớ và các thiết bị ngoại vi. C hương 4. Giới thiệu về mạng máy lính và Internet. C hương 5. Các ứng dụng mạng. C hư ong 6. Lớp truyền tái. C hư ơng 7. Lớp m ạng và các phương pháp định luyến. C h u ô n g 8. Mạng cục bộ - mạng LAN. Trong quá trình biên soạn cuốn sách này, chúng lôi đã tham khao một sô lượng lớn lài liệu, kết quá nghiên cứu của nhiều tác gia trong và ngoài nước. Chúng lôi xin chân thành càm ơn các cơ quan, tỏ chức, các tác gùi với những thông, lin đã được trích dẫn trong cuốn sách. Tuy nhiên, do điều kiện thời gian gấp rút nên nhóm tác già không thê gặp hết các tác gia Jê xin phép. Rất mong được các lác gia lượng thứ. Chúng tôi xin chân thành cam ơn các nhà khoa học, các giang viên, các đỏng nghiệp ờ trong và ngoài trường đã có nhiều ý kiến đóng góp quỷ báu cho nhỏm tác giá trong quá trình biên soạn. Nội dung cuốn sách đã được dùng làm tài liệu giàng dạy chu các lớp Dại học và Cao đăng trong nhiều năm và đã qua nhiều lần cập nhật, chinh sưa. Tuy vậy, cuốn sách khó tránh khòi những thiếu SÓI. Chúng tôi rất mong nhận được những ỷ kiến đóng góp cùa các đồng nghiệp và bạn đọc đê kịp thời chinh sửa. bổ sung cho lần tái bủn sau. Mọi ỷ kiến xin gửi về Khoa Diện - Diện tứ, Triàmg Dại học Sư phạm Kỹ thuật llưng Yên. CÁC TÁC GIA DANH MỤC CÁC TỪ VIÉT TÁT Từ viết tắt Chú thích Ý nghĩa Acc User Account User Tài khoản người dùng ADSL Asymmetric Digital Subscriber Line ASCII American Standard Code for Information Interchange Đường thuê bao bát đối xửng - kết nổi bâng thông rộng Bố rnã chuẩn cùa Mỹ dùng đé trao đối thông tin BCD Binary Coded Decimal Bảng mã số BCD BIOS Basic Input/Output Hệ thống nhập/xuất cơ sớ BIU Bus Interface Unit Đơn vị giao tiếp BUS CMD Command Dòng lệnh đẻ thực hiện một chương trinh nào đó CPU Central Processing Unit Đơn vị xử lý trung tâm DNS Domain Name System Hệ thống phân giái tên miền thành IP và ngược lại E-Mail Electronic Mail Hệ thống thư điện tử FTP File Transfer Protocol Giao thức truyền tải file HDD Har Disk Driver ô đĩa cứng HTTP Hyper Text Transfer Protocol Giao thức truyền tải file dưới dạng siêu vãn bản I/O InpuưOutput Cổng suất nhập 1C Intergrated Circuit Mạch tích hợp IDE Integrated Development Enviroment IEEE Institute of Electrical and Electronics Engineers Chuẩn tích hợp mạch điều khiển ổ đĩa Viện Kỹ nghệ điện và điện tử LAN Local Area Network Mạng máy tinh cục bộ 10 GIÁO TRlNH MÂY TÍNH VẢ MẠNG MÁY TÍNH Từ viết tắt Chú thích Ý nghĩa MAC Media Access Control Khả nâng kết nối ờ tảng vật lý NIC Network Interface Card Card giao tiếp mạng OSI Open System Interconnection Mô hinh liên kết hệ thống mớ - chuẩn hoá quốc tế PC Program counter Bộ đếm chương trinh POP Post Office Protocol Giao thức văn phòng, dùng đé nhận Mail từ Mail Server RAM Random Access Memory Bộ nhớ truy cập ngẫu nhiên ROM Read Only Memory Bộ nhớ chỉ đọc SMTP Simple Mail Transfer Protocol Giao thửc truyền file đơn giản dùng đẻ nhận Mail từ Mail Client đến Mail Server TCP/IP Transmission Control Protocol/Internet Protocol Giao thức mạng URL Uniform Resource Locator Dùng đé định nghĩa một Website, lá đích của một liên kết USB Universal Serial Bus Chuẩn truyèn dữ liệu cho BUS (thiết bị) ngoại vi. UTP Unshielded Twisted Pair) Cáp xoắn đôi - dùng đé Kết nối mang thững qua đầu nối RJ45 VLSM Variable-Length Subnet Mask Mặt nạ mạng con cố chiều dài thay đổi WAN Wide Area Network Mạng máy tinh diện rộng Wi-Fi Wireless Fidelity Kỷ thuật mạng không dây WWW World Wide Web Hệ thống Web diện rộng toàn cảu Chương 1 TỔNG QUAN HỆ THốNG MÁY TÍNH MỤC TIÊU Sau khi học xong chương này. người học: s Hiếu được lịch sử phát trién của hệ thống máy tính, cũng như xu hướng phát trién của hệ thống máy tinh Nắm vững các khái niệm cơ bản liên quan đến các hệ thống số được dùng trong máy tính. Thành thạo các thao tác biến đổi số giữa các hệ thống số s Nắm được cấu trúc của hệ thống máy tính, các thuật ngữ và khái niệm cơ bản của hệ thống máy tinh ^ Biết được cách biểu diễn thông tin trong máy tinh và ý nghĩa của một số phần mèm thông dụng ^ Nhận biết, kiẻm tra, sửa chữa hỏng hóc một số bộ phận của hệ thống máy tính và cái đật hệ điều hành Window XP NỘI DUNG 1.1. Lịch sử phát triển của hệ thống máy tính. 1.2. Các thuật ngữ và khấi niệm cơ bản 1.3. Thông tin và biếu diễn thông tin trong máy tinh 1.4. Sơ lược các bộ phận của hệ thống máy tính 1.5. Giới thiệu một số phần mèm thông dụng dùng cho mấy tính. Câu hỏí và bài tập 11. LỊCH Sử PHÁT TRIỂN CÙA HỆ THỐNG MÁY TÍNH Sự phát triển của máy tính được mô tà dựa trên sự tiến bộ cùa các công nghệ chế tạo các linh kiện cơ bán của máy tính như: vi xứ lý, bộ nhớ, ngoại vi... 12 GIÁO TRlNH MÁY TÍNH VA MẠNG m a y tín h Máy linh diện tư số trài qua năm thế hệ liên tiếp. Việc chuyên từ thố hệ trước sang thê hệ sau được đặc trưng bằng sự thay đôi cơ ban về công nghệ. • Thế hệ 1: Máy tính dùng dèn chân không (Vacwnm Tube) (1 9 4 0 - 1956). • Thế hệ 2: Máy tính dùng Transitor (1956 - 1963). • T hế hệ 3: Máy tính dùng mạch tích hợp 1C (Intergrcưed Circuit) (1963 -1 9 7 1 ). • Thế hệ 4: Máy tính dùng mạch tích hợp cực lớn VLSI (Very Large Scale Intergration) (1971 đcn nay). • Thế hệ 5: Máy tính sứ dụng trí tuệ nhân tạo (từ ngày nay dến sau này). Hình 1.1. Máy tinh ENIAC - Electronic Numerical Integrator and Computer (Máy tinh thế hệ 1) 1.1.1. Máy tính thế hệ 1 d) M áy tính E N IA C (Electronic N um erical Integrator and Computer) Dc xuất năm 1943 và hoàn thành năm 1946, được sử dụng đến nám 1956, bời thầy trò Eckert và Mauchly - Trường đại học Pennsylvana của Mỹ. Chương 1. TỔNG QUAN VẼ MẠNG MÁY TÍNH 13 Dặc diêm chính: - Nặng 30 tấn. chiếm diện lích khoảng 150m2 và sứ dụng l40KW /h. - 5000 nghìn phép cộng trên giâv. - Sử dụng hệ thập phân. - Lập trình bãng công tăc. - Sừ dụng 18000 bóng đòn diện từ (vacumm tubes). b) M áy tinh IA S (Institute fo r Advanced Studies) Xây dụng dựa trcn ý tường của Turring (Mỹ) và Von Neumann (Anh). Thiết kế năm 1947 và hoàn thành năm 1952. Vào giữa những năm 50 cùa thế ký XX. khi những thế hệ máy tính đầu tiên được dưa vào hoạt dộng thực tế. với những bóng dèn điện tử thì chúng có kích thước rất cồng kềnh và tốn nhiều năng lượng. Hồi đó việc nhập dữ liệu vào các máy tính dược thòng qua các tấm bia mà người viết chương trình dã đục lỗ sẵn. Mồi tấm bìa tương đưang với một dòng lệnh mà mỗi một cột cúa nó có chứa tất cà các ký tự cần thiết mà người viết chương trinh phải đục lồ vào ký tự mình lựa chọn. Các tấm bia được đưa vào một "thiết bị" gọi là thiết bị đọc bìa mà qua đó các thông tin được đưa vào máy tính (hay còn gọi là trung tâm xứ lý), và sau khi tính toán kết quá sẽ được dưa ra máy in. Hinh 1.2. Micral (Pháp) máy vi tinh lắp ráp hoàn toàn đàu tiên 14 g iAo TRlNH m a y t ín h v à m ạ n g m â y TlNH Như vậy, các thiết bị đọc bìa và máy in được thể hiện như các thiết bị vào/ra (I/O) đối với máy tính. Sau một thời gian các thế hệ máy mới được đưa vào hoạt động, trong đó một máy tính trung tâm có thể được nối với nhiều thiết bị vào/ra mà qua đó nó có thể thực hiện liên tục hết chương trình này đến chương trình khác. 1.1.2. Máy tính thế hệ 2 - Lab Bell phát minh ra transistor vào nãm 1947, các đèn điện tứ được thay thế bằng đèn điện tử lưỡng cực. - Đen cuối năm 1950, máy tính thương mại dùng transistor xuất hiện trên trị trường. - Kích thước máy tính giảm, rè tiền hơn, tiêu tốn năng lượng ít hơn. - Vào thời điểm này mạch in và bộ nhớ bằng vòng xuyến tò được dùng. - Ngôn ngữ cấp cao xuất hiện (như FORTRAN năm 1956, COBOL năm 1959, ALGOL năm 1960) và hệ điều hành kiểu tuần tự (Batch processing) được dùng. 1.1.3. Máy tính thế hệ 3 - Xuất hiện các mạch tích hợp 1C (Intergrated Circuit). - Các mạch tích họp mật độ th ấ p (SSI: Sm all Scale Integration) CÓ thể chứa vài chục linh kiện. - Mạch tích hợp mật độ trung bình (MSI: Medium Scale Integration) chứa hàng trăm linh kiện trên mạch tích hợp. - Mạch in nhiều lớp xuất hiện. - Bộ nhớ bán dẫn bắt đầu thay thế bộ nhớ bàng xuyến từ. Hình 1.3. Chip VXL intel 4004 - Máy tính đa chương trình và hệ điêu hành chia thời gian đirợc dùng. Chương 1 TỎNG QUAN VẺ MẠNG MẢY t ín h 15 1.1.4. Máy tính thế hệ 4 - 1C có mật độ tích hợp cao (LSI: Large Scale Integration) có thể chứa hàng ngàn linh kiện. - 1C mật độ tích hợp rất cao (VLSI: Very Large Scale Integration) có ihế chứa hơn 10 ngàn linh kiện trên mạch (Hiện nay, các chip VLSI chứa hàng triệu linh kiện). - Xuất hiện bộ vi xứ lý (microprocessor) chứa cả phần thực hiện và phần diều khiến cúa một bộ xứ lý. - Bắt dầu xuất hiện các thế hệ máy tính cá nhân. - Bộ nhớ bán dẫn, bộ nhớ cache, bộ nhớ ào được dùng rộng rãi. - Dùng kỹ thuật ống dẫn, kỹ thuật vô hướng, xử lý song song... Hinh 1.4. IBM/PC đầu tiên khởi đầu cho dòng mây PC phổ biến ngày nay 16 GIÁO TRlNH MÁY TlNH va m ạng máy tín h 1.1.5. Máy tính thế hệ 5 Máy tính thế hệ 5 đang trong giai đoạn phát triển, hoạt động dựa trên trí thông minh nhân tạo. Mục tiêu cùa máy tính thế hệ 5 là xây dựng các thiết bị tính toán có đầu vào là ngôn ngữ tự nhiên, thiết bị có khả năna học tập và tự tồ chức. Tính toán lượng tử, (ế bào và công nghệ nano sẽ được sù dụng trong the hệ này. Đặc điểm cùa máy tính the hệ này là: - Sừ dụng chip có mật độ tích hợp siêu lớn; - Có trí tuệ nhân tạo; - Có thế nhận biết hình ánh, đồ hoạ; - Máy tính thế hệ 5 có thố giải quyết những vấn đề phức tạp, bao gồm việc ra quyết dịnh, lập luận lôgic; - Máy tính thế hệ 5 có thể sử dụng nhiều hơn một CPU nên tốc độ xử lý nhanh hơn; - Máy tính thế hệ 5 được dự định làm việc với ngôn ngữ tự nhiên. 1.1.6. Xu hướng phát triển của các hệ thống máy tính Việc chuyển từ thế hệ 4 sang thế hệ 5 còn chưa rõ ràng. Người Nhật đã và đang đi tiên phong trong các chương trình nghiên cứu đề cho ra đời thế hệ 5 của máy tính, thế hệ cùa những máy tính thông minh, dựa trên các ngôn ngừ trí tuệ nhân tạo như LISP và PROLOG... và nhũng giao diện người - máy thông minh. Đến thời điểm này, các nghiên cứu đã cho ra các sản phẩm bước đầu và gần đây (2004) là sự ra mắt sản phẩm người máy thông minh gần giống với con người nhất: ASIMO (Advanced Step Innovative M obility - Bước chân tiên tiến cùa đôi mới và chuyển động). Với hàng trăm nghìn máy móc điện từ tối tân được đặt trong cơ thé, ASIMO có thể lên/xuống cầu thang một cách uyển chuyển, nhận diện nguời, các cử chì hành động, giọng nói và đáp ứng một số mệnh lệnh cùa con người. Thậm chí, nó có thế bắt chước cứ động, gọi tên người và cung cấp thông tin ngay sau khi bạn hỏi, rất gần gũi và thân thiện. Chương 1. TỔNG QUAN VẾ MẠNG MAY t ín h 17 Hiện nay có nhiều công ty, viện nghiên cứu cùa Nhật thuê ASIMO tiếp khách và hướng dẫn khách tham quan như: Viện Bào tàng Khoa học năng lượng và Đồi mới quốc gia. hãng IBM Nhật Bán. Công ty Điện lực Tokyo. Hãng Honda bất đâu nghiên cứu ASIMO từ năm 1986. dựa vào nguyên lý chuyên động bằng hai chân. Cho tới nay, hãng đã chế tạo được 50 robot AS1MO. Các tiến bộ liên tục về mật độ tích hợp trong VLSI dã cho phép thực hiện các mạch vi xừ lý ngày càng mạnh (8 bit, 16 bit, 32 bit và 64 bit với việc xuất hiện các bộ xứ lý RISC năm 1986 và các bộ xứ lý siêu vô hướng năm 1990). Chính các bộ xư lý này giúp thực hiện các máy tính song song với từ vài bộ xử lý đến vài ngàn bộ xứ lý. Điều này làm các chuyên gia về kiến trúc máy tính tiên đoán máy tính thế hệ 5 là thế hệ các máy tính xử lý song song. (i) M á\ tinh thông minli - Máy tính thông minh dựa trên các ngôn ngữ trí tuệ nhân tạo nhu l.ISP. PROLOG... - Máy tính song song với từ vài bộ xử lý đến vài ngàn bộ xử lý. - Máy tính đứng thứ hai thế giới hiện nay thuộc dự án INCITE (2009) của Bộ Năng lượng Mỹ với khả năng xử lý 1,75 petafllop (triệu tý phép tính mỗi giây). - Dứng thứ ba là Nebulae (2009) thuộc Trung tâm Máy tính siêu quốc gia ớ Thâm Quyến ('['rung Quốc) có tốc độ 1,27 petailop. - Đứng thứ tư là Tasubamc 2.0 (2010) cùa Nhật với tốc độ 1,2 petaflop và dược dặt tại Viện Công nghệ Tokyo ( Tokyo Tech). - Hopper (2010) được đặt theo tên Admiral Grace Hopper - người tiên phong trong việc phát triển phần mềm và ngôn ngữ lập Irình. là siêu má) tính mạnh thứ năm thế giới với tốc dộ 1,05 pctailop, hiện được dặt tại trung tâm điện toán NERSC thuộc Bộ Năng lượng Mỹ. - Blue Gene/Q "Mira" được IBM lên kế hoạch hoạt động từ nãm 2012, với tốc độ tới 10 petaflop, gấp 4 lần Tianhe-1 A. - Exa - Scale Computer (2018 - 2020) là tham vọng lớn của Mỹ trong việc xây dựng một siêu máy tính nhanh cấp 1.000 lan máy tính nhanh nhất hiện nay, và có thế đếm mại ngôi sao trọjng VỊiTÍụchi trong 20 phút. 2-G TM Y TINH 18 GIÁO TRlNH MÁY TÍNH VA MẠNG MAY t ín h Hinh 1.5. Siêu máy tinh Tianhe- 1A (2010) của Trung Quốc đạt tôc độ 2,5 petaflop - Deep Rybka 3 (2011) sẽ là máy tính chơi cờ vua giòi nhất thế giới. - Stratus có tốc độ 0,07 petaflop thuộc Trung tâm Dự báo khí tượng Mỹ, dược coi là siêu máy tính dự doán khí hậu và thời tiết chuẩn nhất thế giới. - Watson (2010) là máy tính chơi game Jeopardy giỏi nhất và nó tự đưa ra câu trà lời mà không cần người điều khiển. b) Giao diện người -m á y tltông minlí ASIM O (AdvancedStep Innovative Mobility - Bước chân tiên tiến của dối mới và chuyến động) Hinh 1.6. Người máy thõng minh ASIMO Chương 1 TỔNG QUAN VẾ MANG MẢY TÍNH 19 Hình 1.7. Robot HRP- 4C có khả năng trình diễn thời trang tại Nhật Bản Hình 1.8. HRP-4C thê hiện các dạng vé mặt Robot người mẫu dược dặt tên là HRP-4C này có 30 motor trong cơ thê. cho phcp "cô" bước và chuyển động cánh tay một cách mềm mại. 8 motor trôn mặl giúp HRP-4C thể hiện sự giận dữ và ngạc nhicn. Người máy dặc biệt này có chiều cao l ,6m và nặng 40kg (thông số trung bình cùa phụ nữ Nhặt Bán). c) Hệ thống n h úng Sau sự phát triển cùa máy tính lớn và mini (mainframe và mini computer) giai đoạn I960 - 1980. PC - Internet giai doạn 1980 - 2000, thì hiện nay chúng ta dang ở thời đại hậu PC. Giai đoạn hậu PC - Intemcl này dược dự doán từ năm 2000 dến năm 2020 là giai doạn cùa môi trường thông 20 GIÁO TRlNH MÁY Tín h v a m ạ n g m ả y tính minh mà hệ thống nhúng là cốt lõi, và đang làm nên làn sóng đôi mới thứ ba trong sự phát triên cùa Công nghệ thông tin. Sức đây của công nghệ dưa công nghệ vi điện từ, các công nghệ vi cơ diện, công nghệ sinh học hội tụ. tạo nên các chip của công nghệ nano, là nền tảng cho những thay đôi cơ ban trong công nghệ thông tin và truyền thông. Sức kéo cùa thị trường đòi hoi các thiết bị phải có nhiều chức năng thân thiện với người dùng, có mức dộ thông minh ngày càng cài thiện, dưa đến vai trò và tẩm quan trọng của các hệ thống nhúng ngày càng cao. Thời kỳ hậu PC là thời kỳ có những chuyển biến lớn trong công nghe, dó là: - Chip sẽ chuycn từ chip linh kiện sang chip hệ thống, có khá năng kẽt nôi mạng và phần mềm mạnh. - Chuyến dịch từ trọng tâm là PC sang trọng tâm là truyền thông và tính toán chuyên ngành. Trọng tâm thiết kế chuyền sang thiết kế các san phâm tiêu dùng có khá năng kết nối không dây. hội thoại với người dùng theo ngôn ngữ tự nhiên, ngôn ngữ hình ánh và dáng điệu... Hình 1.9. Các hệ thống nhúng - Giá trị dịch vụ sẽ chiếm tỷ lệ chu chốt so với giá thành thiết bị kết nối. Do các chuyển biến này mà các thiết bị nhúng đòi hòi phái có những dặc tính nôi trội sau: Chương 1. TỔNG QUAN VÉ MẠNG MẤY TÍNH 21 - Giá thành san phẩm ré và tiêu tốn ít năng lượng. - Có khả năng tái cấu hình qua mạng và có tính chuyên dụng cao. Bàng 1.1. Câc thế hệ mẳy tính Thẻ hộ Năm Kỹ thuật Sán phắm mới Hãng sản xuất và máy tính 1 1940- 1956Đèn điện tứ Máy tinh điện từ tung ra thị trường IBM 701. UNIVAC 2 1956 - 1963 Transistor Máy tinh rẻ tiền Burroughs 6500 NCR, CDC 6600, Honeywell 3 1963- 1971 Mạch IC Máy tinh mini 50 Hãng mới: DEC PDP -1 1 , Data General, Nova đến nay LS I-V LS I Máy tinh cá nhản Apple II, IBM - PC, Appolo DN 41971 5Hiện tại đến tương lai Tri tuệ nhân tạo vá trạm làm việc Máy tinh đa xử lý, đa máy tinh, tri tuệ nhàn tạo, tế bào, công nghệ nanô 300, Sun 2... Sequent. Thinking machine Inc, Honda, Casio 1.1.7. Phân loại máy tính Thông thường máy tính dược phân loại theo tính năng kỹ thuật và giá tiền. • S i í u m á y t í n h (S u p er C o m p u ter) Là các máy tính đắt tiền nhất và tính năng kỹ thuật cao nhất. Giá bán một siêu máy tính từ vài triệu USD. Các siêu máy tính thường là các máy tính vectơ hay các máy tính dùng kỹ thuật vô hướng, được thiết kế đề tính toán khoa học, mô phòng các hiện tượng. Các siêu máy tính được thiết kế với kỹ thuật xử lý song song, với rất nhiều bộ xừ lý (hàng ngàn đến hàng trăm ngàn bộ xử lý trong một siêu máy tính). • M áy tín h lớn (Mainframe) Là loại máy tính đa dụng, nó có thé dùng cho các ứng dụng quàn lý cũng như các tính toán khoa học. Dùng kỹ thuật xử lý song song và có hệ 22 GIÁO TRlNH MÁY TÍNH VÀ MẠNG MÁY TỈNH thống vào/ra mạnh. Giá một máy tính lớn có thê từ vài trăm ngàn USD đến hàng triệu USD. • M áy tính m ini (Minicomputer) Là loại máy cỡ trung bình, giá một máy tính mini có thê từ vài chục USD den vài trăm ngàn USD. • M áy vi tính (Microcomputer) Là loại máy tính dùng bộ vi xử lý, giá một máy vi tính có thê từ vài trăm USD đến vài ngàn USD. 1.2. CÁC THUẬT NGỮ VÀ KHÁI NIỆM c ơ BẢN Với sự phát triển cua khoa học và kỹ ihuật. hiện nay các mạng máy tính đã phát triển một cách nhanh chóng và đa dạng cả về quy mô, hệ diều hành và ứng dụng. Do vậy, việc nghiên cứu chúng ngày càng trớ nên phức tạp. Tuv nhiên, các mạng máy tính cũng có cùng các điếm chung, thông qua dó chúng ta có thè dánh giá và phân loại chúng. • Máy tính (Computer) Là thiết bị điện tứ thực hiện các công việc: - Nhận thông tin vào. - Xứ lý thông tin theo chương trinh sẵn bên trong bộ nhớ máy tính. - Dưa thông tin ra. • C h U'OHg trình (Program) - Chương trình là dãy các câu lệnh nam trong bộ nhớ, nhằm mục dích hướng dẫn máy tính thục hiện một công việc cụ thể nào dó. - Máy tính thực hiện theo chương trình. • Phần mềm (Software) Bao gồm chương trình và dữ liệu. • Phần cứng (Hardware) Bao gồm tất cả các thành phần vật lý cấu thành ncn hệ thống máy tính. • Phần déo (Firmware) Là thành phần chứa cả hai phần trên. Chương 1. TỔNG QUAN VẾ MẠNG MẤY TÍNH 23 • Kiến trúc máy tính (Computer Architechture) l)è cập đôn các thuộc tính cua hệ thống máy tính dưới cái nhìn cùa người lập trình, hay nói cách khác, là những thuộc tinh anh hương trực tiếp don quá trình thực hiện logic cua chưcmg trình. Bao gồm: tập lệnh, biêu diễn dừ liệu, các cư chế vào/ra, kỹ thuật đánh địa chi... • C ấu trúc máy tính (Computer structure) Người dùng CÁC TRÍNIĨ ứ n g DUNG DUNG t ----------------------- ---------------- ----- 1 . ____, , ________ Nhà lập trinh I CÁC PHẲN MẺM TRUNG GIAN ĩ ^ I ---------------------- ----------------L —1 r J HỆ ĐIẺll HÀNH . PHẤN CỨNG MÁY TÍNH Nhà thiết kẽ OS Hình 1.10. Mõ hình phân lớp hệ thống máy tinh Cấu trúc máy tính là những thành phần cùa máy tính, và liên kết giữa các thành phần. Ở mức cao nhất máy tính gồm 4 thành phần: - Bộ xử lý: Diều khiên và xứ lý số liệu; - Bộ nhớ: Chứa các chương trình và dữ liệu; - I lộ thống vào/ra: Trao đổi thòng tin giữa máy tính với bên ngoài; - Lièn kết giữa các hệ thống (BUS): Liên kết các thành phần cùa máy tính lại với nhau. 1.3. THÔNG TIN VÀ BIẾU DIẼN THÔNG TIN TRONG MÁY TÍNH 1.3.1. Lượng thông tin và sự mã hoá thông tin • T rạn g thái có ý nghĩa Trạng thái thấp khi có hiệu diện thế thấp hơn V[ và trạng thái cao khi hiệu diện thế cao him VII- Đê có thông tin, ta phái xác định thời điém ta nhin trạng thái cua tin hiệu. Ví dụ. tại thời điểm t| thì tín hiệu ớ trạng thái thấp và tại thời diêm t; thi tin hiệu lại ớ trạng thái cao. Đơn vị do lường thông tin là bit. 24 GIÁO TRlNH MÁY TÍNH VA MẠNG MẢY tín h Hinh 1.11. Thông tin về hai trạng thái có ý nghĩa của hiệu điện thế • Lượng thông tin dược định nghĩa bới công thức: I = Log2(N), trong đó: I - lượng thông tin tính bàng bit; N - số trạng thái có thề có. Như vậy, lượng thông tin là số con số nhị phân cần thiết để biểu diễn số trạng thái có thể có. Do vậy, một con số nhị phân được gọi là l bit. Một từ n bit có thể tượng trưng một trạng thái trong tổng số 2" trạng thái mà từ dó có thể tượng trưng. Một từ n bit tương ứng với một lượng ihông tin n bít. 1.3.2. Biểu diễn thông tin trong máy tính (ỉ) Nguyên tắc chung Mọi dữ liệu đưa vào máy tính đều được mã hoá thành số nhị phân. • Các loại dữ liệu - Dữ liệu nhân tạo: Do con người quy ước. - Dữ liệu tự nhiên: Tồn tại khách quan với con người. - Mã hoá dữ liệu nhân tạo. - Dữ liệu số nguyên: Mã hoá theo một số chuẩn đã quy ước. - Dữ liệu số thực: Mã hoá bằng số dấu phẩy động. - Dữ liệu phi số (ký tự): Mã hoá theo các bộ mã hoá ký tự hiện hành như: ASCII, Unicode... Chưíng 1. TỔNG QUAN VÉ MẠNG MÂY TÍNH 25 Tín hiệu vặt lý Hinh 1.12. Mỗ hình mã hoá và tái tạo tín hiệu vật lỷ • Các tín hiệu thông dụng - I linh ánh. - Ảm thanh. • T h ứ tụ- lưu trữ các byte trong máy tính - Bộ nhớ chính tổ chức lưu trữ dữ liệu theo đơn vị byte. - Dộ dài từ dữ liệu có thề chiếm từ l dến 4 byte. Vì vậy, cần phái biết thú tự chúng lưu trữ trong bộ nhớ chính đối với các dữ liệu nhiều byte. - Có hai cách lưu trữ được đưa ra: + Little endian (dầu nhò): Byte có ý nghĩa thấp hơn dirợc lưu trữ trong bộ nhớ ở vị trí có dịa chi nhỏ hưn. + Big endian (đầu to): Byte có ý nghĩa cao hơn được lưu trừ trong bộ n h ơ ơ V Ị t r i c ó đ ì a c h i l ớ n h o m . Vi dụ: Lưu trữ một từ dữ liệu 32 bit. 0001 1010 0010 1011 0011 1100 0100 1101(B) ~ Ĩ A 2B 3C 4D (H) Biếu diễn trong ngăn nhớ: Báng 1.2. Little endian Bàng 1.3. Big endian 300 4D 301 3C 302 2B 303 1A 300 1A 301 2B 302 3C 303 4D 26 GIÁO TRlNH MÁY TÍNH VÀ MẠNG MAY t ín h • Lưu trữ của các bộ vi xử lý diến hình - Loại máy Intel: 80x86, Petium —» Little endian. - Motorola 680x0 và các bộ xừ lý RISC -> Big endian. - Power PC & Itanium: Tích hợp cả hai cách trên. b) Biêu diễn so • K hái niệm hệ thống số - Cơ sở của một hệ thống số dịnh nghĩa phạm vi các giá trị có the có cua một chữ số. Ví dụ: Trong hệ thập phàn, một chữ so có giá trị từ 0 den 9; trong hệ nhị phàn, một chữ số (một bit) chi có hai giá trị là 0 hoặc 1. - Dạng tông quát dè biếu diễn giá trị cúa mộl số VL = I b,k' . I m trong dó: Vk - số cần biêu diễn giá trị; m - số thứ tự cùa chữ số phần lè (phân lé cùa số cỏ m chữ số dược dánh số thứ tự từ -m đến - 1); n - 1 - sô thứ tự cùa chữ số phần nguyên (phần nguycn của số có n chữ sô, có thứ tự từ 0 đến n - 1); bi - giá trị cùa chữ số thứ i; k - hệ số (k = 10: hệ thập phàn, k - 2 : hệ nhị phân...). Vi dụ: Biếu diễn số 541.2510- Ta có 5 4 1 . 2 5 , 0 = 5* 102 + 4 * 1 0 ' + 1 *10 ° + 2 * 1 0 ' ' + 5 * 1 0 2 - (500)10 + (40)10 + (1)10 + (2/10)10 + (5/100)1,,. Một máy tính chú yếu đirợc cấu tạo bằng các mạch điện tử có hai trạng thái. Vì vậy rất tiện lợi khi dùng các số nhị phân dc biếu diễn số trạng thái cua các mạch diện hoặc đê mã hoá các ký tự, các số cần thiết cho vận hành cùa máy tinh. Dê biến dồi một số hệ thập phân sang hệ nhị phân, ta có hai phương thức biển dôi: - Phương thức số dư: Bien dôi phần nguyên cùa số thập phân sang nhị phân. 17 dụ: Dối (23.375)io sang nhị phân. Đế làm điều dó, chuyển dối phần nguyên, dùng phương thức số dư như sau: Chương 1 TỔNG QUAN VẾ MẠNG MÁY TÍNH 27 bu gù 23/2 - ụ t -<— bit có Dọng I r +1 1/2 = 51 5/2 = 21 ¥2/2 — 11 1/2 - 0 1-*--- (2 3 ) ,0 - (101 1 1)2 I ’lnivnf’ thức nluln đê biên đôi phân le của sô thập phàn sang nhị phân j— bit có cọng 375 X 2 = 0.75 sồ lónnhá 1 75 X 2 * 1.5 f5 x 2 = 1.0 {___ bu co irons (J75)|„=(.011)2 ỉố nhònhẳi .2 X T - 0.4 1 .4 X 2 - 0.8 1 Ỷ.8 X 2 1.61 Ỷ .6 X 2 1.2 1 *.2 X 2 0.4 Kct quả cuối cùng nhận được: 23.375|0 = 10111.0 1 12. Tuy nhicn, trong việc biến đối phần lé cùa một số thập phân sang số nhị phân theo phương thức nhân có một số trường hợp việc biến đối số lặp lại vô hạn. IV dụ: Trường hợp biến dối số nhị phân sang các hệ thống số khác ta có thè nhóm một số các sổ nhị phân đế biếu diễn cho số trong hệ thống số tương ứng. 28 GIÁO TRỈNH MAY TlNH VÀ MẠNG MÁY TÍNH Báng 1.4. Một số hệ thống số tương ứng với hệ nhị phẫn Binatry (Bas 2) Octal (Base 8) Decimal (Base 10) Hexadecimal (Base 16) 0000 0 0 0 0001 1 1 1 0010 2 2 2 0011 3 3 3 0100 4 4 4 0101 5 5 5 0110 6 6 6 0111 7 7 7 1000 10 8 8 1001 11 9 9 1010 12 10 A 1011 13 11 B 1100 14 12 c 1101 15 13 D 1110 16 14 E 1111 17 15 F Thông thường, người ta nhóm 4 bit trong hệ nhị phân để biểu diễn số dưới dạng thập lục phân (Hexadecimal). Như vậy, dựa vào cách biến đổi số trong bảng nêu trên, ta có ví dụ về cách biến đổi các số trong các hệ thống số khác nhau theo hệ nhị phân: 1 0 1 12 = ( I O 2X I I 2) = 2 3 4 2 3 4 = ( 2 4)(3 4) = ( 1 0 2) ( n 2) = 1 0 1 1 2 1010102 = (IO I 2KOIO2) = 52g 011011012 = ( 0 1 1 02)( 11012) = 6 D | 6. • M ộ t từ n bit có thể biểu diễn tất cà các số dương từ 0 đến 2" - 1. Ncu di là một số thập phân thứ i, một từ n bit tương ứng với một số nguvên thập phân là: Chương 1. TỔNG QUAN VẾ MẠNG MAY t ín h 29 N = £ d , 2 '. 1-0 • M ột Byte (gồm 8 bit) có thê biêu diễn các số từ 0 đến 255 và một từ 32 bit cho phcp biêu diễn các số từ 0 dến 4294967295. * Biêu diễn số nguycn chia thành hai loại: - Sỏ nguyên khóm; dâu: Giá sứ dùng n bit đê biêu diễn số nguyên không dấu. Dài giá trị biếu dicn iu: 0 -ỉ- (2" - 1). 17 dụ: n = 8 : dai giá trị từ 0 255; n = ] 6 : dái giá trị từ 0 * 65535. - Số nguyên có dấu: Sò bù 1 và số bù 2: Cho một số nhị phàn N được bieu diễn bởi n bit. Ta co: ■ Số bù 1 cùa N bằng (2" - 1) - N; ■ Số bù 2 cùa N bằng 2" - N. Vi dụ: Cho số N = 0001 00012 dược biểu diễn bởi n = 8 bit. Xác dịnh số bù 1 và bù 2 cùa N. Áp dụng công thức: 11111111 (2n — 1) 0001 0001 (N ) Số bù 1 cùa N là: 1110 1110 Nhận xét: ■ Số bù 1 cùa một số N được xác dịnh bằng cách đáo các bit trong N. ■ Sô bù 2 của một số N dược xác định bàng cách lấy số bù 1 của N cộng thêm 1: Số bù 2 cùa N = (Số bù 1 của N) + 1. + Gia sứ dùng n bit đê biêu diễn số nguyên có dấu, dái mà n bit biêu diễn dưực là (-2 n -1 . 0..., 2" 1 - 1). Giá trị cùa số nguyên đó được tính theo hai phần ricng biệt: 30 GIÁO TRlNH MÂY Tín h v a m ạ n g mAy t ín h + Phần giá trị dương: 0 -r (2n_l - 1). + Phần giá trị âm: - 2 n l -ỉ- -1. Trong đó bit có trọng số cao nhất (hay bit ngoài cùng bên trái cua dãy nhị phân được máy tính sử dụng để biểu diễn dấu của giá trị): • Ncu bang 0 thì sổ nhị phân cần tính có giá trị là số dương và cỏ dạng tong quát là 0a,v 2&n 3—ao; • Nếu bằng 1 thì số nhị phân cần tính có giá trị là số âm và có dạng tống quát là lan-2an 3-..ac. • Biểu diễn số thực Ví dụ: Khối lượng Mặt Trời: 199000000000000000000000000000000000g: Khối lượng diện tứ: 0.00000000000000000000000000000910956g. Biểu diễn số trên trong máy tính nếu sử dụng cách biếu diễn số có dâu phẩy tĩnh rất bất tiện, vi vậy sử dụng số có dấu phay động. Biểu diễn cho số thực (Floating Point Number) có dạng X = M *R e, trong đó: X - số thực; M - phần định trị; R - cơ số (2); E - phần mũ. - Chuân 1EEE754/85, gồm: + Số có dấu phẩy động chính xác đơn 32 bit. + Số có dấu phẩy động chính xác kép 64 bit. + Số có độ chính xác mờ rộng dài 128 bit (quadruple). 31 30 23 22 0 s e m 63 62 52 22 0 s e m Hình 1.13. Chuẩn IEEE754/85 Chương 1. TỔNG QUAN VỂ MẠNG MÂY TÍNH 31 Trong dó: s - bit dâu: c l í t 127 => K ■= c -127: m - phần lc cùa phần định trị M: M 1 .m. G i á trị s ố t h ự c là: X ( 1 )sc * 1 .m * 2 1" 7. - Cách biêu diễn băng sỏ thùa K.: Trong cách này. số dương cua một số N cỏ dược bàng cách "cộng them vào" số thừa K dược chọn sao cho tông cua K. và một số âm bất kỳ luôn luôn dương. Sô âm -N cùa số N có dược bărm cách 1 ày K - N (hay lấy bù 2 cua số vừa xác dịnh). 17 dụ: số thừa K = 128. số "cộng them vào" 128 là một số nguyên dương. Sô âm là số lấy bù 2 số vừa tính, bo qua số giữ bit cao nhất: +2510= 100110012 - 2510 = 011001112. Dùng 1 Byte (8 bit) dc biêu diễn một số có dấu lớn nhất là +127 và số nho nhát là 128. Chi có một giá trị 0: +0 - lOOOOOOCK. - 0 = 00000000:. - Cách biêu diễn số nguycn có dâu bằng số bù 2 được dùng rộng rãi cho các phcp tính số nguyên. Nó có lợi là không cần thuật toán đặc biệt nào cho các phép tính cộng và tính trừ. và giúp phát hiện dề dàng các trường liọrp bị tràn. - Các cách biểu diễn bàng "dấu. trị tuyệt đối" hoặc bàng "số bù ]" dẫn den việc dùng các thuật toán phức tạp và bấl lợi vì luôn có hai cách bicu diễn cùa số không. Cách biếu diễn bang "dấu. trị tuyệt đối" được dùng cho pliep nhan cua só co dáu pháy động. Cách biểu diễn bàng số thừa K được dùng cho số mũ cùa các số có dấu phây dộng. Cách này làm cho việc so sánh các số mũ có dấu khác nhau trở thành việc so sánh các số nguycn dương. • Các phcp toán vói số dấu phấy dộng - Tăng số mũ cùa số có số mũ nhó hơn bang với số mũ cùa số có số mù lớn. - Cộng hoặc trừ phần dịnh trị. - Chuân hoá lại kct quá. 32 GIÁO TRlNH MÁY TÍNH VÀ MẠNG MÂY TlNH Trước khi di vào cách biếu diễn số với dấu phẩy động, ta xét cách biếu diễn một số dưới dạng dấu phây tĩnh. Ví dụ: Trong hệ thập phân số 25410 có thê biêu diễn dưới các dạng sau: 254 * 10"; 25.4 * 101; 2.54 * 102; 0.254 * 103; 0.0254 * 104;... Trong hệ nhị phân, số (0.00011 >2 tương duơng với số (0.09376)|0 có thê biếu diễn dưới các dạng: 0.00011; 0.00011 * 2°; 0.0011 * 2 0.011 * 2~2; 0.11 * 2~3; 1.1 * 2 4. Các cách biểu diễn này gây khó khăn trong một số phép so sánh các số. De dề dàng trong các phcp tính, các số dược chuân hoá về một dạng biêu diễn: ± l . f f f . . . f x 2 ±k, trong đó: f - phần lé; lì - phần mũ. Số dấu phấy động dược chuẩn hoá cho phép biếu diễn gần dúng các số thập phân rất lớn hay rất nhỏ dưới dạng một số nhị phân theo một dạng quy ước. Thành phần cùa số phấy dộng bao gồm: phần dấu, phần mũ và phần dịnh trị. Như vậy. cách này cho phép biếu diễn gần đúng các số thực, tất cà các số đều có cùng cách biếu diễn. Có nhiều cách biểu diễn dấu phay động, trong dó cách biếu diễn theo chuấn IEEE754 được dùng rộng rãi trong khoa học máy tính hiện nay. Trong cách biếu diễn này, phần định trị có dạng 1, f với so 1 ân tăng và f là phần so lè, Chuân IEEE 754 định nghĩa hai dạng biếu diễn số dấu phấy động: - Số phẩy dộng chính xác dơn với dịnh dạng dược dịnh nghĩa: Chiềudài số 32 bit được chia thành các trường: dấu s (Sign bit - 1 bit), mũ E (Exponent - 8 bit), phần lè F (Fraction - 23 bit). Sổ này tương úng với số thực: ( - l ) s * ( l , f , f 2 ... f 2 3 ) * 2 ( E " l2 7 ) 3 1 3 0 2 3 2 2 1 0 s E F 1 F 2 2 F 2 3 Hình 1.14. Biểu diễn số có dấu phẩy động chinh xâc đơn với 32 bit Chương 1. TỔNG QUAN VÉ MẠNG MẢY TÍNH 33 - Số dấu phây động chinh xác kép với định dạng được định nghĩa: Chiều dài số 64 bit được chia thành các trường: dấu s (Sign bit - 1 bit), mũ lì (Hxponent - 11 bit), phần lè F (Fraction - 52 bit). Số này tương ứng với số thực (-1 )s * (l,fi fs2) * 2(E” l023). 63 62 52 51 1 0 s E F1 F51 F52 Hinh 1.15. Biểu diễn số có dấu phẩy động chinh xác kép với 64 bit Dế thuận lợi trong một số phép tính toán, IEEE định nghĩa một số dạng mờ rộng cùa chuân IEEE 754. Bảng 1.5. Một số dạng mở rộng của chuẩn IEEE 754 Tham số Chinh xác đơn Mở rộng chinh xác đơn Chinh xác kép Mớ rộng chinh xấc kép Chiều dài bít 32 ĩ 43 64 ỉ 79 Chiều dài trường mũ (E) 8 a 11 11 ì. 15 Số thừa 127 - 1023 > 15 Giá trị mũ tối đa 127 £ 1023 1023 s 16383 Giá trị mũ tối thiéu -126 s -1022 -1022 s -16382 Chiều dài trường lẻ (F) 23 £31 52 2 63 Chuẩn IEEE 754 cho phép biểu diễn các số chuẩn hoá (các bit của E không cùng lúc bằng 0 hoặc bàng 1), các số không chuẩn hoá (các bit cùa E không cùng lúc bàng 0 và phần số lẻ fl ũ ... khác không), trị số 0 (các bit cua E không cùng lúc bằng 0 và phần số lẻ bằng không), và các ký tự đặc biệt (các bit của E không cùng lúc bằng 1 và phần lẻ khác 0). c) B iểu diễn ký tự • BCD (Binary Coded Decimal): Mã hoá các số thập phân bàng các kýhiệu nhị phàn. 3-GT MAY TINH 34 GIẢO TRlNH MÁY TÍNH VA MẠNG MAY TÍNH Bảng 1.6. Các ký hiệu nhị phân mã hoá các số thập phân Thập phân BCD Thập phàn BCD 0 0000 8 1000 1 0001 9 1001 2 0010 Cấm 1010 3 0011 Cám 1011 4 0100 Cấm 1100 5 0101 Cẩm 1101 6 0110 Cám 1110 7 0111 Cấm 1111 • M ã A SCII (American Standard Code for Information Interchange) Biểu diễn các ký tự hiến thị dược và ký tự diều khicn: Báng 1.7. Bảng mă ASCII tiêu chuắn Decimal Hex ASCII Decimal Hex ASCII Decimal Hex ASCII Decimal Hex ASCII 0 0 NUL 32 20 G4 40 # 96 CO 1 1 SOH 33 21 I 65 41 A 97 61 a 2 2 STX 34 22 - 66 42 B 9« 62 ' b 3 3 ETX 35 23 # 67 43 c 99 63 c 4 4 EOT 36 24 $ 68 44 D 100 64 d 5 5 ENO 37 25 s 69 45 E 101 65 e 6 6 ACK 38 26 & 70 46 F 1U2 66 f 7 7 BEL 39 27 • 71 47 G 103 67 9 0 0 OS 40 28 I 72 48 H 104 60 h 9 9 HT 41 29 • > 73 49 I 105 69 i 10 A IF 42 2A 74 4A J 1U6 6A j 11 B VT 43 2B ♦ 75 4B K 107 6B k 12 c FF 44 2C . 76 4C L 100 6C 1 13 D CR 45 2D 77 40 M 109 6D m 14 E SOH 46 2E 78 4E N 110 bt n 15 F SI 47 2F / 79 4F 0 111 6F 0 16 10 DLE 48 30 0 80 50 p 112 70 p 17 11 DC1 49 31 1 81 51 Q 113 71 q 18 12 D O 50 32 2 82 52 R 114 72 r 19 13 D O 51 33 3 83 53 s 115 73 s 20 14 DC4 52 34 4 84 54 T 116 74 t 21 15 NAK 53 35 5 85 55 u 117 75 u 22 16 SYN 54 36 6 86 56 V 118 76 V 23 1/ ETB 55 37 7 87 57 w 119 77 w 24 18 CAN 56 38 8 88 58 X 120 78 X 25 19 EM 57 39 9 89 59 Y 121 79 y 26 1A SUB 58 3A 90 5A z 122 7A ỉ 27 1B ESC 59 3B J 91 5B I123 7B { 28 1C FS 60 3C < 92 5C \ 124 7C 29 1D GS 61 30 » 93 50 I 125 7D i 30 1F RS 6? 3E > 94 5E A 126 7E 31 1F US 63 3F ? 95 5F 127 7F □ Chương 1. TỔNG QUAN VẾ MẠNG MAY TlNH 35 Bàng 1.8. Bàng mã ASCII mở rộng D ec Hex C h a t Dec Hex C b a t D ec Hex C h a t Dec Hex C har 123 80 rX 160 AO a 192 CO L 224 EO « 129 81 u 161 Ả I i 193 225 E l 130 13 1 82 83 é a 162 163 A2 A3 ó ú 194 'Ề Ề ặ£ T » 5 § g » |- 226 227 t z E3 r n 132 84 a 164 A4 n 223 M z 133 85 a 165 AS N 229 r s Ơ 134 86 ã 166 A6 a198 m w . t 230 1 6 ụ 13 5 87 13 ỠA % é 170 ÀA 1 202 CẠ A 234 EA Q 139 8B 1 171 AB H 203 ; ĩ 235 EB Ỗ 140 8C ’• í 172 AC lr 23 6 . EC 00 141 8D ị ì 173 AD í z o s i j m ; .= 237 ED 0 142 8E A 174 AE « 2ũỂ ể p f * 233 IE’c 143 8F Ẳ 175 Al­ » 2 ủ 7 v c r - > 239 i r n 144 90 É 176 s o 203 240 TO 5 14 5 91 * 177 B I 209 * | T 241 F I 14 6 92 £ 173 B2 B 210 Ị>2 r 242 T2 147 93 i à 179 B3 1 2 11 f p l f 1 2 43 F3 Ú 148 94 o 180 M Ê 212 ■ -M: " k 244 f l Í 149 95 ỏ 181 B5 i 213 I S r 245 r s J 15Ũ 96 ù 182 B6 II 2 n | | i s r 246 r 6 151 97 ù 183 B7 TI 247 JT7 w 152 98 y 184 B8 2 I t • x>8;- ị 2 48 T8 • 153 99 0 135 B9 121 7 • 249 r s • 154 9A u 186 BA II 213 r 2 50 FA 155 9B c 187 BB iì 21 9 » . J ) ậ ; ị | 251 FB V ICC 9C L 10 0 BC JJ 2 2 0 ’ PC B 202 r c “ 157 9D ¥ 189 BD 221 I ’M ; ’ 1 253 FD * 150 9E K. 190 BE J 222 DE ' 1 254 » ■ 159 91 ỉ 191 BF 1 22 3 $ t> r ■ 25 5 r f □ (!) Cúc phép toán luận / j Hu phép toán thông thường trong nhóm của các phép toán luận lý đó là AND. OR và KXCl.USIVl- OR (XOR). Chúng tương tự như phép cộng và trừ với hai toán hạng và trà về một kết quà duy nhất (Trái lại có một số phép toán mà giá trị tra về cua nó sẽ cho ra hai số khác dấu nhau như là phép lấy căn bậc hai. ví dụ như 4 khi lấy căn bậc hai sẽ cho hai kết quá là 2 và -2 ). Bà) gió la sẽ xem qua một số phép toán như sau: 36 GIÁO TRlNH MÁY TÍNH VÀ MẠNG MẢY TÍNH • Phép AND Nếu hai biến logic A và B được kết hợp qua cổng AND, kết quả là: X = A.B. Bảng giá trị chân lý cùa phép AND (phép nhân) hai biến A và B như bàng 1.9. Bảng 1.9. Bảng giá trị chân lý của phép AND 2 đầu vào A B X = A.B 0 0 0 0 1 0 1 0 0 1 1 1 Kết luận: A - B - X = AB Cổng AND Hình 1.16. Ký hiệu cổng AND 2 đầu vào - Phép toán AND có kết quà bàng 0 nếu một hay nhiều biến dầu vào bằng 0 . - Cổng AND chi có l đầu ra và có nhiều horn 2 đầu vào. Ví dụ: Cổng AND 3 đầu vào có bản sự thật như sau: Bảng 1.10. Bảng giá trị chân lý của phép AND 3 biến A B c X = ABC 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 A — B — c--- Cổng AND Hình 1.17. Cổng AND 3 đàu vào Chưong 1. TỔNG QUAN VẾ MẠNG MÂY TÍNH 37 Các 1C sổ: - DM 7408: 1C AND 2 đầu vào. v cc B4 *4 r« B3 A3 Y3 Hình 1.18. Sơ đổ của 1C DM7408 - D M 74LS11: 1C AND 3 dầu vào. « r r C1 V t C J A 3 V3 Hình 1.19. Sơ đổ Của IC DM74LS11 • Phcp O R A và B là hai biến độc lập. Khi A và B kết hợp qua phép OR, kết quả X dưọc mô lả như sau: X = A + B. 38 GIÁO TRlNH MÂV Tín h v a m ạ n g m á y tín h Trong biếu thức này dấu không có nghTa là phép cộng thuần tuý. Nó là phcp OR. kết quá cùa phép OR dược cho trong bang giá trị chân lý như báng 1. 11. Bảng 1.11. Bảng già trị chân lỷ phép OR 2 đầu vào A B X = A + B 0 0 0 0 1 1 1 0 1 1 1 1 Kẽl luận: Y=A+B Cổng OR Hình 1.20. Ký hiệu công OR 2 đấu vào - Phcp toán OR sẽ có kết qua bàng l nếu một hay nhiều biến dầu vào băng l . - Cống OR chì có l đầu ra và có thế có nhiều hơn 2 đầu vào. - Ký hiệu và báng giá trị chân lý cùa cổng OR 3 đẩu vào như hinh 1.21. Bảng 1.12. Báng giá trị chân lý phép OR 3 đàu vào A B c X » A + B + c I 0 0 0 0 i0 1 1 í 0 i1 0 1 ! 0 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 X=A+B+C Hình 1.21. Cổng OR 3 đầu vào Chương 1 TỔNG QUAN VẺ MẠNG MẨY t ín h 39 IC’ l)M 741.S 32(O R 2dầu vào) 1 A . 1 B - 2 A - 2B 3 A - 3B - 4 A - 4 B - 3 0 J L > 3 0 3 0 •3Y ■ 4 Y Hình 1.22. Sơ đổ chẳn của IC DM4LS32 • Phép K X C LLSIV E O R (XOR) Phép toán XOR (ký hiệu ©) có báng giá trị chân lý bảng l .]3. Báng 1.13. Bàng già trị chân lỷ phép XOR 2 đàu vào X Y X© Y 0 0 0 0 1 1 1 0 1 1 1 0 X YX © Y Hinh 1.23. cổng XOR 2 đầu vào - Từ báng giá trị chân lý ta nhận thấy rằng: X © Y = ] khi X Ỷ Y và X © Y = 0 khi X = Y. - Bicu thức toán cùa phcp toán XOR: X ® Y = XY + YX . - IC SN741 36 1 A t_ 1 u 14 0 v c c 1 B c 2 1 3 3 4B 1 Y c 3 1 7 3 4 A 2 A II 4 11□ 4 Y 2D c 5 1 0 □ 3 B 2 Y c 6 9 3 3 A G N D c 7 8 3 3 Y V c c m - 4 = ^ Hình 1.24. Sơ đổ chân của 1C SN7413 40 GIÁO TRlNH MÁY TÍNH VÀ MẠNG MÁY TÍNH • Các phép chuyến dịch và quay Các phép toán thuộc lớp các phép toán như phép quay (rotation) và phép dịch chuyển (shift), đều có ý nghĩa biến đổi các bit trong một thanh ghi và thường được sử dụng để giải quyết các bài toán thực hiện trên bit. Ví dụ như biến đổi một byte theo một yêu cầu nào đó bàng cách sừ dụng mặl nạ. hoặc thao tác trên phần định trị của các số biểu diễn ờ dạng dấu phẩy động. Những phép toán này được phân chia tuỳ theo hướng di chuyển của các dãy bit (sang trái hay sang phải). Cho một byte gồm 8 bit, nếu ta thực hiện phép toán SHIFT cho dãy bit cùa nó sang hướng trái hay phái thì bit đầu tiên cùa byte (là bit cao nhất nếu dịch chuyển sang phải, hay bit thấp nhất khi dịch chuyển sang trái) sẽ bị chuyền đi, và bit cuối cùng cùa nó (là bit cao nhất nếu dịch chuyển sang trái, hay bit thấp nhất khi dịch chuyển sang phải) sẽ được đặt là 0 . Ví dụ: Cho một byte có giá trị là 10001110, khi SHIFT trái một lần sẽ là 00011100 hoặc SHIFT phải kết quà là 01000111. Đối với phép toán quay, cũng giống như phép SHIFT. Nhưng bit cuối sẽ được chuyển vào bit đầu tiên. Ví dụ: Cho một byte có giá trị là 10001110, khi ta quay trái một bit thì kết quả sẽ là 00011101; quay phải một bit thì kết quả sẽ là 01000111. Phép toán SHIFT thường được sử dụng cho các phép nhân hay chia cho 2, đối với SHIFT trái chính là nhân cho 2, và SHIFT phải là chia cho 2. Do đó phép toán này này ta gọi là phép chuyén số học (arithmetic Shifts). 1.3.3. Bộ cộng, bộ trừ a) Bộ cộng, trừ số nlíị phân • Bộ cộng (Thực hiện cộng hai số nhị phân) - Bộ cộng nữa (H alf adder - HA): Gọi A là số được cộng; B là số cộng; s là tổng của A và B; c là số nhớ ra từ phép cộng. Xét mạch cộng nhị phân l bit: Với tồ hợp 4 trạng thái logic cùa A và B thì trạng thái logic đầu ra s và c . Chương 1. TỔNG QUAN VẾ MẠNG MAy TlNH 41 Rút gọn b iể u th ứ c logic ta có: s = A © B; c = AB. s là dầu ra cùa cồng XOR 2 đầu vào A và B; còn c là đầu ra của cổng AND. Bàng 1.14. Bảng giá trị chàn lý của phép cộng nửa A B s c 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 A s B c Hình 1.25. Mạch cộng nửa Cấu trúc logic cùa mạch: Đây là mạch cộng nứa hay cộng chưa đù vì chưa có số nhớ ban đầu cùa phép cộng trước đó. - Bộ cộng đù (Full adder - FA): Giá sứ mạch đã thực hiện phép cộng lần dầu rồi nên được tồng là So và sô nhớ Co, nếu tiếp tục cộng lần 2 khi trạng thái logic của A và B thay đổi thi s khòng chi là tống cua A và tí mà gồm cá C'o trước đó. Mạch cộng dú như hình l .26. A3B3 A2 B2 A I AO AO BO MSB LSB Hinh 1.26. Mạch cộng đủ 42 GIẢO TRlNH MÁY TÍNH VA MẠNG MAY t ín h Rút gọn biếu thức ta dược: S = C o © (A ® B ); c = AB + (A © B). Báng 1.15. Bảng giá trị chân lỷ cùa phép cộng đủ A B Ci s Co 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 Cẩu trúc của mạch logic cùa mạch cộng đú như hình l .27. FA thực ra bao gồm trong nó HA và cống OR ờ dầu ra cho số nhớ c. Mạch HA ở trên mới chì làm phép cộng 1 bit. - Bộ cộng nhiều bit song song: Neu 2 số cộng có nhiều bit hơn thỉ cách cộng cũng tương tự, irước hết cộng 2 bit LSB dể cho bit tống (LSB). sổ nhớ được dưa tới dể cộng chung với 2 bit kế tiếp bit LSB dể cho bit tổng ớ hàng kế tiếp cho đến phép cộng cuối cùng giữa 2 bit MSB de được bit tổng hàng đó, số nhớ bây giờ trở thành bit LSB cùa tổng. Đây là một mạch cộng song song, vì các hàng được cộng cùng một lúc. tuy nhiên như cấu trúc mạch ờ trên thỉ các bit ra cùa tông không phái là đồng thời, bởi vi các phép cộng ờ các bit cao thì chậm hon do phái chờ bit nhớ ở phép cộng trước đưa tới. Tức là đã có trì hoãn làm giám tính dồng bộ của mạch. Nếu thèm vào mạch cho phép cung cấp sẵn các bit nhớ đê phục vụ cho các phép cộng ở các hàng được cùng lúc thì s? khắc phục được nhược diêm này. Chương 1. TỔNG QUAN VẾ MẠNG MÁY TÍNH 43 Với còng nghệ tích hợp cao. việc them mạch cung cấp sằn các bit nhớ trá nên dề dàng hơn. khi đó mạch trơ thành mạch cộng có số nhớ nhìn trước. Một sỏ K’ làm phép cộng du là: 7480 ( I bit). 7482 (2 bit). 7483/LS83/283 (4 bit). Vi dụ: Xct qua 1C 74LS83 (hình 1.28). EL| Lị C4 Cộ GND Bj Aj I 1 IU II o r J I IO ) 74LS83 13 — B1 a 2b2a3bJa4 b4 Co C4 I 1I 2I 3S4C4 14 L'J m n r n m m m r m ..... N Vcc Lị b2 Aj 9 6 2 15 14 Hình 1.28. Kỷ hiệu khối và chản ra 74LS83 l rong dó : 2 số 4 bit vào là A.1A3A2A 1 và B4B3B2B1; số nhớ ban đầu là Co Vậy. tông ra sê là C4S4S3S2S1, với C.1 là số nhớ cua phcp cộng. Báng 1.16. Bàng già trị chăn lý của mạch cộng 4 bit 74LS83 SỐ nhđ đầ u C(n-l)Sổ cộng Tổng EnSỐ nhđ SdU An Bn Cn 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 __ 1____1 1 1 1 ia Ti c4 Hinh 1.29. Mạch logic cùa 74LS83 44 GIÁO TRlNH MAY TÍNH VÀ MẠNG MÂY TlNH Cỏ thể nối chồng IC cộng lại với nhau đề cho số bit gấp đôi. Khi đó bit M SB (C4) cùa tầng đầu được nối tới đầu vào nhớ ban đầu (Co) cùa tầng sau. - Bộ cộng nhiều bít nối tiếp (Bộ cộng hai số nhị phân 4 bit): Ngoài cách cộng song song còn có một dạng mạch cộng số nhiêu bit nữa gọi là mạch cộng nối tiếp. Khi đó 2 bit LSB cùa các số được cộng trước, bit LSB cùa tầng dược đưa ra 1 ghi dịch, còn số nhớ sẽ quay trở về cộng chung với 2 bit kế tiếp bit LSB và cứ vậy cho đến 2 bit cuối cùng dược cộng. Mạch ghi dịch đầu ra dịch chuyển sang phải qua mỗi lần cộng sẽ cho ra kết quả cộng số nhớ cuối cùng trở thành bit MSB cùa tồng ra. Mạch thực hiện phép tính chậm hom so với cộng song song, nó cũng cần 1 xung nhịp để giữ cho các mạch làm việc đồng bộ. • Bộ trừ - Mạch trừ nưa và trừ đù: Mạch này cũng gồm 2 loại mạch trừ nứa hay bán phần (hart subtractor - 11S) và trừ đủ hay toàn phấn (lull subtractor - FS, khi dó cần bit mượn Bị trước tham gia vào phép tính). Bảng 1.17. Bảng giá trị chân lý của phép trừ nửa A B D Bo 0 0 0 0 0 1 1 1 1 0 1 0 1 1 0 0 D Bo Hinh 1.30. Mạch trừ nửa Chương 1. TỔNG QUAN VẼ MẠNG MẢY TÍNH 45 Phép trừ thực ra là phép cộng với số âm. Đê có số âm cùa một số ta lấy bù l cùa số đó, còn khi thực hiện mạch thì đó là công đảo. Báng 1.18. Bảng giá trị chán lý của phép trừ đủ A B Bi D Bo 0 0 0 0 0 0 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 1 0 1 0 1 0 0 1 1 0 0 0 1 1 1 1 1 Cấu trúc mạch trừ cũng tương tự mạch cộng, chi khác là số bị trừ B cần phai qua cống đào khi thực hiện AND với số trừ A đề cho số mượn R. Mạch trừ FS cũng gồm 2 mạch trừ MS và cong OR ớ đầu ra cho số mượn Bo. Hình 1.32. Mạch trừ FS - Mạch trừ nhiêu bit: Với mạch trừ nhị phân nhiều bit cũng có thể thực hiện song song các mạch cộng FS từng bit, nhưng các bit cùa số bị trừ cần đirợc đảo, số nhớ của tầng cuối cần đem về bit nhớ ban đầu của tầng đầu. Hinh 1.33. Mạch trừ 4 bit song song Hình 1.34. Mạch trừ 4 bit nối tiếp 46 GIẢO TRlNH MÂY TÍNH VẢ MẠNG MAy t ín h • M ạch cộng, trừ kết họp Neu thêm vào một số công logic cần thiết ta đã có một mạch có the cộng hay trừ tuỳ theo dâu vào diều khiên CT. Khi CT = 0. các cống KXOR có 1 ngõ ớ thấp ncn cho số li qua không bị dao, tức là mạch thực hiện phép cộng. Khi CT = 1. các cống HXOR có 1 ngõ ớ cao nên hoạt dộng như một cổng NO T, số B bị đào. khi đó mạch thực hiện phép cộng A + (-B ), tức là phcp trừ. C()3 là bit l.SB cua tống được vòng trở lại (qua cồng AND) vè c,0; sẽ cho phép cộng nhiều bit. Ngoài cách dùng bù 1 cũng có the dùng bù 2 (lấy bù 1 rồi cộng thêm 1) dê thực hiện phép toán trừ nhị phân kê ca số có dấu. Cách này dược sứ dụng phô biến ơ VXL và máy tinh. Mạch khá giỏng như nó ở cách dùng bù 1, nliưng bit nhớ ra cuối cùng không cân dcm về tầng dầu. Tôntì hay hiệu ra ở dạng bù 2, muốn lay dùng kêt qua thi phai chuycn trơ lại. Khi đó mạch cộng, trừ nhị phân 4 bil dùng hù 2 nlur hình 1.35. Co — ---------------- A G — — ----------ACi ^ ------------------------A C i ____________________ B— ----H e Co! — --------------p n ___________ A O BO A ? B-2 A3 B3 _ r 3 ' 1 Co Co X Co SO/IX* S2/I72 Hinh 1.35. Mạch cộng, trữ dùng 1 bit và 2 bit Chương 1. TỎNG QUAN VẾ MẠNG MÁY TÍNH 47 h) Cộng, trù BCD • C ộnj> hai số IĨCI) ocn (3) Số IK 'I) thực ra cũng là số nhị phân n bit 0110(5.1 nlunm chi có l() tô hợp trạnti thái từ 0000 den 1001 1001 (9) (biêu thị số thập phân Urcmg ứng là từ 0 dcn 9) nên '-6 BCD cách cộng cũng tirơrm tự như cống số nhị phản nhiều bit. 0110(6; * 1000 (8) 1110(141 "'’0110(6) 0001 0100(1 4!) lỏ BCD2 bàng I'u\ nhiên, khi tống vượt quá 1001 tức là tồng dó không còn là so BCI) nữa. do dó ta phai cộng tông với 0110 (số 610) dê cho lòng mới là so BCD. dỏng thời sô nhó chính là hàng cao hơn cua lông. 17 du: Cộng hai số BCD là A3A2A1A0 và B3B2B1B0 cho tông là C3S4S3S2S1 (C’3 là hàng chục nếu có). Hình 1.36. Mạch cộng hai số BCD 1 bit Ncu lông dầu vượt quá 9 (từ 10 dến 18) thì các cổng logic sẽ cho phép xác ilịnh hàng chục, dồng thời lỏng này phái dược cộng thêm 6 ở tâng 741.S83 ihír hai đế cho tông cuối cùng ờ dạng BCD. Ncu tòng không vượt quá 9 (vần là số BCD) thì tỏng hàng chục không có nên 741.S83 thứ hai sẽ cộng tông này với 0, tòng ra không có gi thay đôi. Ta có the ghép nhiều mạch cộng ớ trên dể có mạch cộng hai số BCD nhiều bit. khi dó chi việc nối dầu ra hàng chục cúa tầng đầu tới dầu vào số nhở c, cua làng sau là dược. • T rừ hai số B C D Với phép trir BCD. ta phái lav bù 9 cua số trừ rồi mới làm phcp cộng lại vái số bị trừ. 1 .ấy bù 9 cùa I số tức là lấy 9 trừ di số dó. 48 GIẢO TRlNH MÁY TÍNH VA MẠNG MAY t ín h Vi dụ: Phép trừ BCD: 9 - 5 và 2 - 6 0010(2) ^0001 (bù 9 cùa 8) 0011 (3) bù 9 của 3 li 6 tức 0011 do đà lỉy bỉ 9 nên kết qui cuối cùng phái là -6 sô A Sô B 1001(9) + 0100 (bù 9 cũa 5) 1101 (# BCD) s ố n b d ttà n l 0110(6) I 0100(4) số BCD _____ s ổ ' ra Hình 1.37. Mạch trừ hai số BCD 1 bit c) Mạch nhăn hai số nhị phân về nguyên lý, đó là phép cộng nhiều lần. Mạch ờ hinh 1.38 minh hoạ cho mạch nhân hai số nhị phân 4 bit A và B. Ghi dịch chiTa tố ohẩD B Bô tích tv ohứa tích Hình 1.38. Cấu trúc mạch nhân hai số nhị phân Chương 1 TỔNG QUAN VẺ MẠNG MẢY TÍNH 49 Mạch gồm ghi dịch 4 bit dè chứa số được nhân A. ghi dịch 5 bit đê chửa số nhàn B. ghi dịch 6 bit đê chứa kết quá nhân (còn gọi là bộ tích luỹ: accumulator). 5 công AND sẽ tạo tích từng phần cùa các cặp bit và 6 bộ cộng du dè tạo tích cuối và số nhớ tương ứng. I 'i í/ụ: Phép nhân hai số A = MOI và B = 1011. Số nhân (A): 1101 (13 lo) S ố b ị nhân B : 1011(11 III) rich từng phần 1101 1101 0000 1101 Tích cuối: 10001111 (143|«). 1.4. Sơ LƯỢC CÁC Bộ PHẬN CỦA HỆ THỐNG MÁY TÍNH 1.4.1. Cấu trúc chung của máy vi tính Máy vi tính là một hệ thống được ghép nhiều thành phần tạo nên. Do dó đê máy tính có thê hoạt dộng được ta phải láp ghép các thành phần cùa nó một cách hợp lý và khai báo với các thành phần khác. Ngày nay ngành Tin học dựa trôn các máy tính hiện dang phát triển trên cơ sở hai phần: • Phần cứng Phân cứng là những đối tượng vật lý hữu hình như vi mạch, bản mạch in, dày cáp nối mạch điện, bộ nhớ, màn hinh, máy in, thiết bị đầu - cuối, nguôn nuôi... Phần cứng thực hiện các chức năng xử lý thông tin cơ bản ở mức thâp nhất, tức là lín hiệu nhị phân. • Phần mềm Phần mềm là các chương trinh (Program) điều phối các hoạt động phần cứng cùa máy vi tinh và chi dạo việc xử lý số liệu. Phần mềm cùa máy vi tính có thê chia làm hai loại phần mềm hệ thống (System Software) và phần mềm ứng dụng (Application software). Phần mềm hệ thống khi được dưa vào bộ nhớ chính, nó điều khiên máy tính thực hiện các công việc. Phần 4-GT MAY TINH 50 GIÁO TRÌNH MÁY TÍNH VÀ MẠNG MÁY TÍNH mềm ứng dụng là các chương trình thiết kế đế giải quyết một bài toán hay một vấn dề cụ the đê đáp ứng một nhu cầu riêng trong một số lĩnh vực. Máy tính cá nhân PC (Persional Computer): Theo đúng tên gợi cùa nó là máy tính có thể được sừ dụng bởi riêng một người. Bàn phím Chuột Máy in Hình 1.39. Hệ thống máy vi tính thường được sử dụng 1.4.2. Các thành phần CO’ bản của máy vi tính Hinh 1.40. Sơ đồ tổng quan vế cấu trúc máy tinh • Vỏ máy: Nơi đề gắn các thành phần cùa máy tính thành khối như nguồn, Mainboard, card... có tác dụng bảo vệ máy tính. • Nguồn diện: Cung cấp hầu hết hộ thống điện cho các thiếl bị bôn trong máy tính. Chương 1. TỔNG QUAN VẾ MẠNG MÁY TÍNH 51 • iYlainboard: Có chức năng liên kẽt tất cá các thành phần tạo nên máy tính và là bang mạch lớn nhât trôn máy tính. • CPU (Central Processing unit): Bộ vi xử lý chính cua máy tính. • lìộ nhó' tro n g (ROM. RAM): Nơi lưu trữ dữ liệu và chương trinh phục vụ trực tiếp cho việc xừ lý của CPU. nó giao tiếp với CPU thông qua một thiêt bị trung gian. • lìộ nhó' ngoài: Nơi lưu trữ dữ liệu, chương trình một cách gián tiếp cho việc xư lý cùa CPU. bao gồm các loại dĩa cứng, đìa mềm, CDROM.. Khi giao ticp với CPU nó phải thông qua thiết bị trung gian (thường là RAM) hay gọi tát là ngắt. • M àn hình: Thiết bị đưa thông tin ra ngoài giao diện trực tiếp với người dùng. Dây là thiết bị xuât chuân cùa máy vi tính hay còn gợi là bộ trực (Monitor). • lỉàn phim (Keyboard): Thiết bị nhập tin vào giao diện trực tiếp với người dùng. Dây là thiết bị nhập chuẩn của máy vi tính. • C huột (Mouse): Thiết bị diều khiến trong môi trường dồ hoạ giao diện trực ticp với người sử dụng. • Máy in (Printer): Thiết bị xuất thông tin ra giấy thông dụng nhất. • Các thiét bị nhir Card mạng. Modem, máy Fax... phục vụ cho việc lăp dặt mạng máy và các chức năng khác. • o đ ĩa c irn g : Fĩộ n h á dĩr liệu ch ín h cù a m áy tín h cá nhân, các thành qua cùa một quá trinh làm việc có thô được lưu trữ trên ồ đĩa cứng trước khi có các hành dộng sao lưu dự phòng trôn các dạng bộ nhớ khác. • () dĩa q u an g (CD. DVD): ỉỉộ nhớ dùng cho xuất/nhập dữ liệu với dung lượng lớn hoặc trao dổi dữ liệu, phần mềm với những máy tính khác. Sứ dụng sao lưu dữ liệu và các mục đích khác. Dây không phái là thiết bị băt buộc dôi với hệ thống phân cứng máy tính cá nhân. • o đĩa m ềm : Bộ nhớ dùng cho xuất/nhập dữ liệu với dung lượng thấp (phụ thuộc từng loại dĩa mcm). Dây không phài thiết bị bẳl buộc phái có. • Bo mạch đồ hoạ: Thiết bị có chức năng xuất hình ánh ra màn hình, giúp người sứ dụng giao tiếp với máy tính. 52 GIÁO TRlNH MÁY TÍNH VA MẠNG MÁY TÍNH • Bo mạch âm thanh: Thiêt bị có chức năng xuât tín hiệu âm thanh ra các thiết bị phát âm thanh (loa). Đây không phái thiết bị bẳt buộc phải có. • Bo mạch mạng: Thiết bị có chức năng kết nối các máy tính với nhau thánh một mạng máy tính, giúp máy tính có thể trao dồi thông tin với các máy tính khác trên phạm vi rộng (có thế đến toàn thế giới). Dây không phái thiết bị bắt buộc phải có. 1.4.3. Các thiết bị ngoại vi thường sử dụng • M odem Hình 1.41. Modem wifi • W ebcam Hình 1.42. Webcam • Loa ẽ Hình 1.43. Loa máy tinh Chương 1 TỔNG QUAN VẾ MẠNG MAYTÍNH 53 • M áy in Hình 1.44. Máy in • M áy quét Hinh 1.45. Mảy quét ảnh Hình 1.46. Micro để bàn không dãy 1.5. GIỚI THIỆU MỘT SỐ PHÂN MÊM THÔNG DỤNG DÙNG CHO MÁY TÍNH 1.5.1. Phần mềm trình duyệt Web - I irefox. - Internet Explorer. - Google Chrome. - Opera. 54 GIÁO TRlNH MÁY TÍNH VÀ MẠNG MẤY TlNH 1.5.2. Phần mềm văn phòng thông dụng - Office. - Phần mềm kế toán (EMASS, SAS INOVA 8.0 HRM, Fast Financial, AccountingOnline.vn - Chương trình kế toán trực tuyến...). 1.5.3. Phần mềm xử lý đồ hoạ - Adobe Photoshop của hãng Adobe sản xuất, là phần mềm dồ hoạ chuyên xử lý ảnh dành cho giới chuyên nghiệp (thợ ảnh, kiến trúc sư, quáng cáo...). Được dùng để thiết kế ảnh, phục hồi ánh cũ, vẽ kiểu... - 3D Studio Max là phần mềm đồ hoạ vi tính 3 chiều của Công ty Autodesk Media & Entertainment, hoạt động trên hộ diều hành Window Win 32 hoặc Win 64. 1.5.4. Phẩn mềm lập trình • M ột số phần mềm lập trình c thông dụng (Turbo c . Bloodshed D ev C++, C-Free): - Bloodshed Dev-C++: Chương trinh hỗ trợ đầy dú các chức năng và một IDE chuyên nghiệp, từ việc soạn thảo trợ giúp đến Debug và hỗ trợ thư viện cho các lập trình viên C/C++ (kể cá viết chương trình cho DOS cũng như viết chương trình cho Windows). - C -Free: Chương trình ứng dụng được thiết kế dành riêng cho ngôn ngữ lập trình c . Việc viết code trờ nên dễ dàng (chỉ cần gõ từ đầu tiên cùa từ khoá chương trình sẽ tự động điền các từ khoá thích hợp, tưorng tự như vậy chương trình còn tự động gọi tên hàm). • M icrosoft Visual Studio: Bộ công cụ lập trình toàn diện hỗ trợ đa ngôn ngữ, cho phép xây dựng và tích hợp các ứng dụng và dịch vụ Web, tăng hiệu suất làm việc. Được thiết kế tích hợp chặt chẽ với các chuẩn và giao thức Internet như XML và SOAP, Visual studio. Net đã đơn giản hoá đáng kề quy trình phát triển ứng dụng. • Eclipse: Phần mềm miễn phí, được các nhà phát triển sứ dụng dể xây dựng những ứng dụng J2EE. Sử dụng Eclipse nhà phát triển có thê tích hựp Chưang 1 TỔNG QUAN VẾ MẠNG MÁY TÍNH 55 với nhiều công cụ hỗ trợ khác đô có một bộ công cụ hoàn chinh mà không cân dùng đến phần mềm riêng nào khác. Hlipse SDK gồm 3 phần chính là: Platform. Java Development Toolkit (JDT), Plug-in Development Environment (PDH). Với JDT. Fxlipse dược xem như là một môi trường hỗ trợ phát tricn Java mạnh mẽ. PDK hỗ trợ việc mở rộng Eclipse, tích hợp các Plug-in vào Hclipse Platform. F.clipse Platform là nền táng cúa loàn bộ phần mèm l-xlipse. mục đích cùa nó là cung cấp những dịch vụ cần thiết cho việc lích hợp những bộ công cụ phát triển phần mếm khác dưới dạng Plug-in, ban thân JDT cũng có thể được coi như là một Plug-in làm cho Eclipse như là một Java IDỈi (Integrated Development Enviroment). CÂU HỎI VÀ BÀI TẬP 1. Dựa vào tiêu chuấn nào nguời ta chia máy tính thành các thế hệ? 2. Dặc trưng cơ bán của các thế hệ máy tính thứ 1, thứ 2, thứ 3 và thứ 4. 3. Khuynh hướng phát triên cùa hệ thống máy tính ngày nay là gì? 4. Việc phân loại máy tính dựa trên tiêu chuẩn nào? 5. Lượng thông tin là gì? 6 . ĩ rong máy tính, các số âm dược lưu trữ và xừ lý như thế nào? 7. Dicm chung nhất trong các cách biểu diễn một số nguyên n bit có dấu là gì? 8 . N ô u c á u t r ú c c ù a m ộ i l i ệ I h ỏ n g m ấ y l i n h d o n g i ả n . 9. K.C tên các phần mềm cài dặt cho máy tính mà em biết. 10. Xác định dạng sóng đầu ra cống OR khi đầu vào A, B thay đổi theo gián đồ sau: 1 56 GIÁO TRlNH MÁY TÍNH VA MẠNG MAY TÍNH 11. Xác định hàm đầu ra cùa các mạch sau: A B(a) a) X = AB + BC; b) X = ABC(A + D); c) y = AC + BC + ABC. 13. Xác dịnh dạng sóng dầu ra cùa cổng NAND ứng với dầu vào như sau: - Q J L _ 14. Đồi các số hệ thập phân sau sang hệ nhị phân: a) 128 b ) 4096 c ) 256 d) 65536 e) 254 t ) 9 g) 1024 h) 15 i) 3 44 j ) 9 9 8 15. Đổi các số hệ nhị phân sau sang hộ thập phân, hệ thập lục phân: a) 1001 1001 b) 1001 1101 c) 1100 0011 d ) 0 0 0 0e)l 11 ] 1111 0 0000 1111 g) 0 1 II 1111 h) 1010010] 1)01000101 j) 0 1 0 1 1010 k) 1111 0000 1) 101 ] 1101 m) 1 1 0 00010 n) 0111 1110 o) m o 1111 16. Dổi các số hệ thập lục phân sau sang hệ nhị phân: a) OABCD b) 1024 c) ODHAD e) OBEEF 0 8 g) 05AAI i) OACDB j) OCDBA. d) OADl. h ) OFFF? Chương 1 TỔNG QUAN VÉ MẠNG MẢY TÍNH 57 17. Biêu diễn sổ thực (37.76)m dưới dạng số cỏ dấu phẩy dộng chính xác den 32 hit. 18. Thực hiện các phép toán AND các cặp giá trị ứ hệ thập lục phân sau: a) 0IT00. OITO b) Ol'OOF. 1234 c) 4321, 1234 d )2 3 4 1 .3241 c) OITIT. Ol-DCB 1) 11 11,5789 g )01-ABA. 4322 h) 5523. 01-572 i) 2355, 7466 (( ợi ý: Chuyến các íiiá trị dó sang hộ nhị phân, sau đó thực hiện tính toan, rồi lại đối lại giá trị ờ dạng thập lục phân). 19. Cho hai số A =■ 0.010 * 23; B = 0.11 * 22. Hãy thực hiện các phép tính sau: a)A + B b ) A - B c) A * B d) A / B. 20. Thực hiện các phcp toán cộng, trừ các so BCD sau dưới dạng nhị phân: a)24 + 19 b) 15 - 19 c)3 2 + 46 d ) 5 7 - 2 4 . Chương 2 KIẾN TRÚC CPU CỦA MÁY TÍNH MỤC TIÊU Sau khi học xong chương này, người học: s Hiểu được sự tiến bộ của các bộ vi xử lý Intel; phân tích được cáu trúc của CPU cũng như biét được những thành phần cơ bản của một máy tinh, tập các thanh ghi của vi xử lý. s Nắm được các phương pháp quản lý bộ nhớ; phương pháp định địa chi vầ mã hoá lệnh ^ Nắm được cách phân loại lệnh của vi xử lý 8086; biết cách sử dụng lệnh và ứng dụng của các lệnh vào giải quyết các yêu cầu bài toán đặt ra s Sử dụng Card test main đẻ sửa chữa hỏng hóc của Mainboard. NỘI DUNG 2.1. Sự tiến hoá của các bộ vi xử lý Intel 2.2. Cáu trúc CPU. 2.3. Tập câc thanh ghi của vi xử lý. 2.4. Các phương pháp quản lý bộ nhớ. 2.5. Các phương pháp định địa chỉ. 2.6. Mã hoá lệnh. 2.7. Tập lệnh 8086 Câu hỏi và bái tập. 2.1. Sự TIÉN HOÁ CÙA CÁC Bộ VI x ử LÝ INTEL Hình 2.1 cho thấy diễn biến hiệu năng tối đa cùa máy tính. Hiệu năng này tăng theo hàm số mũ, dộ tăng trưởng cùa các máy tính là 35% mỗi năm; Chương 2 KIỂN TRỨCCPUCỦA MẢY TỈNH 59 còn dối với các loại máy tính khác, dộ tăng trưởng là 20% mỗi năm. Diêu này cho thấy tính năng cùa các máy tính hiện nay đã vượt qua các loại máy tính khác vào dầu thập niên 90 cúa thế ký XX. Hinh 2.1. Đánh giá hiệu năng của máy tính Máy tĩnh dùng nhiều bộ xứ lý song song rất thích hợp khi phải tính toán lớn. Sự tăng trường theo hàm số mũ cùa công nghệ che tạo transistor MOS là nguòn gốc cua hiệu năng các máy tinh. I lình 2.2 và 2.3 cho thay sự tăng Irướng về tần số xung nhịp của các bộ vi xư lý MOS. Độ tăng trường của tần số xung nhịp bộ xừ lý tăng gấp đôi sau mỗi the hệ và độ trì hoãn trên mỗi cống/xung nhịp giảm 25% cho mỗi năm. Sự phát triển cúa công nghệ máy tính, đặc biệt là sự phát triển của bộ vi xứ lý của các máy vi tinh làm cho các máy vi tính có tốc độ vượt qua tốc độ bộ xứ lv của các máy tính lớn hơn. 1 0 7 0 1876 iseo IS O S 1BSO 1 6 9 0 2000 2000 Hình 2.2. Sự phát triển của bộ xử lý Intel dựa vào số lượng transistor trong một mạch tích hợp theo quy luật Moore 60 GIÁO TRlNH MÁY TÍNH VÀ MẠNG MÁY TlNH Bộ xử lý Intel A'ămSX Số lượng transistor tích hợp 4004 1971 2,250 8008 1972 2.500 8080 1974 5,000 8086 1978 29.000 286 1982 120.000 In tel386™ processor 1985 275,000 Intel4861' 1 processor 1989 1,ISO,000 In tel® Pentium ® processor 1993 3,100.000 In tel® Pentium ® II Drocessor 1997 7.500.000 In tel® Pentium ® I I I Drocessor 1999 24.000.000 Intel® Pentium ® 4 processor 2000 42,000,000 In tel® Itanium ® Draccssor 2002 220.000.000 Intel® Itan iu m ® 2 processor 2003 410.000.000 Hình 2.3. Các thông số vẻ sự phát triển của bộ xửlỷ Intel dựa vào số lượng transistor trong một mạch tich hợp theo quy luật Moore Từ năm 1965, G. Moore (đồng sáng lập công ty Intel) quan sát và nhận thay so transistor trong mỗi mạch tích họp có thè tăng gấp đôi sau mồi nãm. G. Moore đưa ra dự đoán: Khả năng của máy tính sẽ tăng lên gấp dôi sau 18 tháng với giá thành là như nhau. Kết quà cũa quy luật Moore là: - Chi phí cho máy tính giám. - Giảm kích thước các linh kiện, máy tinh sẽ giảm kích thước. - Hệ thống kết nối bên trong mạch ngắn: tăng độ tin cậy, tăng tốc độ. - Tiết kiệm năng luựng cung cấp, toá nhiệt thấp. - Các 1C thay thế cho các linh kiện rời. Một số khái niệm liên quan: - Mật độ lích hợp là số linh kiện tích hợp trên một diện tích bề mặt tấm silicon cho sẵn. cho biết nhiệm vụ mà mạch có thực hiện. - Tần sơ xung nhịp bộ vi xư lý cho biết tần số thực hiện nhiệm vụ. - Tốc độ xứ lý cùa máy tính trong m ộ1 giây (hay công suất tính toán của mỗi mạch): + Dược tính bằng tích cùa mật độ tích hợp và tần số xung nhịp; + Công suất này cũng tăng theo hàm mũ đối với thời gian. Chương 2. KIẾN TRÚC CPU CỦA MÁY TÍNH 61 Hình 2.4. Xung nhịp các bộ vi xử lý CMOS 2.2. CÁU TRÚC CPU CPU là bộ não của máy tính, nó điều khiển mọi hoạt động cùa máy tính. CPU liên hệ với các thiết bị khác qua Mainboard và hệ thống cáp cùa thiết bị. CPU giao tiếp trực tiếp với bộ nhớ RAM và ROM, còn các thiết bị khác dược liên hệ thông qua mộl vùng nhớ (địa chi vào/ra) và một ngắt thường gọi chung là cổng. K hi m ộ t th iêt bị cân g ia o ticp với C P U nó sẽ gửi yêu câu ngăt (Interrupt Request - IRQ) và CPU sẽ gọi chương trình xừ lý ngắt tương ứng và giao tiếp với thiết bị thông qua vùng địa chỉ được quy định trước. Chính điều này dần dến khi khai báo hai thiết bị có cùng địa chì vào/ra và cùng ngắt giao tiếp sẽ lỗi hệ thống (xung đột ngắt - IRQ Conflict) có thể làm treo máy. Ngày nay, với các thế hệ CPU mới có khả năng làm việc với tốc độ cao và BUS dữ liệu rộng giúp cho việc xây dựng chương trình đa năng ngày càng dễ dàng hơn. Đe đánh giá các CPU, người ta thường căn cứ vào các thông số cùa CPU như tốc độ, độ rộng của BUS, độ lớn của cache và tập lệnh được CPU 62 GIÁO TRlNH MÁY TÍNH VẢ MẠNG MAY TlNH đó người ta vẫn thường dùng các chương trinh thứ trên cùng một hệ thống có các CPU khác nhau để đánh giá các CPU. Thành phần cơ bàn cùa một bộ máy tính gồm: bộ xử lý trung tâm (CPU: Central Processing Unit), bộ nhớ trong, các bộ phận xuất/nhập thông tin. Các bộ phận trôn được kết nối với nhau thông qua các hộ thống bus. Hệ thống bus bao gồm: bus địa chi, bus dữ liệu và bus điều khiên. Bus địa chỉ và bus dữ liệu dùng trong việc chuyển dữ liệu giữa các bộ phận trong máy tính. Bus điều khiến làm cho sự trao đổi thông tin giữa các bộ phận được đồng bộ. Thông thường người ta phân biệt một bus hệ thống dùng trao đổi thòng tin giữa CPU và bộ'nhớ trong (thông qua cache), và một bus vào/ra dùng trao đối thông tin giữa các bộ phận vào/ra và bộ nhớ trong. Bộ xứ lý trung tâm (CPU): Một chương trình sẽ dược sao chép từ đĩa cứng vào bộ nhớ trong cùng với các thông tin cần thiết cho chiromg trình hoạt động, các thông tin này được nạp vào bộ nhớ trong từ các bộ phận cung cấp thông tin (ví dụ như bàn phím hay đĩa từ). Bộ xử lý trung tâm sẽ đọc các lệnh và dữ liệu từ bộ nhớ, thực hiện các lệnh và lưu các kết quá trờ lại bộ nhớ trong hay cho xuất kết quá ra bộ phận xuất thòng tin (màn hình hay máy in). I Bộ nhớ tronẹ I I Ngoại Ỹ1 Hình 2.5. Cấu trúc một hệ máy tinh đơn giản Thành phần CO’ bản của một máy tính: (ì) Bộ nhớ trong Dây là một tập hợp các ô nhớ, mỗi ô nhớ có một so bit nhất dịnh và chứa một thông tin dược mã hoá thành số nhị phân mà không quan tâm đến kiêu cùa dữ liệu mà nó đang chứa. Các thông tin này là các lệnh hay số liệu. Chương 2. KIẾN TRÚC CPU CỦA MÁY TÍNH 63 Mồi ỏ nhớ cùa bộ nhớ trong dều có mội dịa chi. Thời gian thâm nhập vào một ỏ nhớ bất kỳ trong bộ nhớ là như nhau. Vì vậy, bộ nhớ trong còn dược gụi là bộ nhớ truy cập ngẫu nhiên (RAM: Random Access Memory). Độ dài cua một từ máy tính (Computer Word) là 32 bit (hay 4 byte), tuy nhicn dung lượng một ô nhứ thông thường là 8 bit (] bylc). b) Bộ x ú lý trung t â m (CPU) Dâv là bộ phận thi hành lệnh. CPU lây lệnh từ bộ nhớ trong và lấy các sô liỊu mà lệnh dó xứ lý. Bộ xứ lý trunii tâm gôm có hai phần: phần thi hành lệnh và phần diều khiên. Phần thi hành lệnh bao gồm bộ làm toán và luận lý (ALU: Arithmetic And Logic Unil) và các thanh ghi. có nhiệm vụ làm các phép toán trên số liệu. Phần điều khiên có nhiệm vụ đàm bảo thi hành các lệnh một cách tuần tự và tác động các mạch chức năng dc thi hành các lệnh. c) Bộ pliụn vào/ra Dây là bộ phận xuất/nhập thông tin, bộ phận này thực hiện sự giao tiếp giữa máy tính với người sử dụng, hay giữa các máy tính trong hệ thống m ạm (đối với các máy tinh được kết nối thành một hệ thống mạng). Đìa tù Màn hình đồ thị Mạng Hinh 2.6. Sơ đổ mô tả hoạt động điển hình của một máy tinh 64 GIÁO TRlNH MẢY TÍNH VÀ MẠNG MÁY TÍNH Các bộ phận xuất/nhập thường gặp là: bộ lưu trữ ngoài, màn hinh, máy in, bàn phím, chuột, máy quét, các giao diện mạng cục bộ hay m ạng diện rộng... Bộ tạo thích ứng là một vi mạch tống hụp (chipset) kết nối giữa các hệ thống bus có các tốc độ dữ liệu khác nhau. Sơ đồ cấu trúc tổng quát của hệ vi xử lý 8086/8088 như hình 2.7. Dơn V Ị ghép n ổ i BIU Hình 2.7. Sơ đổ cấu trúc tổng quât của hệ vi xử lý 8086/8088 - BIU: Dơn vị giao tiếp BUS. - EU: Dơn vị thực hiện lệnh (CU và ALU). • Đon vị giao tiếp BUS - BIU Chức năng: - Nhận trước các lệnh cất tạm vào hàng đợi lệnh. - Dảm nhiệm chức năng điều khiổn BUS. Chương 2. KIẾN TRÚC CPU CỦA MÁY TÍNH 65 - Giao tiếp qua các BUS: + Phát các địa chi đen bộ nhớ và các công I/O thông qua A -BU S. t- Dọc mã lệnh từ bộ nhớ thông qua D -B us. t- Dục dữ liệu lừ bộ nhớ thông qua D-Bus. + Ghi dữ liệu từ bộ nhớ thông qua D -Bus. t Dục các dữ liệu tìycác công Input thông qua D -Bus. + Ghi dữ liệu ra các cống Output thông qua D -B us. • Đơn vị số học và logic - ALU Chức năng: Thực hiện các phép toán số học và logic. - Phép toán số học: cộng, trừ, nhân, chia, tăng, giảm, đảo... - Phép toán logic: AND, OR, XOR, NOT, dịch bit... • Mô hình kết nối ALU Hình 2.8. Mỗ hình két nối ALU • Don vị diều khiển - c u Hình 2.9. Mô hình kết nối đơn vị điểu khiển S-IGT m a y ’ INH 66 GIÁO TRlNH MÁY TÍNH VẢ MANG MAY TỈNH Chức năng: - Nhận lệnh từ bộ nhớ đưa vào thanh ghi lệnh 1P. - Tãng nội dung thanh ghi PC mỗi khi nhận lệnh song. - Giải mã lệnh và xác định thao tác mà lệnh yêu cầu. - Phát tin hiệu điều khiển thực thi lệnh. - Nhận các tín hiệu yêu cầu từ BUS hệ thống và giải quyết các yêu cầu đó. • Các thông tin đến c u - Clock: Tín hiệu xung nhịp từ mạch tạo dao động. - Mã lệnh từ thanh ghi lệnh đưa đến cu giải mã. - Các trạng thái cờ đưa đến cho biết trạng thái cùa CPU cũng như trạng thái thực hiện các phép toán trong ALƯ. - Các tín hiệu điều khiển từ BUS điều khiển. - Các tín hiệu điều khiển bên trong CPU: điều khiển thanh ghi, ALU. - Các tín hiệu điều khiển bên ngoài CPU (bộ nhớ hay cổng vào/ra). 2.3. TẬP CÁC THANH GHI CỦA VI xử LÝ Tập các thanh ghi của vi xử lý thực chất là vùng nhớ được các CPU nhận biết qua tên thanh ghi và có tốc độ truy xuất cực nhanh. 2.3.1. Chức năng - Chứa thông tin tạm thời phục vụ cho hoạt động ở thời điểm hiện tại cùa CPU. - Số lượng thanh ghi phụ thuộc vào bộ vi xử lý cụ thể: tăng hiệu năng CPU. - Thanh ghi được chia là hai loại: loại lập trình được và loại khóng lập trình được. 2.3.2. Phân loại thanh ghi theo chức năng • T h an h ghi địa chỉ: Thanh ghi được sừ dụng để quán lý địa chì cùa cống nhớ hay cổng vào/ra. Chương 2. KIẾN TRÚC CPU CỦA MÁY TÍNH 67 • 'Phanh ghi dữ liệu: Thanh ghi dùng đê kru trữ dữ liệu tạm thời (AX, B X .C X . DX). • T h a n h ghi da năng: Thanh ghi có thể chứa dữ liệu hoặc địa chi đều dưực. • I hanh ghi diều khicn/trạng thái: Thanh ghi chứa thông tin về trạng thái CPU. • T h an h g h i lệnh: Thanh ghi chứa lệnh đang dược thực hiện. 2.3.3. Cấu trúc của thanh ghi 8086/8088 7 0 7 0 Accumulator AH AL AX Base BH BL BX Counter CH CL c x Data DH DL DX C ode Segm ent D ata Segm ent Stack Segment Extra Segm ent Instruction Pointer Stack Pointer B ase Pointer Source Index Destination Index c s D S ss 1ẼỐ IP S P B P S I T5T } } Hình 2.10. Cấu trúc của thanh ghi 8086/8088 2.3.4. Các thanh ghi đa năng Bảng 2.1. Càc thanh ghi đa năng AH AL BH BL CH CL DH DL (8 bit cao) (8 bit thấp) 68 GIÁO TRlNH MÁY TÍNH VA MẠNG MAY TÍNH • Thanh ghi AX (Accumulator - Acc): Thanh ghi tích luỹ, là thanh ghi dùng để thực hiện các phép toán số học, các lệnh xuấưnhập công. Thanh ghi này thường được dùng để lưu (tích luỹ) các kết quả tính toán (cộng, trừ, nhân, chia...). Nếu kết quá là 8 bit thì thanh ghi AL được coi là thanh ghi Acc. • T hanh ghi BX (Base): Thanh ghi cơ sở, thường dùng để chi địa chi cơ sớ của một vùng nhớ. • T h an h ghi cx (Count): Thanh ghi đếm, dùng để chứa số lần lặp cùa vòng lặp, phép dịch, phép quay. • Thanh ghi DX (Data): Thanh ghi dữ liệu, thuờng dùng đế lưu kết qua cùa các phép tính nhân, chia và định địa chì cổng trong các lệnh xuất/nhập cổng. a) Thanh ghi con trỏ và chỉ số Instruction Pointer Stack Pointer Bm m PoM mt Source Index Destination Index SP BP Hình 2.11. Các thanh ghi con trổ Thanh ghi này chứa các giá trị offset (độ lệch) cho các phần tứ định địa chi trong đoạn (Segmen). • SP: Thanh ghi con trỏ ngăn xếp, chứa địa chỉ đinh ngăn xếp, cho phép truy xuất đến các địa chi đinh ngăn xếp. • SS: Thanh ghi đoạn ngăn xếp, chứa địa chi hiện tại của lệnh. • BP: Thanh ghi con trỏ cơ sở, mô tả offset tính từ s s nhưng còn được sử dụng để truy nhập dữ liệu từ bên trong ngăn xếp. • SI, DI: Lưu trữ địa chi offset đối với lệnh truy cập dữ liệu cất trong đoạn dữ liệu DS. • Bộ đếm chương trìn h PC (Program counter) còn gọi là con trò lệnh 1P (Inlruclion poiter): Lưu giữ địa chi lệnh tiếp theo sẽ được nhận vàc. Sau khi một lệnh được nhận vào, nội dung PC tự động tăng để trỏ sang lệnh kế tiếp. b) Thanh ghi đoạn Bộ nhớ CPU được chia thành các đoạn logic 64 Kbyte: Địa chi các đoạn được chứa trong các thanh ghi đoạn. Chường 2. KIỂN TRÙC CPU CỦA MÁY TÍNH 69 • cs (Code .segment): Thanh ghi đoạn mã, nhận diện địa chi bắt dâu cua đoạn chưcmg trình hiện hành trong bộ nhớ. • DS (Data segment): Nhận dịa chi bat đầu của đoạn số liệu hiện hành trong bộ nhớ (nơi chứa các biến chircmg trinh). • ss (Stack segment): Thanh ghi ngăn xếp. chứa địa chi bất đầu cùa đoạn ngăn xếp trong bộ nhớ. • KS: Thanh ghi doạn mư rộng, lưu trữ các dừ liệu chuồi. c) Tlianli g h i cờ Flag Registor Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Cờ OF DF IF TF SF ZF AF PF CF Y nghĩa các cờ: Các cờ OF, DF. IF, TF, SF, ZF phàn ánh trạng thái cùa kết quá sau một thao tác nào đó. Các cờ AF, PF, CF là cờ điều khiền được lập hoặc xoá bằng các lệnh riêng. Bàng 2.2. Thanh ghi vá cờ Flag Registor TT Cờ Các cờ Ý nghĩa Nhóm 1 AF Auxiliary Flag Cớ phụ = 1 nếu số nhớ vượt 4 LSB 2 CF Carry Flag Cờ nhớ = 1 nếu số nhớ vượt quá bit MSB 3 OF Overflow Flag Cờ tràn = 1 nếu kết quả vượt thang 4 SF Sign Flag Cờ dấu = 1 nếu kết quả âm (bẳng giá trị bít cuối) 5 PF Parity Flag Cờ chẵn = 1 nếu các số 1 kết quả chẵn (byte đầu) 6 ZF Zero Flag Cờ zero = 1 nếu kết quả bằng 0 7 DF Direction Flag Cờ hướng Nếu DF = 1 thực hiện theo 6 bit cớ trạng thái chièu giám 3 bit cờ 8 IF Interrupt - Enable Flag Cờ ngắt: Báo MP biết yêu cầu ngắt 9 TF Trap Flag Cớ bẫy: Đặt MP vào chế độ chạy từng lệnh điều khiển 70 GIẢO TRlNH MÁY TÍNH VA MẠNG MAY TÍNH 2.4. CÁC PHƯƠNG PHÁP QUẢN LÝ Bộ NHỚ • Thanh g h i 8086: 20 bit địa chi, quản lý 1 Mbyte bộ nhớ. Độ lớn cùa các ihanh ghi 16 bit, dẫn đến không đù đê quán lý bộ nhớ. - Giai pháp: Chia bộ nhớ thành các đoạn 64 Kbyte. - Phương pháp quán lý bộ nhớ: Sứ dụng nhiều thanh ghi 16 bit để biểu diễn cho địa chi 20 bit. • Địa chỉ vật lý và địa chỉ luận lý (logic): - Địa chi vật lý: Địa chi 20 bit, được sừ dụng cho việc thiết kế các mạch giài mã dịa chi cho bộ nhớ và I/O. - Dịa chi luận lý: Dịa chi gồm có hai thành phần: địa chi đoạn (segment) và dịa chỉ trong đoạn (offset - độ lệch). Mỗi dịa chi thành phần chì có 16 bit. cách tính địa chi vật lý từ địa chi logic như sau: Đ ịa chỉ vật lý = (seg m en t X 16) + o ffset. Ví dụ: Dịa chi vật lý ứng với dịa chi luận lý B001:1234. Segment 0000:------- *ị OOOOOh Segment 0001:-------I 00010h Segment 0002:-------►) I ' ' ' 00020h Phản(bong chặp (ùa 3 segment «000,0001,0001 OFFFFh ’ ' 1000Fh .. 1001Fh Hình 2.12. Quản lý bộ nhớ + Địa chi segment còn được gọi là địa chi nền cùa đoạn, điêm bất đầu trong bộ nhớ. + Địa chi offset: Khoảng cách kể từ đầu đoạn cùa ô nhớ cần tham khảo, chiều dài tối da cùa một đoạn là 64 Kbyte. Cbiương 2. KIÉN TRÚC CPU CỦA MẤY TfNH 71 Trong mỗi đoạn, ô nhớ đầu tiên cỏ offset là OOOOh và có ô nhớ cuối ciung có offset là 1TFF (h). Segment Bộ nhớ ô nhở có đ iach l Segment: Offsflt 0000 Offset A I FFFF I Hinh 2.13. Quan hệ giữa địa chỉ vật lý và địa chi luận lý • i)ịa chỉ luận lý và các thanh ghi: - Dịa chi luận lý dược sử dụng trực tiếp hoặc thông qua các thanh ghi cuia nó. - Các thanh ghi đoạn dùng dế chứa dịa chi đoạn segment. - Các thanh ghi da năng dùng đố chứa dịa chì trong đoạn offset. - De tham khảo đến địa chì luận lý có segment trong thanh ghi DS và ollTsct trong thanh ghi BX, ta viết DS:BX. Bảng 2.3. Định địa chi luận lý và các thanh ghi T h a m chiéu bộ nhớ D oạn m ăc nhiên Đ oan k h ác O ffset Nhận lệnh cs Không IP Làm việc với Stack s s Không IP Dử liệu tổng quát DS cs, ES.SS Địa chi hiệu dụng Nguồn của chuỗi (String) DS c s , ES,SS SI Đich cúa chuỗi (String) ES Không DI BX dùng làm con trò DS c s , ES.SS Đ ịa chi hiệu dụng BP dùng làm con trò ss c s , ES.SS Địa chi hiệu dụng 72 GIÁO TRlNH MÁY Tín h v a m ạ n g m â y TlNH • Một số cặp thanh ghi luôn phải dùng chung vói nhau bắt buộc: - CS:IP -> lấy lệnh (địa chi sấp thi hành). - SS:SP -> địa chi đinh chồng.' - SS:BP -» thông số trong chồng (dùng cho chương trình con). - DS:SI -» địa chì chuỗi nguồn (chi có ý nghĩa trong các lệnh xừ lý chuồi). - ES:DỈ —> địa chi chuỗi đích (chi có ý nghĩa trong các lệch xử lý chuỗi). 2.5. CÁC PHƯƠNG PHÁP ĐỊNH ĐỊA CHỈ 2.5.1. Định địa chì thanh ghi Toán hạng được chứa trong một thanh ghi, thanh ghi có ten trong trường địa chi toán hạng. Ví dụ: MOS DX:CX 2.5.2. Định địa chỉ tức thời - Toán hạng là dữ liệu 8 hoặc 16 bit nằm ngay trong lệnh. - Toán hạng tức thời được lưu trong đoạn mã ngay sau mã toán hạng. - Toán hạng được lấy ra cùng với lệnh và ghi vào hàng đợi lệnh và ghi vào hàng nhận lệnh trước. Vi dụ: MOV:AL,12h Bảng 2.4. Câch định địa chỉ Vi dụ Cách đ/nh địa chì Mă đối tượng Từ gợi nhớĐoạn trvy xuất Hoạt động Tức thời B80010 MOV AC. 1000h Mã AH<—10h, AL-OOh Thanh ghi 89CA MOV DX, cx VXL DX—CX Trực tiếp 8A260010 MOV AH, [1000h] Dữ liệu AH«—[1000h] Chương 2. KIẾN TRÚC CPU CỦA MÂY TÍNH 73 Vi dụ Cách định địa chi Mã đối tượng Từ gợi nhớĐoạn truy xuất Hoạt động Gián tiếp thanh ghi Có chi số Có nền Có nẻn và 8B04 FF25 FE 4600 FF0F 8B4406 FF6506 8B4602 FF6702 MOV AX, [SI] JMP[DI] INC BYTE PTR, [BP] DEC WORD PTR, [BX] MOV AX. [SI+6] JMP [DI+6] MOV AX, [BP+2] JMP [BP+2] Dữ liệu Dữ liệu Stack Dữ liệu Dữ liệu Dự liệu Stack Dữ liệu AL*—[SI], AH<—[SI+1] IP<—[DI+1 DI] [BP]<—[BP]+1 [BX+1 :BX]«—[BX+1 :BX]-1 AL—[SI+6], AH<- [SI+7] IP<—[DI+6:DI+7] AL—[BP+2], AH«—[BP+3] IP>- [BX+3 BX+6] có chi số 8B00 MOV AX. [BX+SI] Dữ liệu AL«—[BX+SI], AH[BX+SI+1] 2.5.3. Định vị bộ nhớ - Dịnh vị trực tiếp: Toán hạng chứa địa chi trực tiếp nằm trong lệnh. Địa chi doạn hiện tại chứa trong DS. - Dịnh vị gián tiếp thanh ghi: Địa chi hiệu dụng là nội dung các thanh ghi BX. BP, SI hoặc DI. - Dinh VỊ cơ sớ: L)ia chi hiệu dụng lá tỏng cua dộ dỊCh chuyCn vá nộỉ dung BX hoặc BP. - Dịnh vị chi số và cơ sờ: Địa chi hiệu dụng là nội dung thanh ghi cơ sớ. ihanh ghi chi số và độ dịch chuyển. 2.6. MÃ HOÁ LỆNH Mà hoá lệnh như hình 2.14. k--------------- Byte 1 -------------- «•--------------- Byte 2 ------------- • ----------- Byte 3 . — O pcode D w MOD REG R/M Oịa chi_ Hình 2.14. Mã hoá lệnh 74 GIÁO TRlNH MÁY TÍNH VÀ MẠNG m a y t ín h Trong đó: • Opcode: Mã lệnh; • D: Hướng truyền dữ liệu; • D = 0: Dữ liệu đi từ thanh ghi quy định bới 3 bit REG; • D = 1: Dữ liệu đi tới thanh ghi quy định bởi 3 bit REG; • W: Xác định truyền byte (W = 0) hay truyền word (W = 1); • REG: Chọn thanh ghi sử dụng; • MOD và R/M: Chọn chế độ địa chỉ cho toán hạng của lệnh. Vi dụ: Lệnh MOV. Mnemonicand Description Instruction Coie DATA TRANSFER MOV = Hove: Regsier/Memxy to/lrom Register 7 6 5 4 3 2 1 0 1 00010 d w 7 6 5 4 3 2 1 0 mod (eg tin 7 6 5 4 3 2 1 0 765(3210 irnnedetóioRegsMMemoiy 1 10001 1 w modOOOf/m data d a a iw * 1 Immedetóto Register 1011 Yiieg dtta data Hw - 1 Memory to Accim litor IOIOOOOw addr-low addr-hiị/i Accirrwlalor bMemwy Register/Memory to Segment R ejsta Segued RegStef b Register/Memory 1 0 1 0 0 0 1 w 1000)110 10001100 add-low raodOragrfm mod0regr/m ềddí-tiiỊh Hình 2.15. Lệnh MOV Bảng 2.5. REG xác định thanh ghi cho toán hạng thứ nhất 16 - Bit {\V—1) M- Bit ( \ \ “0) Segment 000 AX 000 AL 00 ES OOl c x OOI CL 01 c s 010 DX 010 DL 10 s s oil BX Oil BL 11 DS IOO SP IOO AH 101 BP IOI CH n o SI 110 DH III Dl III BH ChươngI 2. KIẾN TRÚC CPU CỦA MẨY TÍNH 75 Bàng 2.6. MOD và R/M cùng nhau xác định cho toán hạng thứ hai MOI>*»OI M O D -10 M O D -II W -1 M O U -II \V -0 000 [BXM SI] [BX]+{SI)+ADD8 [BX]+(SI]+ADDI6 AX AL 001 I B X M D I] (B X ]+ [D I J+ A D D 8 [B X J+ID I ]+ A D D 16 cx C L 010 [BPM S!] [BPMS1J+ADD8 [BP]+{S1]+ADD16 DX DL UI 1 [B P M D Í] [B P ]+ [D I]+ A D D 8 [B P ]+ [D I]+ A D D I 6 B X B L 100 [S i] [SI]+ADD8 [S1J+ADD16 SP AH 101 [D I] [D IJ + A D D 8 [D 11+ A D D I6 BP CH 110 ADD 16 [BPJ+ADD8 [BPJ+ADD16 SI DH 111 [B X ] [B X ]+ A D D 8 [B X ]+ A D D I 6 DI BH 2.7. TẠP LỆNH VI xử LÝ 8086 2.7.1. Nhóm lệnh di chuyển dữ liệu a) Lệitlí M O V - Copy giá trị từ toán hạng nguồn sang toán hạng đích. - Kích thước dữ liệu có thê là 8 hoặc 16 bit. • Củ p háp MOV destination, source - Lệnh MOV không ánh hường tới thanh ghi cờ. - Không thê chuyên dữ liệu trực tiếp giữa các ô nhớ. - Không thể chuyển dữ liệu tức thời vào thanh ghi đoạn mà phải dùng Ihanh ghi trung gian. - Không thê chuyên trực tiếp giữa hai thanh ghi đoạn. • Minh hoạ lệnh MOV • D A T A T a b l e DB 3 , 5 , 6 , 9 , 1 1 , 1 2 , 1 5 .C O D E ; t r u y x u ấ t p h ầ n t ừ c ù a m án g MOV A L , t a b l e ; h a y M OV A L , t a b l e [ 0 ] MOV A L , t a b l e + 1 ; h a y M OV A L , t a b l e [ 1 ] MOV A L , t a b l e + 4 ; h a y M OV A L , t a b l e [ 4 ] MOV A X , D S : [ l O O h ] ; c h é p n ộ i d u n g 1 6 b i t t ạ i d ị a c h i lO O h t r o n g đ o ạ n DS v à o t h a n h g h i A X . 76 GIÁO TRlNH MAY TÍNH VÀ MẠNG MAY TlNH b) Lệnh PUSH, POP • PUSH source Cất một từ vào trong ngăn xếp bộ nhớ vào stack. • PUSH Giám thanh ghi SP 2 đơn vị và chuyển nội dung 16 bit cùa toán hạng nguồn vào dinh stack. Dinh stack được xác định bởi cặp thanh ghi SS:SP, không tác động đen các cờ. • PO P destination: - Lay dữ liệu 16 bit trong stack vào toán hạng đích. - Toán hạng đích: Thanh ghi đa năng, thanh ghi đoạn (trừ thanh ghi đoạn mã CS) hoặc ô nhớ SP<-SP+2 - Không tác động dến các thanh ghi cờ. • Mô tả lệnh PUSH, POP Đỉnh STACK SP_ S S01F E SS01FC SS.OIFA SS01F8 SP_ • - - SS 01FE Sp SS01FC SS:0lFA SS01F8 SS01FE SS01FC SSOIFA ss 01F8 STACK ban đẩu STACK sau khi PUSH AX STACK sau khi POP BX Hình 2.16. Mô tả lệnh PUSH, POP PUSH AX; [ S S :S P + 1 , S S : S P ] <—AX POP B X ;B X < - [ S S :S P + 1 ,S S :S P ] 2.7.2. Nhóm lệnh chuyển địa chỉ • LEA destination, source - Nạp địa chi hiệu dụng vào thanh ghi. - Đích thường là các thanh ghi: BX, cx, DX, BP, SI, DI. Chương 2. KIẾN TRỨC CPU CỦA MÁY TÍNH 77 - Nguồn là tên biến trong đoạn DS được chì rõ trong lệnh hoặc trong ô nhớ cụ thể. - Mục dích tính địa chỉ lệch cùa biến hoặc dịa chi cùa ô nhớ chọn làm gốc rồi nạp vào thanh ghi đã chọn. - Lệnh không tác động đến cờ. • LDS Nạp một từ (từ bộ nhớ) vào thanh ghi trong lệnh và một từ tiếp theo vào DS. • LDS destination, source - Dích là các thanh ghi AX. - Gốc là ô nhớ trong đoạn DS được chi rõ trong lệnh. - Đích <— gốc, DS <— gốc + 2. - Lệnh không tác động dến các cờ. 2.7.3. Nhóm lệnh chuyền thanh ghi cờ • LAHF - Nạp byte thấp của thanh ghi cờ vào AH. - Kết hợp với lệnh PUSH AX đé lưu thanh ghi cờ vào trong ngăn xếp. • SAHF - Cất thanh ghi AH vào byte thấp cùa thanh ghi cờ. - Sau lệnh này, các bit cờ được cập nhật là: AF, CF, OF, PF, SF, ZF. 2.7.4. Nhóm lệnh chuyển dữ liệu qua cổng • IN Acc, port - Đọc dữ liệu từ cổng vào. - Port là dịa chi 8 bit cùa cổng: 00H-FFH, có thể đưa địa chì cổng vào thanh ghi DX (nếu dia chi cổng là 16 bit). - Acc là thanh ghi tích luỹ: Nếu Acc là AL thì dữ liệu 8 bit đưa vào cổng port; nếu Acc là AX thì dữ liệu đưa vào là 16 bit và được đưa vào từ cống port và port + 1. - Lệnh không tác động đến thanh ghi cờ. 78 GIÁO TRlNH MẢY TÍNH VẢ MẠNG MÁY TÍNH • OUT port, Acc - Đưa dữ liệu từ Acc ra cổng port. - Nếu Acc là AL thỉ dữ liệu 8 bit được đưa ra cổng port; nếu Acc là AX thì dữ liệu 16 bit dược dưa ra cồng port và port + 1. - Có thế biểu diễn địa chi cổng bằng thanh ghi DX (DX chứa địa chi cồng): OUT DX, Acc. - Lệnh không tác động đến thanh ghi cờ. 2.7.5. Lệnh so sánh • CMP đích, gốc - Toán hạng đích và gốc có thể là thanh ghi, bộ nhớ, hay hàng số, nhưng phải có cùng độ dài và không được phép là hai ô nhớ. - Lệnh này ảnh hường đến giá trị các thanh ghi cờ, không lưu kết quả, thường dùng để tạo các cờ cho các lệnh nhảy có điều kiện. Bảng 2.7. Ảnh hường của lệnh so sánh tới giá trị thanh ghi cờ CF ZF Đích = gốc 0 1 Đich > gốc 0 0 Đích < gốc 1 0 2.7.6. Nhóm lệnh chuyển điều khiển • JM P nhãn Lệnh nhảy không có điều kiện, lệnh mới được bắt đầu tại địa chi được mô tả trong lệnh. JM P L a b e 1 JM P n e a r L a b e l ; n h à y g ầ n ( c h iế m 3 b y t e ) JM P s h o r t L a b e l ; n h à y n g ắ n ( c h iế m 2 b y t e ) JM P f a r L a b e l ; n h ả y x a ( c h iế m 5 b y t e ) JM P A X ; I P < - A X .