Giáo trình Cấu trúc máy tính - Phạm Đình Trịnh

BM/QT10/P.ĐTSV/04/04  
Ban hành lần: 3  
UBND TỈNH RỊA VŨNG TÀU  
TRƯỜNG CAO ĐẲNG KỸ THUẬT CÔNG NGHỆ  
GIÁO TRÌNH  
MÔN HỌC: CẤU TRÚC MÁY TÍNH  
NGHỀ: KỸ THUẬT LẮP RÁP, SỬA CHỮA MÁY TÍNH  
TRÌNH ĐỘ TRUNG CẤP  
(Ban hành kèm theo Quyết định số:  
/QĐ-CĐKTCN ngày…….tháng….năm ...................  
của Hiệu trưởng Trường Cao đẳng Kỹ thuật Công nghệ BR – VT)  
RỊA VŨNG TÀU, NĂM 2020  
1
LỜI GIỚI THIỆU  
Giáo trình Cấu trúc máy tính là môn học chuyên môn. Mục đích của giáo  
trình Cấu trúc máy tính này là nhằm chuẩn hóa tài liệu giảng dạy học tập cho  
học sinh trung cấp, đồng thời cũng là tài liệu tham khảo đối với các chuyên  
ngành khác trong lĩnh vực công nghệ thông tin, Kỹ thuật lắp ráp, sửa chữa máy  
tính.  
Mục được xây dựng và biên soạn trên cơ sở Chương trình khung đào tạo  
nghề Kỹ thuật lắp ráp, sửa chữa máy tính đã được Hiệu trưởng trường Cao đẳng  
kỹ thuật công nghệ Rịa - Vũng Tàu phê duyệt.  
Giáo trình Cấu trúc máy tính dùng để giảng dạy ở trình độ trung cấp được  
biên soạn theo nguyên tắc quan tâm đến: tính định hướng thị trường lao động,  
tính hệ thống và khoa học, tính ổn định và linh hoạt, hướng tới liên thông, chuẩn  
đào tạo nghkhu vực thế giới, tính hiện đại và sát thực với thực tế.  
Nội dung giáo trình gồm 5 chương:  
Chương I : Bảo hộ lao động  
Chương II : Vệ sinh lao động trong sản xuất  
Chương III: Kỹ thuật an toàn điện  
Chương IV: Kỹ thuật an toàn dữ liệu điện  
Áp dụng việc đổi mới trong phương pháp dạy học, giáo trình đã biên  
soạn cả phần thuyết thực hành. Giáo trình được biên soạn theo hướng mở,  
kiến thức rộng cố gắng chỉ ra tính ứng dụng của nội dung được trình bày.  
Trên cơ sở đó tạo điều kiện để các giáo viên và học sinh, sinh viên sử dụng  
thuận tiện trong việc giảng dạy cũng như làm tài liệu học tập, tham khảo và  
nghiên cứu.  
Trong quá trình biên soạn không tránh khỏi sai sót, ban biên soạn rất  
mong được sự góp ý của các thầy cô, học sinh, sinh viên và bạn đọc để giáo  
trình được hoàn thiện hơn.  
Rịa - Vũng Tàu, ngày tháng năm ………  
Tham gia biên soạn  
1. Chủ biên: Phạm Đình Trịnh  
1
 
MỤC LỤC  
2
 
