GIÁO TRÌNH KIẾN TRÚC MÁY TÍNH
1 MỤC LỤC Chương1 3 Kiến trúc máy vi tính PC và đơn vị xử lý trung tâm . 3 1.1. Các thành phần cơ bản của máy tính số . 3 1.2. Biểu diễn thông tin trong máy tính số . 5 1.3 Kiến trúc cơ bản máy vi tính PC 14 1.4. Đơn vị xử lý trung tâm CPU (Central Proccessing Unit) 18 1.4.1. Cấu hình bên ngoài . 18 1.4.2. Cấu hình bên trong . 21 1.4.3. Quản lý bộ nhớ trong chế độ thực và các thanh ghi đoạn . 21 1.4.4. Các thanh ghi 24 1.4.5 Quản lý bộ nhớ trong chế độ bảo vệ 27 1.4.6. Cơ chế đa nhiệm . 35 1.4.7 Các chế độ xác định địa chỉ toán hạng . 36 1.5. Kỹ thuật đường ống và kỹ thuật xử lý song song mức lệnh . 40 1.5.1. Kỹ thuật xử lý lệnh kiểu đường ống (Pipeline) . 41 1.5.2. Kỹ thuật ILP (xử lý song song mức lệnh) 42 Chương 2 . 43 Tổ chức bộ nhớ trong máy vi tính PC . 43 2.1. Tổ chức bộ nhớ theo phân cấp 43 2.2. Tổ chức cache . 45 2.2.1. Trường hợp mỗi khối chứa một từ (hoặc 1 byte) dữ liệu . 45 2.2.2. Trường hợp mỗi khối chứa nhiều từ dữ liệu 47 2.2.3. Kỹ thuật tập liên hợp . 47 2.3 Tổ chức bộ nhớ máy vi tính PC 48 2.3.1. Cơ chế quản lý bộ nhớ theo phân trang 48 2.3.2 Cơ chế truy nhập bộ nhớ theo trang 50 Chương 3 . 52 Các phương pháp vào ra dữ liệu trong máy vi tính 52 3.1. Cấu trúc phần cứng của hệ thống vào/ra dữ liệu . 52 3.2. Các phương pháp vào/ra dữ liệu . 52 3.2.1 Phân loại 52 3.2.2 Phương pháp vào/ra dữ liệu theo định trình . 53 3.2.3 Phương pháp vào/ra dữ liệu theo kiểu thăm dò . 54 3.2.4 Phương pháp vào/ra dữ liệu theo ngắt cứng . 55 3.2.5 Phương pháp vào/ra dữ liệu theo kiểu DMA (truy nhập trực tiếp bộ nhớ - Direct Memory Access) 57 Chương 4 . 59 Các thiết bị vào ra . 59 4.1 Các thiết bị giao diện và điều khiển vào/ra dữ liệu 59 4.1.1 Ngắt và bộ điều khiển ngắt PIC 8259 . 59 4.1.2 Truy nhập trực tiếp bộ nhớ và bộ điều khiển DMAC 8237 . 68 4.1.3 Vào-ra nối tiếp và thiết bị giao diện vào-ra nối tiếp UART 8250/16450 75 2 4.1.4 Thiết bị giao diện song song . 83 4.2. Các thiết bị ngoại vi 86 4.2.1. Bàn phím . 86 4.2.2 Màn hình 90 4.2.3 Đĩa từ . 93 3 Chương1 Kiến trúc máy vi tính PC và đơn vị xử lý trung tâm 1.1. Các thành phần cơ bản của máy tính số Trong lịch sử, máy tính điện tử được phát triển theo 2 hướng kỹ thuật tách biệt, từ đó sinh ra 2 loại máy tính là Máy tính tương tự (analog computer) và máy tính số (digital computer). Máy tính tương tự hoạt động trên các loại số liệu liên tục với các mạch điện tử tương tự, còn máy tính số hoạt động trên các loại số liệu rời rạc với các mạch điện tử số. Hiện nay các máy tính số chiếm ưu thế vượt trội nên khi nói đến máy tính người ta cũng thường hiểu ngầm là máy tính số. Máy tính số gồm các khối chức năng chính như sau: - Đơn vị xử lý trung tâm (CPU): được chế tạo bởi một mạch vi điện tử có độ tích hợp rất cao, nó có nhiệm vụ đọc mã lệnh là các bit thông tin 0 hoặc 1 từ bộ nhớ chính, giải mã các lệnh này thành một chuỗi các xung điều khiển để điều khiển các khối khác thực hiện từng bước các thao tác trong lệnh. Để làm được điều này bên trong vi xử lí có các thanh ghi (registers) để chứa địa chỉ của các lệnh sắp thực hiện (lệnh kế tiếp) như thanh ghi con trỏ lệnh IP (Instruction Pointer) hay còn gọi là bộ đếm chương trình PC (Program Counter) và các thanh ghi khác dùng để lưu trữ dữ liệu tạm thời hoặc các trạng thái của hệ thống. Các thanh ghi này cùng với bộ tính số học và logic ALU (Arithmetical and Logic Unit) cho phép thực hiện các thao tác với dữ liệu. Trong vi xử lí thì đơn vị điều khiển CU (Control Unit) là phần phức tạp nhất vì nó có chức năng giải mã lệnh và tạo các xung điều khiển toàn hệ thống. CPU thực hiện các chức năng chính sau: - Điều khiển ghi/đọc thông tin lên bộ nhớ -Hiểu và thực hiện 1 tập hữu hạn các chỉ thị được thể hiện dưới dạng mã số -Nhập tuần tự các chỉ thị từ bộ nhớ và thực thi các chỉ thị này (chức năng thực hiện chương trình đang có trong bộ nhớ). -Điều khiển quá trình nhập thông tin từ thiết bị đầu vào và điều khiển quá trình xuất thông tin qua thiết bị đầu ra. - Bộ nhớ chính (RAM+ROM): Được tạo bởi các vi mạch nhớ bán dẫn có tốc độ truy cập nhanh nhưng dung lượng hạn chế, nằm trên bản mạch chính được chia thành các ô nhớ và mỗi ô nhớ có một địa chỉ duy nhất xác định. Địa chỉ của các ô nhớ (xác định vị trí của ô đó trong bộ nhớ) bắt đầu từ 0 và tăng dần, mỗi ô nhớ dài 1 byte. ROM : ROM là bộ nhớ chỉ đọc. Dữ liệu trong ROM được duy trì ngay cả khi không có 4 nguồn điện nuôi. ROM chứa các chương trình kiểm tra hệ thống, chương trình xác lập cấu hình hệ thống, chương trình đọc cung đĩa khởi động, các chương trình điều khiển các thiết bị vào-ra cơ bản của máy tính (BIOS-Basic Input/Output/Output System) . RAM: RAM là b ộ nh ớ thao tác. B ộ nh ớ RAM có ch ứ c n ă ng ch ứ a các ph ầ n m ề m của hệ thống (hệ điều hành), phần mềm và dữ liệu của một hoặc nhiều chương trình đ ang ho ạ t độ ng (ch ươ ng trình ứ ng d ụ ng). N ộ i dung RAM s ẽ b ị xóa khi m ấ t đ i ệ n Ngoài ra còn có: + B ộ nh ớ kh ố i (b ộ nh ớ ngoài): L ư u gi ữ tài nguyên ph ầ n m ề m c ủ a máy tính bao g ồ m: H Đ H, các ch ươ ng trình và các d ữ li ệ u. B ộ nh ớ ngoài đượ c k ế t n ố i v ớ i h ệ th ố ng d ướ i d ạ ng các thi ế t b ị vào/ra. Nó có dung l ượ ng l ớ n nh ư ng t ố c độ truy c ậ p ch ậ m. Các lo ạ i b ộ nh ớ ngoài nh ư : Đĩ a c ứ ng, đĩ a m ề m,… + B ộ nh ớ cache: Là thành ph ầ n nh ớ t ố c độ nhanh đượ c đặ t đệ m gi ữ a CPU và b ộ nh ớ chính nh ằ m t ă ng t ố c độ truy c ậ p b ộ nh ớ c ủ a CPU. Dung l ượ ng nh ỏ h ơ n b ộ nh ớ chính. Nó đượ c s ử d ụ ng để l ư u tr ữ các l ệ nh và d ữ li ệ u th ườ ng đượ c s ử d ụ ng nhi ề u trong quá trình th ự c hi ệ n ch ươ ng trình. (b ộ nh ớ này có th ể có ho ặ c ko có). -Thiết bị vào: Th ự c hi ệ n ch ứ c n ă ng nh ậ p thông tin cho máy tính Ví d ụ : Bàn phím, chu ộ t,… -Thiết bị ra: Hi ể n th ị các thông tin đư a ra t ừ máy tính ở d ạ ng con ng ườ i có th ể hi ể u đượ c VD: Màn hình, máy in, thi ế t b ị âm thanh,… - Phối ghép vào/ra (thiết bị giao diện): là các m ạ ch đ i ệ n t ử th ự c hi ệ n ch ứ c n ă ng ghép n ố i, cho phép CPU thông tin đượ c v ớ i các thi ế t b ị ngo ạ i vi nh ư bàn phím, màn hình, ổ đĩ a t ừ , chu ộ t,…Các m ạ ch đ i ệ n t ử này g ọ i là các c ổ ng vào/ra (I/O port). Tùy theo yêu c ầ u mà chúng có ch ứ c n ă ng ho ặ c là c ổ ng vào n ế u cho phép CPU nh ậ n thông tin t ừ ngoài ho ặ c là c ổ ng ra n ế u cho phép CPU xu ấ t thông tin ra ngoài ho ặ c c ả hai. S ự có m ặ t c ủ a thi ế t b ị giao di ệ n là do có s ự khác bi ệ t r ấ t l ớ n v ề d ạ ng th ứ c truy ề n t ả i và t ố c độ x ử lý thông tin gi ữ a đơ n v ị x ử lý trung tâm và các thi ế t b ị ngo ạ i vi. Bên trong máy tính con s ố đượ c s ử d ụ ng làm ph ươ ng ti ệ n truy ề n t ả i thông tin, th ế gi ớ i bên ngoài máy tính thông tin đượ c truy ề n t ả i d ướ i d ạ ng ký t ự , ánh sáng, âm thanh, Đơ n v ị x ử lý trung tâm x ử lý thông tin v ớ i t ố c độ r ấ t cao, các thi ế t b ị bên ngoài máy tính x ử lý thông tin v ớ i t ố c độ ch ậ m h ơ n nhi ề u. - Hệ thống bus: Các kh ố i c ơ b ả n c ủ a máy tính đượ c k ế t n ố i v ớ i nhau qua m ộ t t ậ p đườ ng dây truy ề n tín hi ệ u g ọ i là bus h ệ th ố ng: Là đườ ng truy ề n thông tin trong máy tính.V ề m ặ t v ậ t lý Bus là t ậ p h ợ p c ủ a các đườ ng dây truy ề n tín hi ệ u đ i ệ n, m ỗ i m ộ t đườ ng dây truy ề n đượ c m ộ t bit thông tin t ạ i m ộ t th ờ i đ i ể m. Đơ n v ị x ử lý trung tâm CPU th ự c hi ệ n k ế t n ố i và trao đổ i thông tin v ớ i các đơ n v ị ch ứ c n ă ng khác thông qua h ệ th ố ng BUS. Bus h ệ th ố ng g ồ m 3 bus thành ph ầ n là: + Bus d ữ li ệ u (2 chi ề u): để truy ề n t ả i d ữ li ệ u. + Bus đị a ch ỉ (1 chi ề u: chi ề u ra t ừ CPU) để CPU đị nh v ị , ch ọ n ô nh ớ ho ặ c ch ọ n thi ế t b ị ngo ạ i vi c ầ n liên l ạ c, là lo ạ i bus 1 chi ề u. 5 + Bus đ i ề u khi ể n(2 chi ề u): Do CPU hay thi ế t b ị khác phát ra để đ i ề u khi ể n quá trình trao đổ i d ữ li ệ u nh ư tín hi ệ u để phân bi ệ t đơ n v ị đượ c CPU truy nh ậ p là thu ộ c b ộ nh ớ hay thi ế t b ị vào/ra, thao tác truy nh ậ p là đọ c hay vi ế t,… Để ng ườ i s ử d ụ ng có th ể làm vi ệ c đượ c trên máy tính (nh ư vi ế t và cho ch ạ y các ch ươ ng trình ứ ng d ụ ng c ủ a riêng h ọ ) thì ch ỉ v ớ i các b ộ ph ậ n ph ầ n c ứ ng trên là không đủ , m ộ t ph ầ n m ề m g ọ i là H Đ H ph ả i đượ c cài đặ t s ẵ n trong máy tính. Đ ó là 1 t ậ p h ợ p các ch ươ ng trình để s ử d ụ ng các ch ứ c n ă ng c ơ b ả n c ủ a các b ộ ph ậ n ph ầ n c ứ ng hay ph ầ n m ề m trên h ệ th ố ng máy tính. Khác v ớ i ch ươ ng trình ứ ng d ụ ng, H Đ H là m ộ t ch ươ ng trình h ệ th ố ng đặ c bi ệ t ch ạ y trong su ố t th ờ i gian ho ạ t độ ng c ủ a máy tính. Th ự c ra nó là m ộ t t ậ p h ợ p các ch ươ ng trình lo vi ệ c đ i ề u khi ể n ho ạ t độ ng c ủ a máy tính c ũ ng nh ư cho phép các ch ươ ng trình ph ầ n m ề m khác ch ạ y đượ c. Nó đ i ề u khi ể n máy tính quy ế t đị nh cho các ch ươ ng trình nào ch ạ y trong kho ả ng th ờ i gian nào, quy ế t đị nh ngu ồ n tài nguyên nào (b ộ nh ớ , thi ế t b ị vào/ra,…) đ ang đượ c s ử d ụ ng, Trong các l ĩ nh v ự c khoa h ọ c và đờ i s ố ng, máy tính s ố có th ể dùng trong l ĩ nh v ự c x ử lý d ữ li ệ u, s ử d ụ ng trong đ o l ườ ng và đ i ề u khi ể n t ự độ ng hay đượ c dùng nh ư m ộ t b ộ x ử lí s ố … 1.2. Biểu diễn thông tin trong máy tính số 1. Các hệ đếm liên quan tới máy tính - Trong cu ộ c s ố ng hàng ngày ta th ườ ng dùng h ệ đế m c ơ s ố m ườ i hay h ệ th ậ p phân là t ổ h ợ p các ch ữ s ố t ừ 0 t ớ i 9 để bi ể u di ễ n giá tr ị các s ố . Còn trong máy tính s ố thì h ệ đế m nh ị phân đượ c s ử d ụ ng để bi ể u di ễ n giá tr ị các s ố . B ở i vì máy tính s ố đượ c xây d ự ng trên c ơ s ở các m ạ ch đ i ệ n, mà các m ạ ch đ i ệ n ở t ừ ng th ờ i đ i ể m ch ỉ ở m ộ t trong hai tr ạ ng thái đ óng ho ặ c m ở ; có ho ặ c không có dòng đ i ệ n trong m ạ ch; đ i ệ n áp cao ho ặ c đ i ệ n áp th ấ p. Trong h ệ nh ị phân thì bit (là s ố 0 ho ặ c 1) là đơ n v ị nh ỏ nh ấ t bi ể u di ễ n d ữ li ệ u ( đơ n v ị nh ỏ nh ấ t mang thông tin) trong máy tính. - Để bi ể u giá tr ị c ủ a m ộ t s ố N b ấ t k ỳ ta dùng ký pháp v ị trí nh ư sau: a n a n-1 ….a 1 a 0 a -1 a -2 …a -(m-1) a -m =a n *b n +a n-1 *b n-1 +…+a 1 *b 1 +a 0 *b 0 +a -1 *b -1 +a -2 *b -2 +…+a -(m-1) *b - (m-1) +a -m *b -m Trong đ ó: b : là cơ số ; b n-1 ,…,b 2 ,b 1 ,b 0 ,b -1 ,b -2 ,…,b -(m-1) ,b -m là các trọng số. a n , a n-1 ,a n-2 ,…,a 1 ,a 0 ,a -1 ,a -2 ,…a -(m-1) ,a -m : là các số nằm ở vị trí tương ứng với trọng số. Khi c ầ n phân bi ệ t rõ h ệ đế m th ườ ng vi ế t thêm ch ỉ s ố d ướ i ký hi ệ u c ơ s ố vào các s ố . Ví d ụ s ố 65 trong h ệ th ậ p phân đượ c vi ế t là 65 10 , trong h ệ nh ị phân đượ c vi ế t là 100102 2 . Ví dụ: - Bi ể u di ễ n s ố 541.25 10 : 541.25 10 = 5*10 -2 + 2*10 -1 + 1*10 0 + 4*10 1 + 5*10 2 Trong đ ó : 10 - c ơ s ố ; 10 -2 , 10 -1 , 10 0 , 10 1 , 10 2 – các tr ọ ng s ố 5, 2, 1, 4, 5 – là các ch ữ s ố đượ c đặ t ở v ị trí t ươ ng ứ ng v ớ i tr ọ ng s ố 357.123 = 3*10 2 + 5*10 1 + 10 0 + 1*10 -1 +2*10 -2 +3*10 -3 - M ộ t giá tr ị 126.5 h ệ th ậ p phân s ẽ đượ c bi ể u di ễ n ở h ệ nh ị phân d ướ i d ạ ng : 1111110.1 2 =1*2 6 +1*2 5 +1*2 4 +1*2 3 +1*2 2 +1*2 1 +0*2 0 +1*2 -1 6 Trong đ ó : 2 - c ơ s ố ; 2 -1 , 2 0 , 2 1 , 2 2 , 2 3 ,2 4 , 2 5 , 2 6 – các tr ọ ng s ố 1, 0, 1, 1, 1,1,1,1 – là các ch ữ s ố đượ c đặ t ở v ị trí t ươ ng ứ ng v ớ i tr ọ ng s ố . - Hi ệ n nay có 4 h ệ đế m hay đượ c dùng trong nh ữ ng bài toán liên quan đế n máy tính đ ó là : H ệ m ườ i (decimal) b=10 a={0,1,2,3,4,5,6,7,8,9} H ệ nh ị phân (binary) b=2 a={0,1} H ệ tám (octal) b=8 a={0,1,2,3,4,5,6,7} H ệ m ườ i sáu (hexaldecimal) b=16 a={0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F} Gi ữ a các h ệ đế m th ườ ng xuyên ph ả i có s ự chuy ể n đổ i qua l ạ i : + Đổ i s ố th ậ p phân sang các s ố có h ệ c ơ s ố r đượ c th ự c hi ệ n b ằ ng cách tách s ố đ ó thành 2 ph ầ n : Ph ầ n nguyên và ph ầ n phân s ố để bi ế n đổ i riêng r ẽ . S ự bi ế n đổ i ph ầ n nguyên đượ c th ự c hi ệ n b ằ ng cách chia liên ti ế p cho r và tích l ũ y các s ố d ư l ạ i. Bi ế n đổ i ph ầ n phân s ố đượ c th ự c hi ệ n b ằ ng cách nhân liên ti ế p v ớ i r và tích l ũ y các s ố nguyên nh ậ n đượ c. Ví d ụ d ướ i đ ây là quá trình bi ế n đổ i s ố th ậ p phân sang s ố nh ị phân : Đổ i 23.375 10 sang nh ị phân. Chúng ta s ẽ chuy ể n đổ i ph ầ n nguyên dùng ph ươ ng th ứ c s ố d ư : KQ : 23.375 10 = 10111.011 2 Tuy nhiên, 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 nh ư : 7 + Đổ i s ố nh ị phân sang s ố th ậ p phân: B ằ ng cách c ộ ng các s ố m ũ 2 ứ ng v ớ i các s ố b ằ ng 1 trong s ố nh ị phân. Ví dụ: 1 0 1 0 1 1 1 S ố nh ị phân 2 6 2 5 2 4 2 3 2 2 2 1 2 0 Các tr ọ ng s ố 64 0 16 0 4 2 1 K ế t qu ả =87 + Chuyển đổi giữa các số nhị phân và số hệ thập lục: M ộ t nhóm s ố nh ị phân 4 bit v ừ a đủ bi ể u di ễ n m ộ t ch ữ s ố trong h ệ m ườ i sáu nên ta s ẽ nhóm s ố nh ị phân c ầ n chuy ể n đổ i thành các nhóm 4bit và đổ i m ỗ i nhóm đ ó ra 1 ch ữ s ố m ườ i sáu: Ví dụ: 1100000111 2 nhóm: 11 0000 0111 k ế t qu ả là: 307 16 + Chuy ể n đổ i m ộ t s ố h ệ th ậ p l ụ c phân sang s ố nh ị phân ch ỉ vi ệ c đổ i m ỗ i ch ữ s ố h ệ th ậ p l ụ c sang m ộ t nhóm 4bit Ví d ụ : AB4C = 1010 1011 0100 1100 2 + Gi ữ a h ệ th ậ p phân và nh ị phân t ồ n t ạ i m ộ t h ệ lai BCD (binary coded decimal): H ệ này mã hóa m ỗ i con s ố trong h ệ th ậ p phân b ằ ng m ộ t só nh ị phân. Th ườ ng dùng m ộ t s ố nh ị phân 4 bit để mã hóa cho các ch ữ s ố t ừ 0 đế n 9. Nh ư v ậ y không dùng h ế t các t ổ h ợ p có th ể có c ủ a 4bit (2 4 =16). Ví d ụ : S ố 520 10 n ế u bi ể u di ễ n theo s ố BCD s ẽ là: S ố th ậ p phân 5 2 0 Các s ố BCD 0101 BCD 0010 BCD 0000 BCD 2. Các phép toán đối với các số nhị phân - Phép c ộ ng : Ta có nguyên t ắ c sau 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 0 nh ớ 1 ( để c ộ ng vào hàng tr ướ c nó, t ươ ng t ự nh ư phép c ộ ng s ố th ậ p phân). Giá tr ị 1 + 1 = 2, nh ư ng vì trong h ệ nh ị phân ch ỉ có hai s ố 0 và 1, m ặ t khác 8 bi ể u di ễ n c ủ a 2 trong h ệ nh ị phân là 2 = 1*2 1 + 0*2 0 = 10 nên k ế t qu ả chính là 0 và nh ớ 1. Ví dụ: C ộ ng hai s ố 1000111 (s ố 71 trong h ệ th ậ p phân) và s ố 11110 (s ố 30 trong h ệ th ậ p phân). Cột 7 6 5 4 3 2 1 71 = 1 0 0 0 1 1 1 30 = 1 1 1 1 0 Bit nh ớ 0 1 1 1 1 0 101 1 1 0 0 1 0 1 Và k ế t qu ả chúng ta đượ c: 1000111 + 11110 = 1100101 (71 + 30 = 101, ta có th ể ki ế m tra l ạ i b ằ ng cách đổ i s ố 101 sang nh ị phân xem có đ úng k ế t qu ả v ừ a làm ra không). - Phép trừ : Nguyên t ắ c 0 – 0 = 0 0 – 1 = 1 m ượ n 1 (vì s ố b ị tr ừ nh ỏ h ơ n s ố tr ừ nên ph ả i m ượ n 1t ừ s ố ở v ị trí cao h ơ n bên trái) 1 – 0 = 1 1 – 1 = 0 Ví dụ: Th ự c hi ệ n phép tr ừ 51 – 28 = 23 S ố 51 10 = 110011 2, s ố 28 10 = 11100 2 C ộ t 6 5 4 3 2 1 51 = 1 1 0 0 1 1 28 = 0 1 1 1 0 0 Bit m ượ n 1 1 1 0 0 23 = 0 1 0 1 1 1 V ậ y 110011 – 11100 = 010111 (t ươ ng ứ ng v ớ i 51 – 28 = 23) Ví d ụ : 6 – 3 = 3 1 1 0 - 0 1 1 1 1 ph ầ n n ợ 0 1 1 - Nhân hai số nhị phân : Phép tính nhân trong h ệ nh ị phân c ũ ng t ươ ng t ự nh ư ph ươ ng pháp làm trong h ệ th ậ p phân. Hai s ố A và B đượ c nhân v ớ i nhau b ở i nh ữ ng tích s ố c ủ a các kí s ố 0 và 1 c ủ a A và B: v ớ i m ỗ i con s ố ở B, tích c ủ a nó v ớ i m ộ t con s ố trong A đượ c tính và vi ế t xu ố ng m ộ t hàng m ớ i, m ỗ i hàng m ớ i ph ả i chuy ể n d ị ch v ị trí sang bên trái 1 bit. T ổ ng c ủ a các tích c ụ c b ộ này cho ta k ế t qu ả tích s ố cu ố i cùng. Nguyên t ắ c: 0 * 0 = 0 ; 1 * 0 = 0; 0 * 1 = 0; 1 * 1 = 1 Ví d ụ : 9 x 6 = 54 (1001 x 110 = 110110) 9 Để d ễ hi ể u, xem 2 hình d ườ i đ ây, hình th ứ nh ấ t bi ể u di ễ n cách nhân 2 s ố th ậ p phân và hình th ứ 2 là cách nhân 2 s ố nh ị phân. - Chia 2 s ố nh ị phân: Phép chia s ố nh ị phân t ươ ng đố i ph ứ c t ạ p h ơ n phép c ộ ng, tr ừ và nhân. Cách chia s ố nh ị phân c ũ ng gi ố ng nh ư chia 2 s ố th ậ p phân, do đ ó các b ạ n c ầ n n ắ m v ữ ng cách chia trên s ố th ậ p phân, đồ ng th ờ i c ầ n n ắ m v ữ ng cách tr ừ 2 s ố nh ị phân. Đầ u tiên hãy xem hình 1 để nh ớ l ạ i cách chia 2 s ố th ậ p phân, sau đ ó xem hình 2 các b ạ n s ẽ hi ể u cách chia s ố nh ị phân. Nguyên t ắ c: 0 : 1 = 0; 1 : 1 = 1 3. Biểu diễn số nguyên không dấu và có dấu trong máy tính 3.1. Bi ể u di ễ n s ố nguyên không d ấ u T ấ t c ả các s ố c ũ ng nh ư các mã . trong máy vi tính đề u đượ c bi ể u di ễ n b ằ ng các ch ữ s ố nh ị phân. Để bi ể u di ễ n các s ố nguyên không d ấ u, ng ườ i ta dùng n bit. T ươ ng ứ ng v ớ i độ dài c ủ a s ố bit đượ c s ử d ụ ng, ta có các kho ả ng giá tr ị xác đị nh nh ư sau: Số bit Khoảng giá trị n bit: 0 2 n - 1 8 bit (Byte) 0 255 16 bit(Word) 0 65535 10 3.2. Bi ể u di ễ n s ố nguyên có d ấ u trong máy tính Các s ố nguyên có d ấ u dùng bit t ậ n cùng bên trái làm bit d ấ u : bit b ằ ng 0 bi ể u di ễ n cho d ấ u (+) và b ằ ng 1 cho d ấ u (-). M ộ t cách t ổ ng quát ta có Số bit Khoảng giá trị n bit: -(2 n ) +(2 n -1) 8 bit -128 +127 M ộ t s ố nguyên d ươ ng trong kho ả ng này s ẽ đượ c bi ể u di ễ n nh ư mã nh ị phân thông th ườ ng có s ố 0 ở bit cao nh ấ t. Ví d ụ : +25 10 = 00011001 2 +65 10 =0100 0001 2 M ộ t s ố nguyên âm trong kho ả ng này s ẽ đượ c bi ể u di ễ n theo mã s ố bù 2 c ủ a s ố nguyên d ươ ng t ươ ng ứ ng. Số bù 2 của một số nhị phân được tạo ra bằng cách lấy 1 trừ mỗi chữ số và cộng 1 vào chữ số có ý nghĩa thấp nhất của số vừa được tạo ra. Phương pháp tạo số bù 2 của một số trên thực tế đuợc thực hiện bằng cách đổi số 0 thành số 1, đổi số 1 thành số 0 và cộng 1 vào chữ số có ý nghĩa thấp nhất của số vừa được tạo ra. Ví dụ : S ố bù 2 c ủ a - 25 10 = 11100111 2 -65 10 =1011 1111 V ớ i h ệ th ố ng bù 2 các phép tính c ộ ng và tr ừ hai s ố nh ị phân đượ c th ự c hi ệ n qua ch ỉ m ộ t phép tính c ộ ng. Trong h ệ th ố ng bù 2 khi th ự c hi ệ n c ộ ng hai s ố có th ể có b ố n tình hu ố ng x ả y ra: + Cả 2 số là dương : Khi th ự c hi ệ n phép c ộ ng thì c ộ ng t ừ ng s ố t ừ ph ả i qua trái, k ể c ả bit d ấ u. Ví d ụ c ộ ng hai s ố d ươ ng 4 bit : + Một số là dương, một số là âm và số âm có trị tuyệt đối nhỏ hơn. Bù 2 c ủ a s ố âm đượ c t ạ o và thêm bit d ấ u vào v ị trí cao nh ấ t. Khi th ự c hi ệ n phép c ộ ng, m ộ t bit nh ớ s ẽ đượ c t ạ o ra t ừ bit d ấ u. C ầ n b ỏ bit nh ớ đ i. K ế t qu ả là m ộ t s ố d ươ ng. Ví d ụ c ộ ng hai s ố khác d ấ u 4 bit : . ROM chứa các chương trình kiểm tra hệ thống, chương trình xác lập cấu hình hệ thống, chương trình đọc cung đĩa khởi động, các chương trình điều khiển các. (chức năng thực hiện chương trình đang có trong bộ nhớ). -Điều khiển quá trình nhập thông tin từ thiết bị đầu vào và điều khiển quá trình xuất thông tin qua