(NB) Giáo trình Vi xử lý cung cấp cho người học những kiến thức như: Tổng quan về các hệ vi xử lý; các đơn vị vi xử lý trung tâm; bộ nhớ trong của hệ vi xử lý; thiết bị vào ra của hệ vi xử lý. Mời các bạn cùng tham khảo nội dung giáo trình phần 1 dưới đây.
Trang 1ỦY BAN NHÂN DÂN THÀNH PHỐ HÀ NỘI TRƯỜNG CAO ĐẲNG NGHỀ VIỆT NAM - HÀN QUỐC THÀNH PHỐ HÀ NỘI
TRẦN VĂN NAM (Chủ biên) TRƯƠNG VĂN HỢI – NGUYỄN THANH HÀ
GIÁO TRÌNH VI XỬ LÝNghề: Điện tử công nghiệp Trình độ: Cao đẳng
(Lưu hành nội bộ)
Hà Nội - Năm 2018
Trang 21
LỜI NÓI ĐẦU
Để cung cấp tài liệu học tập cho học sinh - sinh viên và tài liệu cho giáo viên khi giảng dạy, Khoa Điện tử Trường CĐN Việt Nam - Hàn Quốc thành phố Hà Nội
đã chỉnh sửa, biên soạn cuốn giáo trình “VI XỬ LÝ” dành riêng cho học sinh -
sinh viên nghề Điện tử công nghiệp Đây là môn học kỹ thuật cơ sở trong chương trình đào tạo nghề Điện tử công nghiệp trình độ Cao đẳng
Nhóm biên soạn đã tham khảo các tài liệu: Giáo trình “Vi xử lý” của tác giả Trần Văn Trọng Trường ĐHSPKT TP HCM, Giáo trình “Microprocessors and
Interfacing” , Doulas V Hall và nhiều tài liệu khác
Mặc dù nhóm biên soạn đã có nhiều cố gắng nhưng không tránh được những thiếu sót Rất mong đồng nghiệp và độc giả góp ý kiến để giáo trình hoàn thiện hơn
Xin chân thành cảm ơn!
Hà Nội, tháng 09 năm 2018
Chủ biên: Trần Văn Nam
Trang 32
MỤC LỤC
LỜI NÓI ĐẦU 1
GIÁO TRÌNH MÔ ĐUN 3
Bài 1Tổng quan về các hệ vi xử lý 5
1.1 Các hệ đếm 5
1.2 Chuyển đổi lẫn nhau giữa các hệ đếm 9
1.3 Mã hóa thông tin 11
1.4 Các phép toán số học đối với số hệ nhị phân 18
1.5 Cấu trúc của hệ vi xử lý và máy vi tính 29
Bài 2Các đơn vi vi xử lý trung tâm 39
2.1 Trung tâm vi xử lý P 8085: 39
2.2 Các trung tâm vi xử lý họ 80x86 81
2.3 Cấu trúc và tính năng của một số chíp vi xử lý hiện đại 130
Bài 3Bộ nhớ trong của hệ vi xử lý 143
3.1 Bộ nhớ trong hệ vi xử lý 143
3.2 Tổ chức bộ nhớ cho hệ vi xử lý 152
Bài 4Thiết bị vào ra của hệ vi xử lý 158
4.1 Bàn phím HEX (keyboard) 158
4.2 Màn hình (Monitor) 171
TÀI LIỆU THAM KHẢO 178
Trang 43
GIÁO TRÌNH MÔ ĐUN Tên mô đun: Vi xử lý
Mã số của mô đun: MĐ 21
Thời gian của mô đun: 120 giờ (LT: 30 giờ; BT: 85 giờ; KT: 5 giờ)
I Vị trí, tính chất, ý nghĩa và vai trò của mô đun
Vị trí của mô đun: Mô đun được bố trí dạy cuối chương trình sau khi học xong các môn học cơ bản như linh kiện điện tử, đo lường điện tử, kỹ thuật xung -
số, điện tử công suất
Tính chất của mô đun: Là mô đun bắt buộc
Ý nghĩa của mô đun: sau khi học xong mô đun Vi xử lý, người học phải biết lập trình một số ứng dụng từ đơn giản đến phức tạp và xử lý được các kết nối máy tính với thiết bị ngoại vi
Vai trò của mô đun: Giáo trình mô đun “Vi xử lý” nhằm cung cấp cho người học những kiến thức về lập trình và giao tiếp với máy tính bằng vi xử lý
II Mục tiêu của mô đun
+ Về kiến thức:
Trình bày được về hệ đếm và mã hóa trong máy tính, tương tác giữa máy tính
và vi xử lý, các bộ vi xử lý intel đang được ứng dụng
Giải thích được nguyên lý làm việc các hệ điều khiển ứng dụng vi xử lý + Về kỹ năng:
Lập trình hợp ngữ một số bài tập cơ bản một cách thành thạo
Xử lý được một số dạng kết nối máy tính với vi xử lý và các thiết bị ngoại vi Phát triển được các hệ điều khiển trên cơ sở khối trung tâm là vi xử lý
+ Về thái độ:
Rèn luyện tính tỷ mỉ, chính xác và an toàn vệ sinh công nghiệp
III Nội dung mô đun
Trang 54
Mã bài Tên các bài trong mô đun
Thời gian Tổng
số
Lý thuyết
Thực Hành
Kiểm tra MĐ21-01 Tổng quan về các hệ vi xử lý 10 4 5 1
Trang 65
Bài 1 Tổng quan về các hệ vi xử lý Mục tiêu
- Trình bày được một số hệ đếm, và các mã thường dùng trong hệ vi xử lý
- Tính toán, chuyển đổi được các phép toán nhị phân
- Trình bày được cách biểu diễn thông tin trong các hệ vi xử lý
- Rèn luyện tính tư duy, tác phong trong công nghiệp
Với 2 ký hiệu giống nhau trong hệ 10, ký hiệu đứng trước có trọng số gấp 10 lần ký hiệu đứng ngay sau nó Điều này hoàn toàn đúng cho các hệ khác Ví dụ, đối với hệ nhị phân ( cơ số 2) thì tỉ lệ này là 2
Có rất nhiều hệ thống số được sử dụng trong kỹ thuật số, các hệ đếm thông dụng nhất là: hệ thập phân (decimal number system), nhị phân (binary number system), thập lục phân (hexadecimal number system)…
1.1.1 Hệ thập phân (Decimal Number System)
Đây là hệ đếm mà chúng ta sử dụng hàng ngày Hệ đếm này sử dụng mười chữ số ‘0’ ’9’để biểu diễn các số hệ 10 Chữ số ‘0’ biểu diễn số 0, chữ số ‘1’ biểu
Trang 76
diễn số 1,… Khi đếm đến 10 thì hết số nên phải thêm 1 sang hàng bên trái để thành
‘10’ (mười) rồi lại tiếp tục đếm ‘11’, ‘12’, ‘13’, Một số hệ 10 có giá trị bằng tổng giá trị của từng chữ số nhân với trọng số tương ứng của chữ số Trọng số của chữ
số thứ i là 10i
Ví dụ: 12345,67 = 1x104+ 2x103 + 3x102 + 4x101 + 5x100 + 6x10-1 + 7x10-2
Khi làm việc với nhiều hệ đếm các số hệ 10 có thêm chữ D ở cuối để chỉ ra rằng đó là số hệ 10
Ví dụ: 12,25D
Tổng quát hóa cho hệ đếm cơ số a bất kỳ (a ≥ 2, a ∈ N):
Sử dụng a chữ số để biểu diễn các số hệ a Chữ số có giá trị nhỏ nhất là ‘0’, chữ số có giá trị lớn nhất tùy thuộc vào từng hệ đếm nhưng có giá trị là a-1
Giá trị (lượng) của một số hệ a bằng tổng giá trị của từng chữ số nhân với trọng số tương ứng của chữ số Trọng số của chứ số thứ i là ai
Ví dụ: Số 5346,72 biểu diễn như sau:
Số tận cùng bên trái là số có giá trị lớn nhất MSD ( Most Significant Digit)
Số tận cùng bên phải là số có giá trị nhỏ nhất LSD ( Least Significant Digit)
1.1.2 Hệ nhị phân (Binary Number System)
Hệ nhị phân gồm có 2 chữ số: 0 và 1, ký số nhị phân gọi là bit (binary digit)
Cơ số hệ nhị phân hay gọi là cơ số 2 Một số nhị phân (binary digit) thường được gọi là bit Một chuỗi gồm 4 bit nhị phân gọi là nibble, chuỗi 8 bit gọi là byte, chuỗi
16 bit gọi là word và chuỗi 32 bit gọi là double word Bit tận cùng bên trái là bit có giá trị lớn nhất MSB ( Most Significant bit), bit tận cùng bên phải là bit có giá trị nhỏ nhất LSB ( Least Significant bit) Một số trong hệ nhị phân được biểu diễn theo số mũ của 2 Ta thường dùng chữ B cuối chuỗi bit để xác định đó là số nhị phân
Trang 87
Các linh kiện điện tử cấu tạo nên máy tính chỉ có hai trạng thái: có điện và không có điện Hai trạng thái này có thể được biểu diễn bằng 1 và 0 Chính vì lý do này mà hệ đếm cơ số 2 là hệ đếm duy nhất được dùng trong máy tính
Trong kỹ thuật máy tính, mỗi chữ số nhị phân được gọi là một bit (viết tắt của
từ tiếng anh binary digit) Một cụm 4 bit tạo thành một nible, cụm 8 bit tạo thành 1 byte, cụm 16 bit tạo thành 1 từ (word), cụm 32 bit tạo thành một từ kép (double word) Bit đầu tiên bên trái trong các số nhị phân gọi là bit có trọng số lớn nhất (Most Significant Bit, MSB), còn bit tận cùng bên phải gọi là bit có trọng số nhỏ nhất (Least Significant Bit, LSB)
Ví dụ 1: Số 101110.01b biểu diễn giá trị số:
Cách đếm số nhị phân: ta dùng một số nhị phân 4 bit
Vậy với một số nhị phân n bit thì:
+ Số thập phân tương ứng lớn nhất 2n -1
+ Số trạng thái 2n
1.1.3 Hệ thập lục phân (Hexadecimal Number System)
Nếu dùng hệ nhị phân thì sẽ cần một số lượng lớn các bit để biểu diễn Trong thực tế để viết kết quả biểu diễn các số cho gọn lại người ta tìm cách nhóm 4 số hệ hai (1 nibble) thành một số hệ mười sáu Khác với hệ BCD hệ 16 dùng hết các tổ hợp có thể của 4 bit để biểu diễn các giá trị số Để làm được điều này người ta sử dụng các chữ số sẵn có của hệ mười (0 9) để biểu diễn các giá trị số ứng với 0 9
và dùng thêm các chữ cái A F để biểu diễn các giá trị còn lại ứng với 10 15 Để phân biệt một số hệ mười sáu với các số hệ khác ta kèm thêm chữ H ở cuối Ta cũng dễ nhận thấy rằng số mười chỉ là một bộ phận của hệ mười sáu
Trang 98
A biểu diễn cho 10
B biểu diễn cho 11
C biểu diễn cho 12
D biểu diễn cho 13
E biểu diễn cho 14
F biểu diễn cho 15
Khi đếm đến 16 vì không còn chữ số nên phải thêm 1 sang bên trái để tạo thành ‘10’,… Giá trị của một số hệ 16 bằng tổng các tích giữa giá trị của từng chữ
số nhân với trọng số của nó Trọng số của chữ số thứ i trong một số hệ 16 là 16i: S16={0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F }
Ví dụ 1: Để biểu diễn số 255 ta cần đến 8 bit viết như sau:
255 = 111111112
Ví dụ 2: 2AE4H = 2x163 + Ax162 + Ex161 + 4x160 = 10980D
1.1.4 Mã BCD (Binary Coded Decimal)
Trong thực tế, đối với một số ứng dụng như đếm tần, đo điện áp, … ngõ ra ở dạng
số thập phân, ta dùng mã BCD Mã BCD dùng 4 bit nhị phân để mã hóa cho một số thập phân 0 9 Như vậy, các số hex A F không tồn tại trong mã BCD Vì tầm quan trọng của các số BCD nên các bộ vi xử lý thường có các lệnh thao tác với chúng
Ví dụ: Số thập phân 5 2 9
Số BCD 0101 0010 1001
1.1.5 Mã hiển thị Led 7 thanh (7-segment display)
Đối với các ứng dụng dùng hiển thị số liệu ra Led 7 đoạn, ta dùng mã hiển thị Led 7 đoạn (bảng 1.1)
Trang 10Chuyển số nhị phân thành số thập phân
Để chuyển một số nhị phân thành một số thập phân, ta chỉ cần nhân các chữ
số của số nhị phân với giá trị thập phân của nó và cộng tất cả các giá trị lại
Ví dụ: 1011.11 = 1x23 + 0x22 + 1x21 + 1x20 + 1x2-1 + 1x2-2 = 11.75
Chuyển số thập phân thành số nhị phân:
Để chuyển một số thập phân thành số nhị phân, ta dùng 2 phương pháp sau: Phương pháp 1: Ta lấy số thập phân cần chuyển trừ đi 2i trong đó 2i là số lớn nhất nhỏ hơn hay bằng số thập phân cần chuyển Sau đó, ta lại lấy kết quả này và thực hiện tương tự cho đến 20 thì dừng Trong quá trình thực hiện, ta sẽ ghi lại các
Trang 1211
1.2.2 Hệ nhị phân và hệ hex
Cách chuyển nhị phân sang hex
Phương pháp: các bit nhị phân được nhóm 4 bit từ LSB, mỗi nhóm 4 bit được chuyển sang số hex tương ứng (bảng 1.1) Nếu số bit không đủ thì cộng thêm bit 0 vào MSB
Ví Dụ: ‘ 0 0 1 1’ 1 0 1 0’ 0 1 1 0’ = 3A6
1.3 Mã hóa thông tin
Khái niệm về mã hóa
Mã hóa thông tin là quy ước về cách biểu diễn thông tin trong máy tính Trong máy tính người ta dùng mã nhị phân (số nhị phân) có độ dài (số bit) cố định
để biểu diễn thông tin Với độ dài từ mã là n ta có thể biểu diễn được 2n trạng thái khác nhau
1.3.1 Mã hóa các thông tin không số
a.Mã hóa chữ và dữ liệu kiểu văn bản
Đơn vị cơ sở của dữ liệu văn bản là chữ Chữ ở đây được hiểu theo nghĩa rộng, không chỉ là các chữ cái Latinh mà kể cả chữ số, các dấu chính tả, các dấu toán học, các kí hiệu để trình bày Mặt khác không phải dân tộc nào cũng dùng chữ Latinh nên đối với một số dân tộc có thể có những chữ riêng Chúng ta dùng thuật ngữ ký tự (character) với ý nghĩa là một ký hiệu dùng trong văn bản
Nếu dùng một vùng nhớ k bit để mã hóa một chữ thì chỉ có thể biểu diễn tối
đa được 2k ký tự vì chỉ có thể tạo được đúng 2k các mã nhị phân khác nhau Điều này giải thích tại sao người Mỹ chỉ cần 7 bitđể mã hóa cho các chữ của họ; để có thêm các mặt chữ Châu Âu, chữ Hy Lạp hay người Nhật phải dùng các mã 16 bit Các văn bản được hình dung như một chuỗi ký tự Nội dung một cuốn sách, một bài thơ được đưa vào máy tính là những ví dụ cụ thể về thông tin văn bản Hầu hết các máy tính và môi trường lập trình hiện nay đều sử dụng một byte để mã hóa một chữ
Về nguyên tắc có thể mã hóa giá trị sai hay không bởi bit0, giá trị đúng hay không bởi bit1 Tuy nhiên ít khi người ta sử dụng tới mức bitvì cơ chế địa chỉ hóa thường ít nhất ở mức byte Khi đó người ta vẫn dùng một byte để mã hóa các giá trị logic
Trang 1312
b.Các dữ liệu logic
Dữ liệu loại logic chỉ có thể hiện một trong hai trạng thái đối lập là đúng/sai, hoặc có/không Điều này ta thường thấy trong rất nhiều loại hồ sơ Ví dụ: Trong lý lịch cá nhân: họ tên, quê quán là dữ liệu kiểu văn bản, ngày tháng năm sinh, lương
có thể hiện bằng số, còn các thông tin như là đoàn viên thì không, có gia đình hay không là các thông tin có kiểu logic Các thông tin kiểu logic chịu tác động của các phép toán so sánh, các phép toán nhân logic “và”, cộng logic hoặc hay phủ định logic “không”
Về nguyên tắc có thể mã hóa giá trị sai hay không bởi bit0, giá trị đúng hay có bởi bit1 Tuy nhiên ít khi người ta sử dụng tới mức bitvì cơ chế địa chỉ hóa thường ít nhất ở mức byte Khi đó người ta vẫn dùng một byte để mã hóa các giá trị logic
c Hình ảnh
Hình 1.1 Ảnh bitmap
Trang 1413
Hình ảnh cũng có thể xử lý bằng máy tính Khác với hình ảnh thông thường,
hình ảnh trong máy tính được mã hóa dưới dạng nhị phân Có rất nhiều kiểu mã
hóa ảnh trong đó hai kiểu thông dụng nhất là Ảnh bitmap (nghĩa là bản đồ các bit)
thể hiện ảnh như một lưới điểm Như vậy mỗi điểm sẽ phải nằm trong một hàng
và một cột nào đó trong lưới, ngoài ra màu của điểm cũng được mã hóa Các ảnh khí tượng do các vệ tinh chụp gửi về, ảnh phong cảnh, chân dung đều
có thể thể hiện theo kiểu này Ta cũng có thể đưa một ảnh bất kỳ vào máy dưới
dạng bitmap bằng máy quét ảnh (scanner), máy quay video số (digital video
camera) hay máy chụp ảnh số (digita camera) Nói chung dữ liệu ảnh này là dữ
liệu lớn Vì vậy, người ta thường sử dụng các kỹ thuật nén ảnh trước khi đưa vào
máy lưu trữ và khôi phục ảnh khi trình bày Có rất nhiều chuẩn ảnh khác nhau, chủ
yếu khác nhau ở cách tổ chức để nén được ảnh mà vẫn giữ được chất lượng và thể
hiện được các hiệu ứng ảnh Còn lúc hiển thị để xem thì ảnh sẽ được khôi phục
dưới dạng bitmap Ảnh thể hiện theo từng điểm còn gọi là ảnh raster
Kiểu thứ 2 thể hiện ảnh theo cách vẽ Kiểu này chỉ phù hợp với các ảnh có
thành phần l các điểm rời rạc, các đường hoặc hình thể hiện bằng các đường biên
như bản vẽ kiến trúc các bản vẽ kỹ thuật, bản đồ Cách lưu trữ là lưu thông tin về
các thành phần của ảnh Đối với một đoạn thẳng thì chỉ lưu tọa độ các đầu mút, đối
với một hình tròn thì chỉ lưu tọa độ tâm và bán kính Vì thế các ảnh này thường
gọn gàng và dễ phóng to thu nhỏ (vì chỉ dùng các phép biến đổi toạ độ) Các ảnh
kiểu này gọi là ảnh vector
b Âm thanh
Âm thanh cũng có thể được xử lý bằng máy tính Cũng có nhiều phương pháp mã
hóa âm thanh Cách đơn giản nhất là mã hóa bằng cách xấp xỉ dao động sóng âm bằng
một chuỗi các byte thể hiện biên độ dao dộng tương ứng theo từng khoảng thời gian
bằng nhau Dĩ nhiên các đơn vị thời gian này cần phải đủ nhỏ để không làm nghèo âm
thanh Đơn vị thời gian này gọi là chu kỳ lấy mẫu Hình vẽ dưới đây minh hoạ cách lưu
trữ xấp xỉ sóng âm, theo đó sẽ lưu lại dãy các giá trị sau (xem hình 1.2)
Hình 1.2 Số hóa âm thanh
Trang 15Còn có nhiều cách mã hóa âm thanh dựa theo những nguyên lý nén dữ liệu rất hiệu quả Việc số hóa âm thanh cũng được thực hiện nhờ các thiết bị chuyên dụng
Xử lý âm thanh trên máy tính gồm những việc sau:
Thu và mã hóa âm thanh
Biên tập (sửa chữa, ghép, cắt)
Phân tích (tìm các đặc trưng để nhận dạng tiếng nói) Một số máy tính đã có thể nghe được các lệnh đơn giản Các máy điện thoại di động hiện nay đã có khả năng nhận dạng tiếng nói
Tổng hợp tiếng nói Ở mức độ đơn giản máy tính có thể đọc văn bản thành lời
1.3.2 Xét trường hợp biểu diễn số
Nếu dùng 1 byte (8 bit) để biểu diễn các số nguyên không dấu (số tự nhiên) thì ta có thể biểu diễn được 2n = 28 = 256 số từ 0 đến 255
là 1000 0000 = -128 (ta sẽ nói cách tìm số -128 sau)
Trang 1615
Cách tìm số bù hai biểu diễn một số âm như sau:
Đổi trị tuyệt đối của số âm ra mã nhị phân (với độ dài từ mã cố định, ví dụ 8,
- Lấy số bù một cộng với 1 để được số bù hai
- Đổi số nhị phân bù hai sang hệ mười
Ví dụ: Cho số nhị phân 1101 1001, số này biểu diễn một số nguyên có dấu, hãy tìm số nguyên đó
Bit MSB = 1 => Số biểu diễn là số âm
Số bù một = 0010 0110
Số bù hai = 0010 0111
Số nguyên cần tìm là -39
a Mã ASCII
Thông tin, dữ liệu xung quanh chúng ta có rất nhiều loại như văn bản, số liệu,
âm thanh, hình ảnh,…Muốn đưa các loại thông tin này vào máy tính chúng ta phải dùng mã nhị phân để biểu diễn Trong thực tế thông tin được truyền đi, được lưu giữ trong các bộ nhớ máy tính hoặc để hiển thị trên màn hình đều ở dưới dạng ký tự
và tuân theo một loại mã được dùng rộng rãi trên thế giới gọi là mã ASCII (American Standard Code for Information Interchange, mã chuẩn của Mỹ dùng để trao đổi thông tin) Việc dùng các ký tự để mã hóa thông tin theo bảng mã ASCII
Trang 17Trong bảng mã ASCII tiêu chuẩn người ta chỉ dùng hết 7 bit (từ bit 0 đến bit 6) để mã hóa các ký tự, còn 1 bit MSB có thể cho liên tục bằng 0, hoặc bằng 1, hoặc có thể dùng để chứa bit parity phục vụ việc phát hiện lỗi khi truyền
Bảng 1.2 Bảng mã ASCII tiêu chuẩn
Trang 18b Quan hệ giữa mã ASCII và số BCD
Khi lưu trữ, hiển thị hoặc truyền giữa các thiết bị các giá trị số 0 9 thực chất
ta làm việc với mã ASCII của các số đó, tức là các số 30H 39H Ta thấy trong một byte biểu diễn các giá trị số 0 9 có 4 bit thấp ứng với mã BCD của chính số
đó, còn 4 bit cao luôn luôn là mã BCD của số 3 Nếu ta thay 4 bit cao trong mã ASCII của một số bằng 0000B thì ta thu được số BCD không gói của số đó
1.3.3 Biểu diễn dữ liệu số trong máy tính
Hình 1.3 Phân loại các dạng dữ liệu cơ bản
Trang 1918
Dữ liệu để đạt được hiệu quả cao khi xử lý, lưu trữ và truyền thông tin điều cần thiết là phải tìm cách tổ chức và biểu diễn (thể hiện) thông tin trong máy tính điện tử một cách hợp lý Như đã biết, dữ liệu là hình thức biểu diễn thông tin Vậy đối với máy tính dữ liệu chính là các thông tin đã được mã hóa dưới dạng nhị phân
Dữ liệu - thông tin được máy tính xử lý có thể có các dạng khác nhau
Máy tính có thể tính toán trên các số, có thể xử lý thông tin chữ hay thông tin logic, có thể xử lý những thông tin đa phương tiện (multimedia) như âm thanh và hình ảnh Máy tính còn có thể xử lý tri thức (knowledge)
Thông tin về một đối tượng có thể rất phức tạp và có thể được thể hiện bằng nhiều dữ liệu có kiểu khác nhau Ví dụ thông tin về một cán bộ có thể có tên, nơi sinh là văn bản; ngày sinh, lương là số; ảnh chân dung là ảnh
Để lưu trữ trong máy tính điện tử cả dữ liệu số, phi số và tri thức đều được mã hóa bằng các mã nhị phân Theo nghĩa đó mọi dữ liệu dù là bản chất có khác nhau nhưng đều được số hóa
Sự phân biệt theo sơ đồ trên nặng về ý nghĩa sử dụng hơn là cách biểu diễn Dưới đây ta sẽ trình bày chi tiết hơn các lớp dữ liệu Trong trường hợp biểu diễn thông tin không quá phức tạp ta sẽ trình bày một chút về cách biểu diễn
1.3.4 Biểu diễn vật lý của thông tin trong máy tính
Đối với bộ nhớ trong, các thông tin sau khi mã hóa dưới dạng nhị phân được đưa vào bộ nhớ theo quy ước Mỗi ngăn của ô nhớ sẽ lưu giữ một trong hai trạng thái được quy ước là một trong hai bit 0 hoặc 1
Nếu dùng chiều của từ thông để mã hóa thì không thể phân biệt được các bitgiống nhau đứng liền nhau Thông thường các bitđược ghi theo kiểu điều tần Các bit được thể hiện qua các kiểu biến thiên của từ trường chứ không phải chiều của từ thông một vùng nhiễm từ trên đĩa Thực ra cách ghi trên đĩa từ khá phức tạp
vì người ta không những chỉ ghi dữ liệu mà còn có các thông tin về địa chỉ và các thông tin đồng bộ giúp cho việc đọc thông tin được chính xác
1.4 Các phép toán số học đối với số hệ nhị phân
1.4.1 Phép cộng và phép trừ
a.Phép cộng
Phép cộng các số hệ hai thực hiện giống như khi ta làm với số hệ mười Quy tắc phép cộng số hệ hai được chỉ ra trong bảng 1.3
Trang 20Các bộ cộng trong các khối tính toán số học của máy tính sẽ thực hiện các
phép cộng theo cách đã nói ở trên
b Phép trừ
Phép trừ các số hệ hai thực hiện giống như khi ta làm với số hệ mười
Quy tắc phép trừ số hệ hai được chỉ ra trong bảng 1.4
Trang 2120
Vídụ :
0110 1101 = 149
- 0011 0001 = 49
0011 1100 = 100
1.4.2 Số bù hai
Trong khi làm phép trừ ta nhận thấy có thể thực hiện phép trừ bằng phép cộng: cộng số bị trừ với số đối của số trừ Điều này cũng được ứng dụng trong các khối tính toán số học của máy tính để tận dụng các bộ cộng đã có sẵn Vấn đề đặt ra đối với số hệ hai là ta phải có cách biểu diễn số âm một cách thích hợp sao cho ta có thể ứng dụng được tính chất nói trên Có rất nhiều cách mã hóa các số hệ hai để biểu diễn số âm nhưng trong thực tế hay dùng nhất là dùng cách mã hóa kiểu số bù hai
Bảng 1.4 chỉ ra cách tạo ra các số hệ hai có dấu và số bù hai trong sự tương quan với số hệ hai
Bảng 1.5 Biểu diễn các số theo hệ hai, hệ hai có dấu và mã bù hai
Số 8 bit số hệ mười số hệ mười theo số hệ mười tính
hệ hai tương đương mã hệ hai có dấu theo mã
bù hai
0000 0000 0 + 0 + 0
0000 0001 1 + 1 + 1
0000 0010 2 + 2 + 2
0111 1101 125 + 125 + 125
0111 1110 126 +126 +126
0111 1111 127 +127 +127
1000 0000 128 - 0 - 128
1000 0001 129 - 1 - 127
1000 0010 130 - 2 - 126
1111 1101 125 -125 - 3
1111 1110 126 -126 - 2
1111 1111 255 -127 - 1
Trang 2221
Quan sát kỹ bảng này chúng ta có thể rút ra các nhận xét sau:
Nếu ta dùng 8 bit để biểu diễn số thì ta thu được 256 tổ hợp có giá trị từ 0 đến
255 (tương ứng 00 FF H), tức là chỉ biểu diễn được số dương
Với tổ hợp trên nếu ta muốn biểu diễn số có dấu theo kiểu dấu và độ lớn (sign and magnitude) ta phải mất 1 bit để dành cho dấu và 7 bit còn lại để định giá trị Với cách làm này ta có khả năng biểu diễn cả số âm và số dương nằm trong khoảng -127 -0, +0 +127 (chú ý 2 giá trị 0 khác nhau)
Số bù hai được tạo ra theo cách gần giống như kiếu dấu và độ lớn nhưng nó dùng cả 8 bit để biểu diễn giá trị của số được mã hóa Mã bù hai dài 8 bit có khả năng biểu diễn các số âm và dương trong khoảng -128 0 +127 Một số dương có
mã bù hai giống như hệ mã hai thông thường
Một số biểu diễn theo hệ hai sẽ có các giá trị khác nhau nếu hiểu đó là mã để biểu diễn số theo kiểu hệ hai có dấu hoặc kiểu số bù hai Nói khác đi, một cụm các
số 0 và 1 sẽ được cảm nhận khác nhau khi nó biểu diễn giá trị số theo các mã khác nhau Cho dù có được biểu diễn bằng số hệ hai có dấu hay số bù hai thì các số âm đều có bit b7 = 1, còn các số dương có bit b7 = 0
Bây giờ ta nói cụ thể cách tính số bù hai của một số nào đó Về mặt toán học thì số bù hai của một số chính là số đối của nó Như vậy một số dương sẽ có số bù hai là một số âm cùng giá trị tuyệt đối và ngược lại
Quy tắc: Muốn tìm số bù hai của một số A ta làm theo các bước sau:
Biểu diễn số A theo mã bù hai của nó
Tìm số bù một (bù logic) của số đó (bằng cách đảo bit)
Cộng 1 vào số bù một ở trên để nhận được số bù hai của số A
Ghi chú: Khi có một số âm được biểu diễn theo mã bù hai nếu muốn tính giá trị tuyệt đối của nó ta cũng áp dụng quy tắc này (áp dụng bước 2 và bước 3)
Kết quả phép cộng số bù 2 là 1111 0101 có MSB = 1 nên là số âm Số bù 1 là
0000 1010 → số bù 2: 0000 1011 Kết quả này chính là 11 nên phép trừ sẽ cho kết quả là –11
Trang 23Mã bù hai của kết quả trên 1111 1111
Số bù 1 của kết quả trên 0000 0000
Cộng - để tìm giá trị tuyệt đối 0000 0001
1.4.3 Phép nhân và phép chia
a Phép nhân
Phép nhân các số nhị phân cũng tương tự như đối với các số thập phân Chú ý rằng đối với phép nhân nếu nhân 2 số 4 bit sẽ có kết quả là số 8 bit, 2 số 8 bit sẽ có kết quả là số 16 bit, …
Cần lưu ý:
0 x 0 = 0 ; 0 x 1 = 0 ; 1 x 1 = 1
Trang 2423
Đối với máy tính, phép nhân được thực hiện bằng phương pháp cộng và dịch phải (add-and-right-shift):
Thành phần đầu tiên của tổng sẽ chính là số bị nhân nếu như LSB của số nhân
là 1 Ngược lại, nếu LSB của số nhân bằng 0 thì thành phần này bằng 0
Mỗi thành phần thứ i kế tiếp sẽ được tính tương tự với điều kiện là phải dịch trái số bị nhân i bit
Kết quả cần tìm chính là tổng các thành phần nói trên
b Phép chia
Phép chia các số nhị phân cũng tương tự như đối với các số thập phân Tương
tự như đối với phép nhân, ta có thể dùng phép trừ và phép dịch trái cho đến khi không thể thực hiện phép trừ được nữa Tuy nhiên, để thuận tiện cho tính toán, thay
vì dùng phép trừ đối với số chia, ta sẽ thực hiện phép cộng đối với số bù 2 của số chia
Đổi số chia ra số bù 2 của nó
Lấy số bị chia cộng với số bù 2 của số chia
Nếu kết quả này có bit dấu = 0 thì bit tương ứng của thương = 1
Nếu kết quả này có bit dấu = 1 thì bit tương ứng của thương = 0 và ta phải khôi phục lại giá trị của số bị chia bằng cách cộng kết quả này với số chia
Dịch trái kết quả thu được và thực hiện tiếp tục như trên cho đến khi kết quả
là 0 hay nhỏ hơn số chia
c Sơ lược các phép toán logic
- Sơ lược các cổng đệm (buffer) và các cổng logic (logic gate):
Trang 2524
Hình 1.4 Cổng đệm và các cổng Logic
- Thiết bị logic lập trình được:
Thay vì sử dụng các cổng logic rời rạc, ta có thể dùng các thiết bị logic lập trình được (programmable logic device) như PLA (Programmable Logic Array), PAL (Programmable Array Logic) hay PROM (Programmable Read Only Memory) để liên kết các thiết bị LSI (Large Scale Intergration)
PLA (hay FPLA – Field PLA):
Dùng ma trận cổng AND và OR để lập trình bằng cách phá huỷ các cầu chì FPLA rất linh động nhưng lại khó lập trình
Trang 2827
CLR: clear; PR: Preset; CLK: Clock
Nếu xuất hiện cạnh lên của tín hiệu CLK thì ngõ ra Q sẽ có giá trị theo dữ liệu tại D
Trang 2928
Bộ đếm nhị phân 4 bit:
Hình 1.12 Sơ đồ giản lược
Khối số học-logic (ALU)
Hình 1.13 Khối số học
Trang 3029
1.5 Cấu trúc của hệ vi xử lý và máy vi tính
1.5.1 Lịch sử phát triển các trung tâm vi xử lý
Bộ vi xử lý là thành phần rất cơ bản không thể thiếu được để tạo nên máy vi tính và các hệ vi xử lý Trước khi tìm hiểu cấu trúc của một hệ vi xử lý ta lướt qua
Các hãng sản xuất vi xử lý đầu tiên ở thời điểm này là Intel, Texas Instruments và Garrett AiResearch với ba dịng chip tương ứng: Intel 4004, TMS
1000 và Central Air Data Computer Đây là những vi xử lý 4 bit
Sau sự ra đời của các vi xử lý 4 bit thì các hãng cho ra đời các dịng 8 bit, 12 bit, 16 bit, 32 bit, 64 bit
a Thế hệ 1 (1971 - 1973)
Năm 1971, hãng Intel đã cho ra đời bộ vi xử lý đầu tiên là 4004 (4 bit số liệu,
12 bit địa chỉ) Sau đó Intel và các hãng khác lần lượt cho ra đời các bộ vi xử lý khác: 4040 (4 bit) và 8008 (8 bit) của Intel,PPS-4 (4 bit) của Rockwell International,IPM-16 (16 bit) của NationalSemiconductor
Đặc điểm chung của các bộ vi xử lý thế hệ này là:
Độ dài từ thường là 4 bit (có thể dài hơn)
Công nghệ chế tạo PMOS có mật độ tích hợp nhỏ
Tốc độ thực hiện lệnh: 10 - 60 μs/lệnh với tần số đồng hồ fclk = 0,1 - 0,8 MHz
Tập lệnh đơn giản và phải cần nhiều vi mạnh phụ trợ mới tạo nên một hệ vi mạch hoàn chỉnh
b Thế hệ 2 (1974 – 1977)
Các bộ vi xử lý đại diện cho thế hệ này là các bộ vi xử lý 8 bit 8080 và 8085 của Intel, 6800 và 6809 của Motorola và Z80 của Zilog
Đặc điểm:
Trang 3130
Độ dài từ là 8 bit, đồng thời tập lệnh phong phú hơn thế hệ trước
Công nghệ chế tạo: NMOS (có mật độ tích hợp cao hơn PMOS) hoặc CMOS Tốc độ thực hiện lệnh: 1-8 μs/lệnh với tần số đồng hồ fclk = 1-5 MHz
c Thế hệ 3 (1978 - 1982)
Các bộ vi xử lý đại diện cho thế hệ này là các bộ vi xử lý 16 bit 8086, 80186,
80286 của Intel, 68000 và 68010 của Motorola
Đặc điểm:
Độ dài từ là 16 bit
Công nghệ chế tạo: HMOS (có mật độ tích hợp cao hơn PMOS) hoặc CMOS Tốc độ thực hiện lệnh: 0,1-1 μs/lệnh với tần số đồng hồ fclk =5-10 MHz Tập lệnh đa dạng với các lệnh nhân, lệnh chia và các lệnh thao tác với chuỗi
ký tự
d Thế hệ 4 (1983)
Các bộ vi xử lý đại diện cho thế hệ này là các bộ vi xử lý 32 bit 80386, 80486
và 64 bit Pentium của Intel, các bộ vi xử lý 32 bit 68020, 68030, 68040, 68060 của Motorola
Đặc điểm của các bộ vi xử lý thế hệ này là bus địa chỉ đều là 32 bit (có khả năng đánh địa chỉ cho bộ nhớ tới 4 GB) và có khả năng làm việc với bộ nhớ ảo Người ta cũng áp dụng các cơ chế hoặc các cấu trúc đã được sử dụng trong các máy tính lớn vào các bộ vi xử lý: cơ chế xử lý xen kẽ liên tục dạng mã lệnh (pipeline),
bộ nhớ cache (bộ nhớ ẩn), bộ nhớ ảo Các bộ vi xử lý thế hệ này đều có bộ quản lý
bộ nhớ (MMU) và nhiều khi cả bộ đồng xử lý toán học ở bên trong Phần lớn các
bộ vi xử lý thế hệ này đều sản xuất bằng công nghệ HCMOS
Bên cạnh các bộ vi xử lý vạn năng truyền thống thường được sử dụng để xây dựng các máy tính với tập lệnh đầy đủ (Complex Instruction Set Computer, CISC)
mà chúng ta đã nói ở trên, trong thời gian này cũng đã xuất hiện các bộ vi xử lý cải tiến dùng để xây dựng các máy tính với tập lệnh rút gọn (Reduced Instruction Set Computer, RISC) với nhiều tính năng có thể so sánh với các máy tính lớn ở thế hệ trước Đó là các bộ vi xử lý Alpha của hãng Digital, PowerPC của ba hãng Apple-Motorola-IBM
Dưới đây là một số thông số chính của các bộ vi xử lý Intel
Trang 32Có bộ quản lý bộ nhớ bên trong không không có
Các bộ vi xử lý 32 bit của Intel
386DX 386SX 486DX 486SX 486DX2 Pentium Năm sản xuất 10/1985 6/1988 4/1989 4/1991 3/1992 5/1993 fclk max (đồng hồ
Bên ngoài, do82385 đ.khiển
Trang 3332
1.5.2 Cấu trúc cơ bản của hệ vi xử lý
a.Cấu trúc của một vi xử lý co bản
Một vi xử lý về cơ bản gồm có 3 khối chức năng: đơn vị thực thi (Execution),
bộ điều khiển tuần tự (Sequencer) và bus giao tiếp
- Đơn vị thực thi: Xử lý các lệnh số học và logic Các toán hạng liên quan có mặt ở các thanh ghi dữ liệu hoặc địa chỉ hoặc từ bus nội
- Bộ điều khiển tuần tự: Bao gồm bộ giải mã lệnh (Intrustruction Decoder) và
bộ đếm chương trình (Program Counter)
Bộ đếm chương trình gọi các lệnh chương trình tuần tự
Bộ giải mã lệnh thì khởi động các bước cần thiết để thực hiện lệnh Bộ điều khiển tuần tự tạo thành một hệ thống logic tuần tự mà cách thức hoạt động của nó được chứa trong ROM Nội dung chứa trong ROM được gọi là vi chương trình Các lệnh bên ngoài trong trường hợp này xác định các địa chỉ vào vi chương trình Khi chương trình bắt đầu thực hiện thì bộ đếm chương trình PC được đặt ở địa chỉ bắt đầu, thường là địa chỉ 0000H (với xi xử lý 8 bit) Địa chỉ này được chuyển đến
bộ nhớ thông qua bus địa chỉ (Address Bus) Khi tín hiệu Read được đưa vào ở bus địa chỉ nội dung của bộ nhớ liên quan xuất hiện trên bus dữ liệu (data bus) và sẽ được chứa ở bộ giải mã lệnh (Instruction Decoder) Sau khi khởi động một số bước cần thiết để thực thi lệnh nhờ một số chu kỳ máy và khi lệnh đã thực thi, thì bộ giải
mã lệnh làm cho bộ đếm chương trình chỉ đến địa chỉ của lệnh kế
Hình 1.14 Sơ đồ khối một máy tính cổ điển
Trang 3433
Để tạo thành một hệ vi xử lý hoàn chỉnh, bộ vi xử lý cần phải kết hợp với các
bộ phận điện tử khác như bộ nhớ và các bộ phối ghép vào/ra Cần lưu ý rằng máy
vi tính chỉ là một trong những ứng dụng cụ thể của hệ vi xử lý Dưới đây là sơ đồ khối tổng quát của một hệ vi xử lý
Trong sơ đồ này ta thấy các khối chức năng chính của hệ vi xử lý gồm có: + Khối xử lý trung tâm (Central Processing Unit, CPU)
+ Bộ nhớ trong RAM-ROM (Memory, M)
+ Khối phối ghép với các thiết bị ngoại vi (Input/Output, I/O)
+ Các bus truyền thông tin giữa các khối
Khối xử lý trung tâm (CPU, còn gọi là bộ vi xử lý) đóng vai trị chủ đạo trong
hệ vi xử lý Khi hoạt động, nó đọc mã lệnh được ghi dưới dạng các bit 0 và 1 từ bộ nhớ, sau đó nó sẽ giải mã các lệnh này thành dãy các xung điều khiển ứng với các thao tác trong lệnh để điều khiển các khối khác thực hiện từng bước các thao tác
đó Để làm được việc này bên trong CPU có các thanh ghi (ô nhớ): thanh ghi con trỏ lệnh IP dùng để chứa địa chỉ của các lệnh sắp thực hiện, các thanh ghi con trỏ
và chỉ số, các thanh ghi đa năng cùng bộ tính toán số học và logic (ALU, Arithmetic and Logic Unit) để thao tác với dữ liệu Ngoài ra bên trong CPU còn có các hệ thống mạch điện tử rất phức tạp để giải mã lệnh và từ đó tạo ra các xung điều khiển cho toàn hệ
Bộ nhớ bán dẫn hay còn gọi là bộ nhớ trong là một bộ phận rất quan trọng của
hệ vi xử lý Bộ nhớ bán dẫn gồm có ROM và RAM ROM dùng để chứa chương trình điều khiển của tồn hệ, khi bật điện CPU sẽ lấy lệnh từ đây để khởi động hệ thống RAM chứa một phần chương trình điều khiển hệ thống, các chương trình ứng dụng, dữ liệu và các kết quả của chương trình Các dữ liệu và chương trình muốn lưu trữ lâu dài sẽ được để ở bộ nhớ ngoài (đĩa từ, băng từ) Khi hoạt động CPU sẽ lấy các lệnh trong RAM ra thực hiện, bởi vậy các chương trình muốn CPU thực hiện phải được đưa vào RAM Bộ nhớ trong được tổ chức thành các ô nhớ có
độ dài (số bit) bằng nhau, mỗi ô nhớ được gán một địa chỉ cố định và duy nhất Khối phối ghép vào/ra (I/O) là bộ phận giao tiếp giữa hệ vi xử lý với thế giới bên ngoài Các thiết bị ngoại vi như bàn phím, chuột, màn hình, máy in, bàn phím, đều liên hệ với hệ vi xử lý qua bộ phận này Mỗi giao diện với một thiết bị bên ngoài gọi là cổng Có 2 loại cổng: cổng vào và cổng ra, cổng vào để lấy thông
Trang 3534
tin từ ngoài vào và cổng ra để đưa thông tin từ trong hệ thống ra ngoài Nếu nhìn từ trong CPU thì khối I/O có thể xem như bộ nhớ, mỗi cổng có một địa chỉ cố định và
có thể đọc dữ liệu vào hoặc ghi dữ liệu ra cổng
Bus là một nhóm các đường dây dẫn điện để truyền tín hiệu giữa các khối trong hệ Các đường dây này gọi chung là bus hệ thống Bus hệ thống gồm có ba bus thành phần: bus địa chỉ chuyển tải tín hiệu địa chỉ, bus dữ liệu chuyển tải tín hiệu dữ liệu và bus điều khiển chuyển tải tín hiệu điều khiển
Bus địa chỉ thường có từ 16, 20, 24 đến 32 đường dây song song chuyển tải các bit địa chỉ (mỗi đường dây vận chuyển một bit) Khi đọc/ghi bộ nhớ hoặc cổng I/O CPU sẽ đưa ra trên bus này địa chỉ của ô nhớ hay cổng I/O cần đọc/ghi Khả năng phân biệt địa chỉ của CPU (số địa chỉ mà CPU có khả năng quản lý) phụ thuộc vào số bit của bus địa chỉ Số bit của bus địa chỉ là n thì khả năng phân biệt địa chỉ của CPU là 2n địa chỉ khác nhau Ví dụ, bus địa chỉ có 20 bit thì CPU có khả năng phân biệt địa chỉ là 220 = 1 M địa chỉ khác nhau Cần lưu ý là chỉ CPU mới có khả năng đưa ra địa chỉ trên bus địa chỉ, bởi vậy trên sơ đồ bus địa chỉ có một chiều đi từ CPU tới các khối khác
Bus dữ liệu thường có từ 4, 8, 16, 32 đến 64 đường dây song song tùy thuộc vào bộ vi xử lý cụ thể Các đường dây này chuyển tải tín hiệu dữ liệu giữa các khối trong hệ Số lượng đường dây này quyết định số bit dữ liệu mà CPU có khả năng
xử lý cùng một lúc Trên sơ đồ bus dữ liệu có hai chiều để chỉ ra rằng dữ liệu có thể truyền đi từ CPU (dữ liệu ra) hoặc truyền đến CPU (dữ liệu vào)
Bus điều khiển thường gồm hàng chục đường dây song song chuyển tải các tín hiệu điều khiển khác nhau Mỗi tín hiệu điều khiển truyền trên một đường dây
và có một chiều nhất định Vì khi hoạt động CPU đưa tín hiệu điều khiển tới các khối khác trong hệ, đồng thời nó cũng nhận tín hiệu điều khiển từ các khối đó để phối hợp hoạt động Trên sơ đồ bus điều khiển có mũi tên 2 chiều là để thể hiện tính hai chiều của cả nhóm tín hiệu chứ không phải một tín hiệu
Sơ đồ khối của hệ vi xử lý cơ bản hình 1.15
Mọi hoạt động cơ bản của một hệ vi xử lý đều giống nhau, không phụ thuộc loại vi xử lý hay quá trình thực hiện µP sẽ đọc một lệnh từ bộ nhớ (memory), thực thi lệnh và sau đó đọc lệnh kế Quá trình đọc lệnh gọi là instruction fetch còn quá trình thực hiện tuần tự như trên gọi là fetch – execute sequence Tuy nhiên có một
số µP sẽ nhận một số lệnh rồi mới bắt đầu thực thi
Trang 36Port nhập là một driver 3 trạng thái Khi µP đọc vào từ địa chỉ của Port, driver
3 trạng thái lái dữ liệu từ bên ngoài vào data bus Sau đó, µP đọc dữ liệu từ bus Các tín hiệu tiêu biểu của một µP:
Hình 1.16 Các tín hiệu cơ bản trong µP
Trang 3736
Các bus dùng để liên kết các thành phần của hệ thống với µP µP sẽ chọn một thiết bị cần sử dụng thơng qua address bus và đọc hay ghi dữ liệu thơng qua data bus Data bus là bus 2 chiều, dùng chung cho tất cả các quá trình trao đổi dữ liệu Mỗi chu kỳ bus (bus cycle) là việc thực hiện trao đổi một từ dữ liệu giữa µP và ô nhớ hay thiết bị I/O
Mỗi chu kỳ bus bắt đầu khi µP xuất một địa chỉ nhằm chọn thiết bị I/O hay chọn một ô nhớ nào đo
Hình 1.17 Chu kỳ hoạt động của 1bus
1.5.3 Từ hệ Vi xử lý đến máy vi tính PC:
Trong thực tế, các hệ Vi xử lý hiện đại được trang bị thêm nhiều thiết bị ngoại
vi tiện dụng tuỳ theo yêu cầu, mục đích sử dụng và có giao diện thân thiện với con người Đó là các máy vi tính PC Cũng có thể là những hệ Vi xử lý chuyên dụng cho những mục đích tính toán hay điều khiển
a Máy tính xử lý dữ liệu
Là các máy tính được dùng để tính toán xử lý các dữ liệu như quản lý nhân viên trong cơ quan, tính toán tiền lương, tính toán kết cấu công trình, phân tích dữ liệu trong kinh doanh, v.v Quan điểm đúng cho rằng máy tính chỉ gồm CPU và
bộ nhớ chính, còn các thiết bị phụ trợ khác như bàn phím, máy in, các ổ đĩa cứng, đĩa mềm, Ổ CD, chuột, màn hình, máy in , là những thiết bị ngoại vi Các chương trình để xử lý dữ liệu được lưu giữ trong bộ nhớ chính hoặc trong các ổ đĩa, có nhiệm vụ xử lý những dữ liệu được người dùng nhập vào và đưa kết quả xử lý ra màn hình, in ra giấy hoặc lưu giữ trong các ổ đĩa Để đánh giá tính năng và chất lượng của các máy này, ta thường căn cứ vào tốc độ xử lý dữ liệu, dung lượng bộ nhớ, ổ đĩa, chất lượng màn hình, máy in v.v
Trang 3837
Hình 1.18 Máy vi tính
b Máy tính là bộ xử lý số
Đối với các máy tính, thời gian dành cho xử lý dữ liệu rất nhỏ, còn thời gian
để tính toán, xử lý các số liệu lại vô cùng lớn Các máy tính loại này được sử dụng chủ yếu trong các cơ quan dự báo, như dự báo khí tượng, thuỷ văn, trong tính toán quỹ đạo bay của tên lửa, máy bay, tầu thuỷ, v.v hay trong các phòng nghiên cứu khoa học Những máy tính loại này thông thường thực hiện những chương trình tính toán khổng lồ, nên chúng được trang bị các CPU rất mạnh và các thiết bị ngoại
vi, bộ nhớ ngoài rất lớn Đó là những siêu máy tính (Supercomputer)
c Máy tính đo lường và điều khiển
Sự phát triển nhanh chóng của các hệ thống máy tính đã tạo ra những ứng dụng lớn lao trong các hệ thống đo lường và điều khiển tự động Đối với các ứng dụng thông thường như trong các dụng cụ gia dụng, từ Ti vi, điều hoà nhiệt độ, máy giặt v.v Đó là những máy tính nhỏ được chế tạo dưới dạng một vi mạch (Single-chip Microcomputer) Tuy nhiên, cũng cần phải tính đến những máy tính này trong các thiết bị hiện đại và phức tạp như trong các hệ thống tự động lái máy bay (Autopilot), tàu thuỷ, tên lửa
d Căn cứ vào tính năng kỹ thuật và các chỉ tiêu về kích thước
Các máy tính còn được chìa ra thành máy tính lớn đẻ giải các bài toán cực lớn với tốc độ rất nhanh, máy tính nhỏ sử dụng trong gia đình, trong trường học hay các tính toán thông dụng, điều khiển các quá trình công nghệ vừa và nhỏ
Trang 3938
Cũng cần nhắc đến ở đây một sự khác biệt giữa hai khái niệm hệ Vi xử lý và máy vi tính: Các máy vi tính luôn luôn được trang bị một phần mềm cơ bản là Hệ điều hành, ví dụ: MS-DOS hay các phiên bản điều hành đa nhiệm (MS WINDOWS của hãng phần mềm Microsoft, hoặc các hệ điều hành của các hãng khác ) và các chương trình hay phần mềm ứng dụng, trong khi các hệ Vi xử lý chỉ cần trang bị một chương trình Monitor (chương trình giám sát) đơn giản đươc ghi trong bộ nhớ ROM
5 Hãy chuyển đổi các mã số sau:
a Từ mã Binary sang Hexadecimal: 1110010112
b.Từ mã Hexadecimal sang nhị phân: EDH
c.Từ mã Decimal sang Binary: 4910
Đáp số: a/ 1CBH ; b/ 111011012 ; c/ 1100012
Trang 4039
Bài 2 Các đơn vi vi xử lý trung tâm Mục tiêu
- Trình bày được cấu trúc của các đơn vị vi xử lý đã học
- Phân tích các chương trình có sẵn
- Thực hiện các ứng dụng thực tế thông qua các mô hình
- Rèn luyện tính tỷ mỉ, chính xác, an toàn và vệ sinh công nghiệp
2.1 Trung tâm vi xử lý P 8085:
Hình 2.1 Sơ đồ khối cấu trúc của µP8085