3
4
GIÁO TRÌNH MÔN HỌC  
Tên môn học: Cấu trúc máy tính  
Mã môn học: MH12  
Vị trí, tính chất và vai trò của môn đun:  
- Vị trí: là mô đun môn học cơ sở chuyên ngành được bố trí sau khi sinh viên học  
xong môn đun Tin học học trước môn lắp ráp cài đặt máy tính là môn học cơ sở  
chuyên ngành đào tạo chuyên môn nghề.  
- Tính chất: Là môn học chuyên ngành bắt buộc.  
- Vai trò của môn học: cơ sở ngành trang bị nhũng kiến thức về các thành phần  
của máy tính như Mainboard, CPU, Ram, Ổ cứng, Ổ CD/DVC, Card mạng, Card màn  
hình, Màn hình… và cách thức, cơ chế hoạt động của chúng.  
Mục tiêu môn học:  
- Về kiến thức:  
+ Trình bày được lịch sử của máy tính, các thế hệ máy tính và cách phân loại  
máy tính.  
+ Trình bày được các thành phần cơ bản của kiến trúc máy tính, các tập lệnh.  
Các kiểu kiến trúc máy tính: mô tả kiến trúc, các kiểu định vị.  
+ Trình bày được cấu trúc của bộ xử lý trung tâm: tổ chức, chức năng và  
nguyên lý hoạt động của các bộ phận bên trong bộ xử lý. Mô tả diễn tiến thi hành một  
lệnh mã máy và một số kỹ thuật xử lý thông tin: ống dẫn, siêu ống dẫn, siêu vô hướng.  
+ Trình bày được chức năng và nguyên lý hoạt động của các cấp bộ nhớ.  
+ Trình bày được phương pháp an toàn dữ liệu trên thiết bị lưu trữ ngoài  
- Về kỹ năng: Vận dụng các kiến thức đã học chọn được các thiết bị cho một bộ  
máy tính bàn hoàn chỉnh đáp ứng nhu cầu của người sử dụng.  
- Về năng lực tự chủ và trách nhiệm: thể làm việc một cách độc lập hay làm  
việc theo nhóm.  
Nội dung môn học:  
5
CHƯƠNG 1: MỞ DẦU  
chương : 12.01  
Giới thiệu :  
Trong chương này giới thiệu về lịch sử máy tính, cách phân loại máy tính  
theo công dụng hay chức năng, khái niệm về thông tin, dữ liệu và các hệ thống  
số và cách biểu diễn thông tin.  
Mục tiêu :  
- Trình bày được khái nim máy tính  
-Trình bày được nguyên lý xây dng máy tính  
- Trình bày được lịch sphát triển ca máy tính  
- Trình bày được các thành phần cơ bản của một máy vi tính  
- Trình bày được các thành tựu của máy tính.  
- Phân biệt được các loại máy tính  
Nội dung chính:  
1.Những khái niệm cơ bản  
1.1 Máy tính  
Máy tính là công cụ cho phép xử lý thông tin một cách tự động theo những  
chương trình (program) đã được lập sẵn từ trước.  
Mục đích làm việc của máy tính là xử lý thông tin, trong đó chương trình đã  
được lập sẵn quy định máy tính sẽ tiến hành xử lý thông tin như thế nào.  
Chương trình là một dãy các lệnh (tập các lệnh: set of instructions) theo một  
trình tự nhất định để thực hiện một công việc nào đó từng bước một theo ý muốn  
của người lập trình.  
Như vậy, chương trình là một tập các chỉ thị đra lệnh cho máy tính thực hiện  
công việc nhằm đạt đến mục tiêu hay kết quả của việc thực hiện chương trình.  
Muốn máy tính thực hiện chương trình tự động thì máy tính phải chức năng  
“nhớ” tập lệnh của chương trình.  
6
     
1.2. Các nguyên lý xây dựng sự phân loại máy tính  
1.2.1. Các nguyên lý xây dựng máy tính điện tử  
Máy tính có thể làm việc thông qua sự chuyển động của các bộ phận cơ  
khí, điện tử (electron), photon, hạt lượng tử hay các hiện tượng vật lý khác đã  
biết. Mặc dù máy tính được xây dựng từ nhiều công nghệ khác nhau song gần  
như tất cả các máy tính hiện nay đều là máy tính điện tử.  
Máy tính có thể trực tiếp mô hình hóa các vấn đề cần được giải quyết,  
trong khả năng của nó các vấn đề cần được giải quyết sẽ được phỏng gần  
giống nhất với những hiện tượng vật đang khai thác. Ví dụ, dòng chuyển động  
của các điện tử thể được sử dụng để mô hình hóa sự chuyển động của nước  
trong đập. Những chiếc máy tính tương tự (analog computer) giống như thế đã  
rất phổ biến trong thập niên 1960 nhưng hiện nay còn rất ít.  
Trong phần lớn các máy tính ngày nay, trước hết, mọi vấn đề sẽ được  
chuyển thành các yếu tố toán học bằng cách diễn tả mọi thông tin liên quan  
thành các số theo hệ nhị phân (hệ thống đếm dựa trên các số 0 và 1 hay còn gọi  
hệ đếm cơ số 2). Sau đó, mọi tính toán trên các thông tin này được tính toán  
bằng đại số Boole (Boolean algebra).  
Các mạch điện tử được sử dụng để miêu tả các phép tính Boole. Vì phần  
lớn các phép tính toán học thể chuyển thành các phép tính Bool nên máy tính  
điện tử đủ nhanh để xử phần lớn các vấn đề toán học (và phần lớn thông tin  
của vấn đề cần giải quyết đã được chuyển thành các vấn đề toán học).[cần dẫn  
nguồn] Ý tưởng cơ bản này, được nhận biết và nghiên cứu bởi Claude E.  
Shannon - người đã làm cho máy tính kỹ thuật s(digital computer) hiện đại trở  
thành hiện thực.  
Máy tính không thể giải quyết tất cả mọi vấn đề của toán học. Alan  
Turing đã sáng tạo ra khoa học thuyết máy tính trong đó đề cập tới những vấn  
đề mà máy tính có thể hay không thể giải quyết.  
7
   
Khi máy tính kết thúc tính toán một vấn đề, kết quả của được hiển thị  
cho người sử dụng thấy thông qua thiết bị xuất như: bóng đèn, màn hình, máy  
in, máy chiếu...  
Những người mới sử dụng máy tính, đặc biệt trẻ em, thường cảm thấy  
khó hiểu về ý tưởng cơ bản là máy tính chỉ một cái máy, nó không thể "suy  
nghĩ" hay "hiểu" những gì nó hiển thị. Máy tính chỉ đơn giản thi hành các tìm  
kiếm cơ khí trên các bảng màu và đường thẳng đã lập trình trước, rồi sau đó  
thông qua các thiết bị đầu ra (màn hình, máy in,...) chuyển đổi chúng thành  
những hiệu mà con người thể cảm nhận được thông qua các giác quan  
(hình ảnh trên màn hình, chữ trên văn bản được in ra). Chỉ bộ não của con  
người mới nhận thức được những hiệu này tạo thành các chữ hay số gắn ý  
nghĩa cho chúng. Trong quan điểm của máy tính thì mọi thứ mà nó "nhận thấy"  
(kể cả khi máy tính được coi là có khả năng tự nhận biết) chỉ là các hạt electron  
tương đương với các số 0 và 1. Xem thêm trí tuệ nhân tạo (artificialintelligence)  
1.2.2. Phân loại máy tính  
1.2.2.1. Theo kích thước, công dụng ( tính năng và giá tiền)  
Một siêu máy tính là một máy tính vượt trội trong khả năng tốc độ xử lý.  
Thuật ngữ Siêu Tính Toán được dùng lần đầu trong báo New York World vào  
năm 1920 để nói đến những bảng tính (tabulators) lớn của IBM làm cho  
trường Đại học Columbia. Siêu máy tính hiện nay có tốc độ xử lý hàng  
nghìn teraflop (một teraflop tương đương với hiệu suất một nghìn tỷ phép  
tính/giây) hay bằng tổng hiệu suất của 6.000 chiếc máy tính hiện đại nhất hiện  
nay gộp lại (một máy có tốc độ khoảng từ 3-3,8 gigaflop).  
Siêu máy tính cỡ nhỏ (minisupercomputers) là một dòng máy tính xuất hiện  
vào giữa thập kỉ 1980. Khi việc tính toán khoa học dùng bộ xử lí vector trở nên  
phổ biến hơn, nhu cầu sử dụng hệ thống giá thành thấp để dùng ở cấp độ phòng  
8
 
ban thay vì ở cấp độ doanh nghiệp mang đến cơ hội cho các nhà kinh doanh máy  
tính mới bước vào thị trường. Nhìn chung, mục tiêu về giá cả của các máy tính  
nhỏ hơn này là 1/10 các siêu máy tính lớn hơn. Đặc trưng của các máy tính này  
sự kết hợp giữa xử lí vector và đa xử cỡ nhỏ (small-scale).  
Sự xuất hiện của máy trạm khoa học với giá còn thấp hơn nữa dựa trên bộ vi  
xử lí cùng với đơn vị dấu chấm động (floating point unit, FPU) hiệu năng cao  
vào thập kỉ 1990 (nhưR8000 của hãng MIPS POWER2 của hãng IBM) đã  
xoá bỏ nhu cầu của dòng máy tính này.  
Máy tính lớn (tiếng Anh: Mainframe) là loại máy tính có kích thước lớn được  
sử dụng chủ yếu bởi các công ty lớn như các ngân hàng, các hãng bảo hiểm... để  
chạy các ứng dụng lớn xử khối lượng lớn dữ liệu như kết quả điều tra dân số,  
thống kê khách hàng và doanh nghiệp, xử lý các giao tác thương mại.  
Hiện nay thị trường máy tính lớn do IBM chiếm 99%, với máy IBM ZSeries  
(hệ điều hành MVS). Z có nghĩa Zero, Zero downtime, có nghĩa là máy có thể  
hoạt động 24/24 giờ mỗi ngày, 7/7 ngày mỗi tuần, và 365/365 ngày không  
ngừng. So với các máy tính loại nhỏ như máy tính cá nhân, máy tính lớn cũng  
như 1 chiếc xe tăng: vững chắc, thể nhận hàng ngàn lệnh cùng 1 lúc. Ví dụ  
máy IBM Z9 (2008) có thể được cài 20 processor và đáp ứng 8000.000.000 (8  
tỉ) lệnh 1 giây.  
một hệ thống máy tính chủ yếu dùng để phục vụ cho một doanh nghiệp  
lớn. dụ các loại máy chủ như máy chủ web, máy chủ in ấn, và máy chủ cơ sở  
dữ liệu. Tính chất chủ yếu để phân biệt một máy chủ doanh nghiệp tính ổn  
định vì ngay cả một sự cố ngắn hạn cũng thể gây thiệt hại hơn cả việc mua  
mới và cài đặt mới hệ thống. Lấy dụ, một hệ thống máy tính trong thị trường  
chứng khoán cấp quốc gia có trục trặc, chỉ cần ngưng hoạt động trong vòng vài  
phút có thể cho thấy việc thay thế toàn bộ hệ thống hiện tại bằng một hệ thống  
đáng tin cậy hơn vẫn giải pháp tốt hơn.  
- Máy trạm (workstation)  
9
Workstation (một số tài liệu gọi máy trạm) được sử dụng theo các nghĩa:  
Workstation là một http://en.wikipedia.org/wiki/Microcomputer được thiết kế  
dành để chạy các ứng dụng kỹ thuật hoặc khoa học.Mục đích chính cho việc tạo  
ra máy tính này là để phục vụ cho 1 người tại 1 thời điểm. thể kết nối với  
nhau qua mạng máy tính và phục vụ nhiều User cùng lúc. Một nhóm các máy  
trạm thể xử lý các công việc của một máy tính lớn Main Frame nếu như được  
kết nối mạng với nhau. Các máy trạm cung cấp hiệu suất cao hơn máy tính để  
bàn, đặc biệt về CPU, đồ họa, bộ nhớ khả năng xử đa nhiệm. được  
tối ưu hóa cho việc xử lý các loại dữ liệu phức tạp như các bản vẽ 3D trong cơ  
khí, các mô phỏng trong thiết kế, vẽ tạo ra các hình ảnh động, các logic toán  
học. Thông thường các bộ phận giao tiếp với máy trạm bao gồm: màn hình với  
độ phân giải cao, bàn phím và chuột. Đôi khi cũng cấp kết nối với nhiều màn  
hình, máy tính bảng đồ họa chuột 3D. Hiện nay, thị trường máy trạm do các  
ông lớn trong ngành máy tính như DELL, HP, SONY,... và bán cũng các bản  
Windows/ Linux chạy trên CPU Intel Xeon/AMD Opteron.  
- Máy tính cá nhân (PC_ personal computer ) là một loại máy vi tính nhỏ  
với giá cả, kích thước sự tương thích của khiến hữu dụng cho từng cá  
nhân.  
+ Máy tính để bàn (Desktop)  
+ Máy tính xách tay (Laptop).  
+ Máy tính bản  
+ Thiết bị kỹ thuật số PDA  
1.2.2.2. Theo kiến trúc  
- Kiến trúc máy tính von-neumann  
Sơ đồ kiến trúc máy tính von-Neumann Kiến trúc máy tính von-Neumann  
được nhà toán học John von-Neumann đưa ra vào năm 1945 trong một báo cáo  
về máy tính EDVAC như minh hoạ trên Hình 1.1 - Kiến trúc máy tính von-  
Neumann nguyên thuỷ.  
10  
Hình 1.1. Kiến trúc máy tính von-Neumann nguyên thuỷ  
Các máy tính hiện đại ngày nay sử dụng kiến trúc máy tính von-Neumann  
cải tiến – còn gọi kiến trúc máy tính von-Neumann hiện đại, như minh hoạ  
trên Hình 1.2.  
Hình 1.2. Kiến trúc máy tính von-Neumann hiện đại  
Các đặc điểm của kiến trúc von-Neumann Kiến trúc von-Neumann dựa trên  
3 khái niệm cơ sở: (1) Lệnh dữ liệu được lưu trữ trong bộ nhớ đọc ghi chia sẻ  
- một bộ nhớ duy nhất được sử dụng để lưu trữ cả lệnh dữ liệu, (2) Bộ nhớ  
được đánh địa chỉ theo vùng, không phụ thuộc vào nội dung nó lưu trữ và (3)  
Các lệnh của một chương trình được thực hiện tuần tự. Quá trình thực hiện lệnh  
được chia thành 3 giai đoạn (stages) chính: (1) CPU đọc (fetch) lệnh từ bộ nhớ,  
(2) CPU giải mã và thực hiện lệnh; nếu lệnh yêu cầu dữ liệu, CPU đọc dữ liệu từ  
bộ nhớ; và (3) CPU ghi kết quả thực hiện lệnh vào bộ nhớ (nếu có).  
- Kiến trúc máy tính Harvard:  
11  
Kiến trúc máy tính Harvard là một kiến trúc tiên tiến như minh hoạ trên  
Hình 6.  
Hình 1.3. Kiến trúc máy tính Harvard  
Kiến trúc máy tính Harvard chia bộ nhớ trong thành hai phần riêng rẽ: Bộ  
nhớ lưu chương trình (Program Memory) và Bộ nhớ lưu dữ liệu (Data Memory).  
Hai hệ thống bus riêng được sử dụng để kết nối CPU với bộ nhớ lưu chương  
trình và bộ nhớ lưu dữ liệu. Mỗi hệ thống bus đều đầy đủ ba thành phần để  
truyền dẫn các tín hiệu địa chỉ, dữ liệu điều khiển. Máy tính dựa trên kiến  
trúc Harvard có khả năng đạt được tốc độ xử lý cao hơn máy tính dựa trên kiến  
trúc von-Neumann do kiến trúc Harvard hỗ trợ hai hệ thống bus độc lập với  
băng thông lớn hơn. Ngoài ra, nhờ có hai hệ thống bus độc lập, hệ thống nhớ  
trong kiến trúc Harvard hỗ trợ nhiều lệnh truy nhập bộ nhớ tại một thời điểm,  
giúp giảm xung đột truy nhập bộ nhớ, đặc biệt khi CPU sử dụng kỹ thuật đường  
ống (pipeline).  
1.3. Ngôn ngữ máy, mức, máy ảo.  
Giữa ngôn ngữ và máy ảo một mối liên hệ quan trọng. Mỗi một máy có  
một ngôn ngữ máy bao gồm tất cả các chỉ thị mà máy có thể thực thi. Một máy  
xác định một ngôn ngữ. Tương tự một ngôn ngữ xác định một máy, máy thực thi  
được tất cả các chương trình viết bằng ngôn ngữ nàỷ. Dĩ nhiên máy được xác  
định bởi một ngôn ngữ nào đó thể quá phức tạp và quá đắt để xây dựng trực  
tiếp bằng các mạch điện tử, tuy vậy ta có thể tưởng tượng được. Một máy với C,  
Pascal hoặc Cobol là ngôn ngữ máy sẽ thật sự phức tạp nhưng chắc chắn thể  
nhận biết được và có lẽ trong tương lai một máy như vậy sẽ được khảo sát để  
dàng đế thiết kế.  
12  
 
Một máy tính có n cấp được xem như n máy ảo khác nhau, mỗi máy ảo có  
một ngôn ngữ máy riêng. Các thuật ngữ “cấp” và “máy ảo” thể dùng thay thế  
cho nhau. Chỉ có các chương trình viết bằng ngôn ngữ L1 mới được thực hiện  
trực tiếp bởi các mạch điện tử mà không cần sự can thiệp của dịch hoặc phiên  
dịch. Các chương trình viết bằng L2, L3, ... , Ln hoặc phải được phiên dịch bởi  
một trình phiên dịch chạy trên cấp thấp hơn hoặc phải được dịch sang ngôn ngữ  
khác tương ứng với cấp thấp hơn.  
Một người viết các chương trình cho máy ảo cấp n không cần biết các trình  
phiên dịch dịch này cấu trúc máy đảm bảo các chương trình này sẽ được thực  
thi bằng cách này hoặc bằng cách khác. Hoặc chúng được thực thi từng chỉ thị  
một bởi một trình phiên dịch, rồi đến lượt trình phiên dịch này được thực thi bởi  
một trình phiên dịch khác, hoặc chứng được thực thi trực tiếp bới các mạch đỉện  
tử. Kết qulà trong cả 2 trường hợp, các chương trình đều dược thực thi.  
Hầu hết các lập trình viên sử dụng máy n cấp chỉ quan tấm đến cấp cao nhất,  
ít người quan tâm đến ngôn ngữ ở cấp thấp nhất. Tuy nhiên, những ai cần tìm  
hiểu cách thức một máy tính làm việc thực sự đều phải nghiên cứu tất cả các  
cấp. Những người quan tâm đến việc thiết kế các máy tính mới hoặc các cấp  
mới cũng phải làm quen với các cấp máy khác ngoài cấp cao nhất. Các khái  
niệm kỹ thuật xây dựng các máy như một chuỗi các cấp và chi tiết của một  
số cấp quan trọng tạo thành chủ đề chính của giáo trình này.  
Máy tính được xem xét như một hệ thống các cấp thứ bậc cho ta một cấu  
trúc hoặc một cơ cấu tổ chức tốt nhằm tìm hiểu cách tổ chức các máy tính. Hơn  
nữa, việc thiết kế một hệ thống máy tính như một chuỗi các cấp giúp ta đảm  
bảo được thành quả sẽ có câu trúc tôt.  
1.4. Các mức máy tính  
Hầu hết các máy tính hiện nay bao gồm 2 hay nhiều cấp. Thông thường các  
máy, có 6 cấp hay hơn như trong hình 1.2.  
13  
 
Hình 1.5. Sáu cấp trên các máy tính hiện nay. Phương pháp hỗ trợ cho mỗi cấp chỉ ra  
phía dưới cấp, cùng với tên của chương trình hỗ trợ trong dấu ngoặc đơn.  
Cấp 0, ở đáy của hình vẽ, thật sphần cứng của máy. Các mạch điện tử  
của cấp này thực thi các chương trình ngôn ngữ máy cửa cấp 1. Để được hoàn  
chỉnh, ta cũng cần bàn đến một cấp khác dưới cấp 0. Cấp này không được vẽ  
trong hình 1.5 do bởi thuộc lĩnh vực kỹ thuật điện không nằm trong phạm vi  
quyến sách này. Ta gọi cấp này là cấp linh kiện ( device level ). Các nhà thiết kế  
tìm thấy ở cấp này các transistor riêng rẽ, chúng là các thành phần cấp thấp  
nhất đối với các nhà thiết kế máy tính ( nhiên có người sẽ hỏi các transistor  
làm việc ra sao, nhưng điều này thuộc lĩnh vực vật chất rắn ). ở cấp thấp nhất  
chúng ta khảo sát, cấp logic số ( digital logic level ), đối tượng được quan tâm là  
cổng logic ( logic gat^ ). Mặc được xây dựng từ các thành phần tương đồng (  
analog component ) như là các transistor, các cổng mô hình hóa một cách chính  
xác các linh kiện sô' ( digital device ■). Mỗi một cổng một hoặc nhiều ngõ  
vào sô' ( các tín hiệu biểu diến bởi 0 hoặc 1 1 và ngõ ra là hàm đơn giản của các  
ngõ vào này. Các cổng được xây dựng tô'i đa từ một nhóm nhỏ các transistor.  
Cấp logic số được khảo sát chi tiết ở chương 3. Dù rằng kiến thức về cấp linh  
14  
kiện kiến thức mang tính chuyên sâu, nhưng với sự ra đời của các bộ vi xử lý  
và các máy vi tính, ngày càng có nhiều người tiếp xúc với cấp logic số. Từ lý do  
này, ta dành trọn một chương để đề cập đến chúng.  
Cấp trên kế tiếp cấp 1, cấp ngôn ngữ máy thật sự. Trái ngược với cấp 0, ở đó  
không có khái niệm một chương trình là một chuỗi các chỉ thị được thực thi, ở  
cấp 1 có một chương trình gọi là vi chương trình ( microprogram ) làm nhiệm vụ  
phiên dịch cẩc chỉ thị của cấp 2. Chúng ta gọi cấp 1 là cấp vi lập trình ( micro  
programming level ). Mặc dù không có 2 máy tính có các cấp vi lập trình hoàn  
toàn như nhau, sự tương đồng của chúng đủ cho phép ta rút ra các đặc trưng cần  
thiết thảo luận về cấp này như thể đây cấp được định nghĩa đầy đủ. Một vài  
máy có nhiều hơn 20 chỉ thị ở câp này và hầu hết là các chỉ thị di chuyên dữ liệu  
từ phần này đến phần khác của máy, hoặc thực hiện một sô' việc kiểm tra đơn  
giản.  
Mỗi một máy cấp 1 có một hoặc nhiều vi chương trình chạy trên chúng.  
Mỗi một vi chương trình xác định hoàn toàn một ngôn ngữ cấp 2 (hoặc một máy  
ảo với ngôn ngữ máy là ngôn ngữ cấp 2 này ). Các máy cấp 2 cũng nhiều  
điểm chung, thậm chí các máy cấp 2 của các hãng khác nhau cũng nhiều  
điểm tương đồng hơn là khác biệt. Trong quyển sách này chúng ta gọi cấp này là  
cấp máy qui ước ( conventional machine level 1 do không có một tên gọi tổng  
quát.  
Các nhà sản xuất máy tính đều cho xuất bản các quyển số tay kèm theo  
các máy tính họ bán ra. Các quyển sổ tay này thường tựa đề sổ tay tham  
khảo ngôn ngữ máy ” ( machine language reference manual ) hoặc các nguyên  
tắc hoạt động của máy tính Western Wombat kiểu 100X “ ( principles of  
operation of the Western Wombat model 100X ) hoặc các tựa đề tương tự. Các  
quyên sổ tay này nói về máy ảo cấp 2, không phải máy thực cấp 1. Tập các chỉ  
thị của máy được tả là các chỉ thị được thực thi bằng cách phiên dịch bởi vi  
chương trình, không phải các chỉ thị được thực thi trực tiếp bởi phần cứng. Nếu  
một nhà sản xuất máy tính cung câp 2 trình phiên dịch cho một máy nhằm phiên  
15  
dịch 2 ngón ngữ máy cấp 2 khác nhau, nhà sản xuất này cần cúng cấp 2 loại số  
tay tham khảo ngôn ngữ máy ứng với 2 trình phiên dịch.  
Cũng cần lưu ý, một sô' máy tính không có cấp vi lập trình.  
Trên các máy này, các chỉ thị cửa cạp máy qui ước được thực thi trực tiếp  
bởi các mạch điện t( cấp 0 ), không có trình phiên dịch của máy cấp 1, kết quả  
cấp 1 ( không phải cấp 2 ) là cấp máy qui ước. Tuy nhiên ta vẫn gọi cấp 2 là cấp  
máy qui ước bất chấp các ngoại lệ này.  
Cấp thứ ba thường cấp hỗn hợp ( hybrid level ). Hầu hết các chỉ thị trong  
ngôn ngữ của cấp máy nàỵ cũng trong ngôn ngữ câp 2 ( không có lý do tại sao  
một chỉ thị xuất hiện ở một cấp này lại không thể hiện diện ở các cấp khác ).  
Thêm vào đó lại một tập các chỉ thị mới, một tổ chức bộ nhớ khác, khả năng  
chạy 2 hay nhiều chương trình song song và nhiều đặc trưng khác. Sự thay đổi  
hiện hữu nhiều giữa các máy cấp 3 hơn giữa các máy cấp 1 hay cấp 2.  
Các tiện nghi mới thêm vào ở cấp 3 được thực thi bởi một trình phiên dịch  
chạy trên cấp 2, gọi hệ điều hành (operating system).  
Nhiều chỉ thị cấp 3 khác, giống như các chỉ thị cấp 2 được thực thi trực  
tiếp bởi vi chương trình, không phải bởi hệ điều hành. Nói cách khác, một số chỉ  
thị cấp 3 được phiên dịch bởi hệ điều hành và một chỉ thị cấp 3 được phiên  
dịch trực tiếp bởi vi chương trình, do vậy ta gọi cấp hỗn hợp. Chúng ta gọi  
cấp này là cấp máy hệ điều hành ( operating system machine level ).  
một bước ngoặt cơ bản giữa cấp 3 và câp 4. Ba câp thâ’p nhất không  
được thiết kế đẻ 'sư dụng trực tiếp bới những ngưòi lập trình thông thường mà  
được dự định chu yếu để chạy các trinh dịch và trình phiên dịch cần hỗ trợ cho  
các cấp cao hơn. Các trình dịch và trình phiên dịch được viết bởi các lập trình  
viên hệ thống ( system programmer ), những người chuyên thiết kê và hiện thực  
các máy ảo mới. Câ'p 4 và các cấp trên nữa được dự định dành cho những người  
lập trình ứng dụng ( applications programmer ) nhằm giải quyết một ván đề nào  
đó.  
16  
Một thay đổi khác xuất hiện ở cấp 4, đó phương pháp hỗ trợ cho các  
cấp cao hơn. Các cấp 2 và 3 luôn luôn được phiên dịch. Các cấp 4, 5 và cao hơn  
thông thường, nhưng không phải luôn luôn, được hỗ trợ bởi dịch.  
Sự khác nhau khác nữa giữa các cap 1, 2 và 3 trên mặt này và các cấp 4, 5 và  
cao hơn trên mặt khác là bản chất của ngôn ngữ được cung cấp. Các ngôn ngữ  
máy các cấp 1, 2 và 3 có dạng số.  
Chương trình trong các ngôn ngữ này bao gồm những chuỗi dài các số,  
chúng tốt với máy nhưng xấu đối với người. Bắt đầu từ cấp 4, ngôn ngữ chứa  
các từ và các chữ viết tắt mang ý nghĩa đối với con người.  
Cấp 4, cấp ngôn ngữ hợp dịch hay cấp hợp ngữ ( assembly language level  
) thật sự dạng tượng trưng cho một trong các ngôn ngữ. Cấp này cung cấp một  
phương pháp viết các chương trình cho các cấp 1, 2 và 3 dưới dạng không gây  
khó chịu như chính các ngôn ngữ máy của chúng. Các chương trình viết bằng  
hợp ngữ trước tiên được dịch sang ngôn ngữ của cấp 1, 2 hoặc 3, sau đó được  
phiên dịch' bởi máy ảo hoặc thực tương ứng. Chương trình thực hiện việc dịch  
gọi là trình dịch hợp ng( assembler ).  
Cấp 5 bao gồm các ngồn ngữ được thiết kế dành cho những người lập  
trình ứng đụng nhằm giải quyêt các vấn đề nào đó. Các ngôn ngữ này gọi là các  
ngón ngữ cấp cao ( high level language ).  
Theo nghĩa đen có vài trăm ngôn ngữ khác nhau. Một vài ngôn ngữ nổi  
tiếng là BASIC, c, COBOL, FORTRAN, LISP, Mođula 2 và PASCAL và các  
ngôn ngữ lập trình hướng đối tượng ( object- oriented programming language )  
sau này như C++, J++, v.v... .  
Các chương trình được viết bằng các ngôn ngữ này thường được dịch  
sang cấp 3 hoặc cấp 4 bằng các trình dịch gọi là trình biên dịch ( compiler ) dù  
rằng đôi khi chúng cũng được phiên dịch.  
Cấp 6 và các cấp trên nữa bao gồm những tập hợp các chương trình được  
thiết kế đê tạo ra các máy dành riêng cho các ứng dụng đặc biệt, Chúng chứa  
một lượng-lớn thông tin về các ứng dụng đó.  
17  
thế tưởng tượng ra các máy ảo dành cho các ứng dụng trong quản lý,  
giáo dục, thiết kê' máy tính, v.v.... Các cấp này là lĩnh vực đang được nghiên  
cứu.  
Tóm lại, vấn đề chính cần nhớ là các máy tính được thiết kế thành một  
chuồi các cấp, mỗi một câ'p được xây dựng trên cấp trước đó. Mỗi cấp biểu thị  
một quan điểm trừu tượng riêng, với các đôi tượng và các thao tác khác nhau.  
Bằng cách thiết kế và phân tích máy tính theo cách này, chúng ta tạm thời bỏ  
qua các chi tiết không thích hợp và do vậy làm cho một vấn đề phức tạp được  
hiểu dễ dàng hơn.  
Tập các loại dữ liệu, các thao tác và các đặc trứng của một cấp được gọi là  
cấu trúc ( architecture ) của câ'p đó. Cấu trúc xử lý các khía cạnh nhìn thấy được  
đốì với người sử dụng cấp đó. Các đặc trưng người lập trình thấy được như có  
bao nhiêu bộ nhớ có giá trị một phạn của cấu trúc. Các khía cạnh thực hiện (  
implemen tation aspect ) như loại công nghệ chip nào được sử dụng để thực hiện  
bộ nhớ không phải một phần của cấu trúc. việc nghiên cứu cách thiết kế các  
phần của một hệ thống máy tính mà người lập trình nhìn thấy được gọi cấu  
trúc máy tính.  
Trong thực tế, cấu trúc máy tính ( computer architecture ) và tố chức máy  
tính ( computer organisation ) về bản chất muốn nói đến cùng một sự việc.  
2. Các thế hệ máy tính  
2.1. Lịch sử máy tính  
Sự phát triển của máy tính được 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ư: bộ xử lý, bộ nhớ, các ngoại vi,..  
.Ta có thể nói máy tính điện tử số trải qua bốn 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 một sự thay đổi cơ bản về  
công nghệ.  
Thế hệ đầu tiên (1946-1957)  
18  
   
Tải về để xem bản đầy đủ
doc 129 trang baolam 10/05/2022 7080
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Cấu trúc máy tính - Phạm Đình Trịnh", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • docgiao_trinh_cau_truc_may_tinh_pham_dinh_trinh.doc