Tải bản đầy đủ (.pdf) (71 trang)

Giáo Trình Kiến Trúc Máy Tính và TBNV

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.54 MB, 71 trang )

MỤC LỤC
Chương I. GIỚI THIỆU CHUNG ........................................................................................... 5
1.1. Tổng quan ................................................................................................................... 5
1.2. Lịch sử phát triển và phân loại ..................................................................................... 7
1.3. Biểu diễn thông tin trên máy tính ............................................................................... 11
1.4. Các thành phần cơ bản trong hệ thống máy tính ......................................................... 20
Chương II. BỘ XỬ LÝ TRUNG TÂM................................................................................. 23
2.1. Tổ chức bộ xử lý trung tâm........................................................................................ 23
2.2. Tổ chức thanh ghi ...................................................................................................... 24
2.3. Đơn vị số học và logic ALU (Arithmetic and logic unit) ............................................ 26
2.4. Đơn vị điều khiển CU (Control Unit) ......................................................................... 27
2.5. Cấu trúc kết nối - BUS .............................................................................................. 28
2.6. Tập lệnh và các Mode địa chỉ .................................................................................... 30
Chương III. HỆ THỐNG NHỚ ............................................................................................ 34
3.1. Tổng quan ................................................................................................................. 34
3.2. Phân cấp hệ thống nhớ ............................................................................................... 35
3.3. Bộ nhớ bán dẫn ......................................................................................................... 35
3.4. Cache Memory .......................................................................................................... 38
3.5. Kỹ thuật giải mã địa chỉ ............................................................................................. 43
Chương IV: HỆ THỐNG VÀO RA ...................................................................................... 45
4.1. Giới thiệu chung ........................................................................................................ 45
4.2. Ghép nối máy tính với thiết bị ngoại vi ...................................................................... 46
4.3. Các phương pháp điều khiển vào ra ........................................................................... 48
Chương V. THIẾT BỊ NHẬP DỮ LIỆU .............................................................................. 53
5.1. Giới thiệu chung ........................................................................................................ 53
5.2. Bàn phím ................................................................................................................... 53
5.3. Chuột ........................................................................................................................ 55
Chương VI. THIẾT BỊ XUẤT DỮ LIỆU ............................................................................. 56
6.1. Những khái niệm cơ bản ............................................................................................ 56
6.2. Màn hình LCD .......................................................................................................... 57
6.3. Máy in Laser ............................................................................................................. 61


Chương VII. THIẾT BỊ LƯU TRỮ NGOÀI ........................................................................ 63
7.1. Giới thiệu chung ........................................................................................................ 63
7.2. Đĩa từ (Magetic) ........................................................................................................ 63
7.3. Đĩa Quang (Optical Disk) .......................................................................................... 66
7.4. Thẻ nhớ: .................................................................................................................... 70

-0-


YÊU CẦU VÀ NỘI DUNG CHI TIẾT
Tên học phần: Kiến trúc máy tính và thiết bị ngoại vi
a. Số tín chỉ:

3 TC

BTL

Mã HP: 17302

ĐAMH

b. Đơn vị giảng dạy: Bộ môn Kỹ thuật Máy tính
c. Phân bổ thời gian:
- Tổng số (TS):

45 tiết.

- Lý thuyết (LT): 42 tiết.

- Thực hành (TH):


0 tiết.

- Bài tập (BT):

0 tiết.

- Hướng dẫn BTL/ĐAMH (HD):

0 tiết.

- Kiểm tra (KT):

3 tiết.

d. Điều kiện đăng ký học phần:
Học phần học trước: Tin học đại cương
e. Mục đích, yêu cầu của học phần:
Kiến thức:
-

Các thuật ngữ khoa học cơ bản trong cấu trúc, chức năng của hệ thống máy tính

-

Thông tin, phương pháp biểu diễn thông tin trong máy tính

-

Tổng quan về hệ thống máy tính


-

Kiến trúc tập lệnh

-

Bộ xử lí trung tâm

-

Hệ thống nhớ

-

Hệ thống vào/ra

-

Các thiết bị ngoại vi

Kĩ năng:
- Nhận diện các thành phần của một hệ thống máy tính, cấu trúc và chức năng của
chúng từ đó nhận diện các thành phần của một hệ thống có sẵn
- Có khả năng lắp ráp các thiết bị xây dựng được một hệ thống phần cứng và cấu hình
hệ thống cho phép máy tính hoạt động tối ưu
- Có thể cài đặt được hệ điều hành và các phần mềm ứng dụng, tối ưu hóa hoạt động
của ổ đĩa
Thái độ nghề nghiệp:
- Có thể đánh giá được hiệu năng của các họ máy tính, khai thác và sử dụng hiệu quả

các loại máy tính hiện hành và có khả năng tiếp cận để phát triển các hệ máy tính
nhúng phục vụ các mục đích chuyên dụng
f. Mô tả nội dung học phần:
Cung cấp cho người học các kiến thức cơ bản về các phương pháp biểu diễn thông tin
trong máy tính, kiến trúc máy tính: kiến trúc tập lệnh, tổ chức của máy tính cũng như những
vấn đề cơ bản trong thiết kế một hệ thống máy tính. Hệ thống vào ra, các thiết bị ngoại vi,
chức năng và cấu trúc trong của chúng cũng như quá trình ghép nối các thiết bị này với máy
tính điện tử.
g. Người biên soạn: Nguyễn Trọng Đức - Bộ môn Truyền thông & Mạng máy tính.
h. Nội dung chi tiết học phần:
-1-


TÊN CHƢƠNG MỤC
Chƣơng 1. Giới thiệu chung

PHÂN PHỐI SỐ TIẾT
TS

LT

10

10

1.1. Tổng quan

1

1.2. Lịch sử phát triển và phân loại


2

1.3. Biểu diễn thông tin trong máy tính

6

1.4. Các thành phần cơ bản trong hệ thống máy tính

1

BT

TH

HD

KT

Nội dung tự học (20t):
- Lịch sử phát triển của máy tính
- Sự phát triển của họ VXL Intel x86
- Sự phát triển của thiết bị ngoại vi
- Sự phát triển của các phần mềm máy tính
- Hiệu năng của hệ thống
- Các kiến trúc máy tính tiên tiến
- Các bài tập trong mục 1.2
Chƣơng 2. Bộ xử lý trung tâm

12


11

2.1. Tổ chức của bộ xử lý trung tâm

1

2.2. Tổ chức thanh ghi

1

2.3. Đơn vị số học và logic

2

2.4. Đơn vị điều khiển

1

1.5

2.5. Cấu trúc kết nối

1

2.6. Tập lệnh và các Mode địa chỉ

4.5

Nội dung tự học (22t):

- Các cổng logic cơ bản
- Tốc độ của bộ xử lí
- Các kĩ thuật tiên tiến: pipeline, scalar
- Cấu trúc bộ xử lý tiên tiến
- Các kiến trúc song song mức lệnh
- Bộ xử lý đa luồng và đa lõi
- Các kiến trúc tập lệnh tiên tiến
Chƣơng 3. Hệ thống nhớ

8

8

3.1. Tổng quan

0.5

3.2. Phân cấp hệ thống nhớ

0.5

3.3. Bộ nhớ bán dẫn

1.5

3.4. Cache Memory

2.5

3.5. Quản lý bộ nhớ


1

3.6. Kỹ thuật giải mã địa chỉ

2

-2-


TÊN CHƢƠNG MỤC

PHÂN PHỐI SỐ TIẾT
TS

LT

6

5

BT

TH

HD

KT

Nội dung tự học (16t):

- Mạch tổ hợp, mạch dãy
- Thiết kế các bộ đếm
- Kĩ thuật tăng độ dài từ nhớ
- Các kĩ thuật bộ nhớ tiên tiến
- Bài tập mục 3.4 và 3.6
Chƣơng 4 Hệ thống v o r
4.1. Giới thiệu chung

0.5

4.2. Ghép nối máy tính với thiết bị ngoại vi

1.5

4.3. Các phương pháp điều khiển vào ra

1

3

Nội dung tự học (8t):
- Lập trình ghép nối vào/ra
- Mạch điều khiển ưu tiên ngắt
Chƣơng 5: Thiết ị nhập ữ iệu

2

5.1. Giới thiệu chung

2

0.5

5.2. Bàn phím

1

5.3. Chuột

0.5

Nội dung tự học (6t):
- Các thiết bị nhập liệu tiên tiến
Chƣơng VI Thiết ị uất ữ iệu

4

3

6.1. Những khái niệm cơ bản

0.5

6.2. Màn hình

1.5

6.3. Máy in

1


1

Nội dung tự học (6t):
- Các thiết bị xuất dữ liệu tiên tiến
Chƣơng VII Thiết ị ƣu trữ ngoài

3

3

7.1. Giới thiệu chung

0.5

7.2. Đĩa từ (Magetic)

1,5

7.3. Đĩa Quang (Optical Disk)

0.5

7.4. Thẻ nhớ

0.5

Nội dung tự học (6t):
- Các chuẩn đĩa từ
- Kĩ thuật RAID
- Các thiết bị lưu trữ tiên tiến

i. Mô tả cách đánh giá học phần:
- Thời gian học tập trên lớp phải ≥75% số tiết quy định của học phần.
-3-


- Các điểm thành phần Xi ≥ 4, bao gồm:


X2: trung bình cộng của bài kiểm tra (03 bài).



Điểm quá trình X: bằng điểm của X2

- Thi kết thúc học phần (điểm Y): Thi trắc nghiệm.
- Điểm đánh giá học phần: Z = 0.5X + 0.5Y
- Thang điểm: Thang điểm chữ A+, A, B+, B, C+, C, D+, D, F.
k. Giáo trình:
1. Nguyễn Đình Việt, Giáo trình kiến trúc máy tính, ĐHQG Hà Nội, 2009.
l. Tài liệu tham khảo:
1. Nguyễn Kim Khánh, Giáo trình kiến trúc máy tính, ĐHBK Hà Nội.
2. Văn thế Minh, Kỹ thuật vi xử lý, NXB giáo dục 1997.
3. Hồ Khánh Lâm, Kỹ thuật vi xử lý, Nhà xuất bản Bưu điện, 2005.
4. William Stalling, Computer Organization and Architecture 5th, Prentice Hall, 2000.
5. Hennesy J.L. and Patterson D.A., Computer Architecture. A Quantitative Approach,
Morgan Kaufmann, 2003.
m. Ngày phê duyệt:

/


/

n. Cấp phê duyệt:
Trƣởng Khoa

Trƣởng Bộ môn

Ngƣời biên soạn

TS. Lê Quốc Định

ThS. Ngô Quốc Vinh

TS. Nguyễn Trọng Đức

o. Tiến trình cập nhật Đề cương:
Cập nhật lần 1: ngày

/

/

Người cập nhật

Nội dung: Rà soát theo kế hoạch Nhà trường (từ T4/2014) gồm:
- Chỉnh sửa, làm rõ các Mục e, i theo các mục tiêu đổi mới căn
bản.
- Mục h: bổ sung Nội dung tự học cuối mỗi chương mục, chuyển Trưởng Bộ môn
một số nội dung giảng dạy sang phần tự học.
- Bổ sung các mục m, n, o


-4-


Chƣơng I. GIỚI THIỆU CHUNG
Kiến trúc máy tính (Computer Architecture) là một khái niệm trừu tượng của một hệ
thống tính toán dưới quan điể của người lập trình hoặc người viết chương trình dịch.
Nói cách khác, kiến trúc máy tính được xem xét theo khía cạnh mà người lập trình có
thể can thiệp vào mọi mức đặc quyền, bao gồm các thanh ghi, ô nhớ các ngắt ... có thể được
thâm nhập thông qua các lệnh.
Kiến trúc máy tính = Tổ chức máy tính + kiến trúc tập ệnh
1.1. Tổng qu n
1.1.1. Khái niệm thông tin
- Thông tin: sự cảm hiểu con người về thế giới xung quanh
Khái niệm về thông tin gắn liền với sự hiểu biết một trạng thái cho sẵn trong nhiều trạng
thái có thể có vào một thời điểm cho trước.

Trong hình trên, chúng ta quy ước có hai trạng thái có ý nghĩa: trạng thái thấp khi hiệu
điện thế thấp hơn VL và trạng thái cao khi hiệu điện thế lớn hơn VH. Để có thông tin, ta phải
xác định thời điểm quan sát trạng thái của tín hiệu. Thí dụ, tại thời điểm t1 thì tín hiệu ở trạng
thái thấp và tại thời điểm t2 thì tín hiệu ở trạng thái cao.
- Dữ liệu: dạng biểu diễn thông tin (chữ viết, hình ảnh, cử chỉ, lời nói...). Đặc biệt trong
máy tính dữ liệu được số hoá để có khả năng lưu trữ, xử lý, biến đổi, truyền gửi...
- Thông tin khi truyền: theo các dạng năng lượng khác nhau: âm, điện, sóng quang, sóng
điện từ...
- Vật mang: môi trường dùng để mang thông tin (dạng năng lượng có khả năng lưu trữ,
truyền gửi...)
- Tín hiệu: vật mang đã chứa thông tin trong nó ~ một hàm đơn trị biến thiên theo thời
gian hay tần số.
- Tín hiệu liên tục: tín hiệu biến thiên liên tục theo thời gian và có biên độ biến thiên

liên tục
- Tín hiệu rời rạc: tín hiệu có biến độc lập rời rạc, ta có thể thu tín hiệu rời rạc bằng cách
lấy mẫu rời rạc từ tín hiệu liên tục (tín hiệu lấy mẫu).
- Tín hiệu lượng tử: Tín hiệu có biên độ rời rạc theo các mức lượng tử.
- Tín hiệu số: Tín hiệu rời rạc hoá cả về biên độ, tần số lẫn thời gian.
1.1.2. Lượng thông tin và sự mã hoá thông tin
Thông tin được đo lường bằng đơn vị thông tin mà ta gọi là bit (Binary digit). Lượng
thông tin được định nghĩa bởi công thức:
-5-


I = Log2(N)
Trong đó:
I: là lượng thông tin tính bằng bit
N: là số trạng thái có thể có
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à một bit. Một từ n bit có thể tượng trưng một
trạng thái trong tổng số 2n trạng thái mà từ đó có thể tượng trưng. Vậy một từ n bit
tương ứng với một lượng thông tin n bit.

Trạng thái
0
1
2
3
4
5
6
7


X2
0
0
0
0
1
1
1
1

X1
0
0
1
1
0
0
1
1

X0
0
1
0
1
0
1
0
1


Tám trạng thái khác nhau ứng với 3 số nhị phân
1.1.3. Máy tính điện tử
Máy tính (computer) là một thiết bị có khả năng thao tác (lưu trữ, xử lý) trên dữ liệu
(thông tin) theo một cách phức tạp và lập trình được. Việc tính toán của nó thực hiện theo một
chương trình - một dãy các câu lệnh. Dữ liệu có thể được biểu diễn dưới rất nhiều hình thức
của thông tin như: số, ký tự, hình ảnh, âm thanh, … Trước khi phát minh ra máy tính, thuật
ngữ computer thường được dùng để ám chỉ một người chuyên làm nhiệm vụ tính toán (human
computer)
Xử lý thông tin theo chương
trình được lưu trong bộ nhớ
Nhận thông tin vào

Đưa thông tin ra

 Phần mềm (software):
Bao gồm các thuật toán và các biểu diễn cho máy tính của chúng ta, đó chính là các
chương trình. Chương trình có thể được biểu diễn (lưu trữ) trên bìa đục lỗ, băng từ, đĩa từ, …
hay các môi trường khác, tuy nhiên cái cơ bản nhất của phần mềm chính là tập hợp các câu
lệnh (chỉ thị) tạo nên chương trình chứ không phải là môi trường vật lý được sử dụng để ghi
(lưu trữ) chương trình.
Chương trình (program): chương trình là dãy các câu lệnh nằm trong bộ nhớ, nhằm mục đích
hướng dẫn máy tính thực hiện một công việc cụ thể nào đấy. Máy tính thực hiện theo chương
trình.
Hệ điều hành:..
Ngôn ngữ lập trình:..

-6-


Lệnh máy: Các mạch điện tử của máy tính có thể hiểu và thực hiện trực tiếp được một tập hợp

hữu hạn các lệnh rất đơn giản thường được gọi là chỉ thị (instruction) máy hay lệnh máy,
chẳng hạn: Cộng hai số với nhau; Kiểm tra xem một số có bằng không hay không; Vận
chuyển một nhóm dữ liệu từ vùng này của bộ nhớ sang một vùng khác.
Ngôn ngữ máy: Tập các chỉ thị máy tạo nên ngôn ngữ để giao tiếp với máy tính được gọi là
ngôn ngữ máy (machine language).
 Phần cứng (Hardware):
(Các) Chương trình được viết bằng ngôn ngữ máy ở mức 1 có thể được thi hành trực
tiếp bởi các mạch điện mà không cần một trình thông dịch hoặc trình biên dịch trung gian nào
(cả). Các mạch điện như vậy cùng với bộ nhớ và các thiết bị ngoại vi (vào/ra) tạo thành phần
cứng máy của tính (hardware). Phần cứng bao gốm các đối tượng hữu hình như các vi mạch
(IC), các bảng (board) mạch in, cáp nối, nguồn điện, bộ nhớ, máy đọc bìa, máy in, terminal,
… chứ không phải là các ý tưởng, các thuật toán hay các câu lệnh (chỉ thị).
 Phần dẻo (Firmware):
Phần sụn (hay còn gọi là phần nhão) là dạng trung gian giữa phần cứng và phần mềm,
nó là phần mềm được nhúng vào các mạch điện tử trong quá trình chế tạo ra các mạch điện tử
này. Firmware được sử dụng khi các chương trình hiếm khi hoặc không bao giờ cần thay đổi.
Một ví dụ trực quan cho phần sụn này chính là ROM BIOS chứa các chương trình khởi
động, các dịch vụ vào/ra cơ sở, dữ liệu về cấu hình của hệ thống, … mà chúng đã tối ưu, hoàn
chỉnh mà không cần phải thay đổi nữa (ít thay đổi). Hay các phần mềm trong đồ chơi hoặc
trong các dụng cụ máy móc, điện thoại di động, …
Firmware cũng được sử dụng khi các chương trình không được phép mất đi khi mất
điện (nguồn nuôi). Trong nhiều máy tính các vi chương trình thuộc Firmware (chẳng hạn như
các chương chình con phục vụ ngắt của BIOS).
1.2. Lịch sử phát triển v phân oại
1.2.1. Lịch sử phát triển
Nhiều thế hệ trôi qua con người đã thực hiện các phép toán với các con số chủ yếu bằng
tay hay bằng các công cụ tính thô sơ (bảng tính, thước tính,
máy tính cơ khí ...).
Nhà khoa học Pháp Blase Pascal (1623-1662) là người
đầu tiên chế tạo được một chiếc máy tính hoạt động được

(1642). Đây Hoàn toàn là một chiếc máy tính cơ khí, sử dụng
các bánh răng, năng lượng cung cấp cho máy là sức người quay tay. Máy tính của Pascal chỉ làm được phép tính cộng
và trừ.
Ba mươi năm sau nhà bác học Đức Baron Gottfried von
Leibniz (1646-1716) đã chế tạo thành công một chiếc máy tính cơ
khí khác, ngoài hai phép tính cộng và trừ nó còn có thể thực hiện
phép nhân và chia (sau Blase Pascal 30 năm).
Sau đó, giáo sư Charles Babbage đã thiết kế và xây dựng máy
sai phân (difference engine). Nó đuợc thiết kế để chạy một giải thuật
đơn: phương pháp sai phân hữu hạn sử dụng các đa thức và cũng chỉ
thực hiện các phép toán cộng và trừ. Nam 1834, Babbage thiết kế và
xây dựng máy phân tích (analytical engine). Máy phân tích có 4 thành
phần: bộ lưu trữ (bộ nhớ), bộ tính toán, thành phần nhập (đầu đọc thẻ
đục lỗ) và thành phần xuất (in và đục lỗ). Bộ tính toán có thể nhận các
toán hạng từ bộ lưu trữ, thực hiện phép toán cộng, trừ, nhân hay chia
chúng và trả kết quả về bộ lưu trữ.

-7-


Phát triển tiếp theo của máy phân tích là máy đa năng. Máy đọc lệnh từ các thẻ đục lỗ
và thực thi chúng. Bằng cách đục lỗ một chương trình khác trên thẻ nhập, máy phân tích có
khả năng thực hiện các tính toán khác. Lập trình viên máy tính đầu tiên là Ada Lovelace đã
tạo ra phần mềm cho máy phân tích.
Vào những năm 1930, Konrad Zuse xây dựng một chuỗi các máy tính toán tự động
bằng cách sử dụng các relay từ. Sau dó, John Atanasoff và George Stibbitz đã thiết kế các
máy tính (calculator). Máy của Atanasoff sử dụng số nhị phân và có các tụ điện làm cho bộ
nhớ đuợc làm tươi theo chu kỳ. Tuy nhiên, máy này bị thất bại do công nghệ phần cứng
không tương xứng với ý tuởng thiết kế.
Năm 1943, John Mauchley và các học trò của ông đã chế tạo ra chiếc máy tính điện tử

đầu tiên ở Mỹ - chiếc máy tính được đặt tên là ENIAC (Electronic Numerial Itergrator And
Calculator). Nó gồm 18.000 đèn điện tử, 1500 rơ le, nặng 30 tấn, tiêu thụ công suất điện
140KW. Chiếc máy này được xây dựng với mục đích phục vụ quân đội trong chiến tranh thế
giới lần thứ 2 nhưng mãi đến năm 1946 nó mới hoàn thành.
Cho đến ngày nay máy tính đã có những sự phát triển vượt bậc, ứng dụng trong hầu hết
các hoạt động của xã hội với rất nhiều chủng loại thế hệ tuỳ theo công việc. Tuy nhiên kể từ
đó đến nay dựa vào công nghệ chế tạo, có thể phân máy tính ra thành các thế hệ sau:
Thế hệ 1: (1946-1959): Bóng đèn điện tử
 Về kỹ thuật: Sử dụng đèn điện tử chân không, độ tin cậy thấp, tổn hao năng lượng.
Tốc độ tính toán từ vài nghìn đến vài trăm nghìn phép tính/giây.
 Về phần mềm: Chủ yếu dùng ngôn ngữ máy để lập trình.
 Về ứng dụng: Mục đích nghiên cứu khoa học kỹ thuật.
Thế hệ 2: (1959-1964): Transistor
 Về kỹ thuật: Sử dụng linh kiện bán dẫn (chủ yếu là transistor). Bộ nhớ được làm
bằng xuyến từ.
 Về phần mềm: Bắt đầu sử dụng một số ngôn ngữ lập trình bậc cao: Fortran, Algol,
Cobol, ... Xuất hiện các hệ điều hành tuần tự.
 Về ứng dụng: Tham gia giải các bài toán kinh tế xã hội.
Thế hệ 3 (1964-1974): IC
 Về kỹ thuật: Sử dụng các mạch tích hợp số (IC), các thiết bị ngoại vi được cải tiến,
đĩa từ được sử dụng rộng rãi. Tốc độ tính toán đạt vài triệu phép toán trên giây; Bộ
nhớ được xây dựng từ chất bán dẫn, có dung lượng đạt tới vài MB (Megabytes).
 Về phần mềm: Xuất hiện nhiều hệ điều hành khác nhau. Xử lí song song. Phần
mềm đa dạng, chất lượng cao, cho phép khai thác máy tính theo nhiều chế độ khác
nhau.
 Về ứng dụng: Tham gia trong nhiều lĩnh vực của xã hội.
Thế hệ thứ 4 (1974-199?):VLSI
 Về kỹ thuật: Sử dụng mạch tích hợp cỡ lớn (VLSI - Very large scale integration),
thiết kế các cấu trúc đa xử lý. Tốc độ đạt tới hơn hàng chục triệu phép tính /giây,
Các hệ thống bộ nhớ bán dẫn, bộ nhớ ảo, bộ nhớ cache được sử dụng rộng rãi. Áp

dụng các kỹ thuật nhằm cải tiến tốc độ vi xử lý: vô hướng, ống dẫn, xử lý song
song… (Trong tài liệu này chúng ta chủ yếu đề cập đến các vấn đề liên quan đến
cấu trúc máy vi tính tương thích IBM – Máy tính cá nhân PC)
 Về ứng dụng : Máy tính đã được áp dụng trong hầu hết các lĩnh vực của xã hội.
Thế hệ thứ 5:

-8-


Theo đề án của người Nhật chiếc máy tính điện tử thế hệ thứ 5 (người máy Asimo –
2004) có cấu trúc hoàn toàn mới, bao gồm 4 khối cơ bản. Một trong các khối cơ bản là
máy tính điện tử có cấu trúc như hiện nay và liên hệ trực tiếp với người sử dụng thông
qua khối giao tiếp tri thức gồm 3 khối con: bộ xử lý giao tiếp, cơ sở tri thức và khối lập
trình.
1.2.2. Phân loại máy tính
Máy tính (computer) là một khái niệm tương đối rộng, tuỳ theo cấu trúc, chức năng,
hình dáng... mà có thể phân ra nhiều loại khác nhau. Về căn bản máy tính được phân làm các
loại chính sau:
a. Phân loại theo khả năng
Siêu máy tính (Super Computer)
Một siêu máy tính là một máy tính vượt trội trong khả năng và 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 trăm 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).
Đây 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 và đượ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ý).

Siêu máy tính IBM Blue Gene/L nhanh nhất thế giới - 2006.

Máy tính lớn (mainframe computer):
Là loại máy tính đa dụng, máy tính cỡ lớn, thường là các máy tính chủ trong các hệ
thống mạng của công ty hoặc nhà máy Dùng kỹ thuật xử lý song song và có hệ thống vào ra
mạnh.. có khả năng hỗ trợ cho hàng trăm đến hàng ngàn người sử dụng. Có khả năng giải
những bài toán lớn tốc độ tính toán nhanh. Thường được sử dụng cho các ứng dụng quản lý
cũng như các tính toán khoa học (quân sự, ngân hàng, khí tượng). 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 con (mini computer):

-9-


Là một dạng thu nhỏ của máy tính lớn, có thể thực hiện được các ứng dụng mà máy tính
cỡ lớn thực hiện. Nó có khả năng hỗ trợ hàng chục đến hàng trăm người làm việc.
Minicomputer được sử dụng rộng rãi trong các ứng dụng thời gian thực, ví dụ trong điều
khiển hàng không, trong tự động hoá sản xuất.
Máy vi tính (MicroComputer):
Còn gọi là PC (personal computer), là những máy tính nhỏ, sử dụng bộ vi xử lý (họ
Intel, Motorola) làm cốt lõi. Đặc điểm chung về công nghệ của họ này mức độ tổ hợp lớn
VLSI, dùng công nghệ CMOS (complementary metal oxide silicon) để chế tạo các mạch
logic. Thường dùng cho một người, có thể dùng độc lập hoặc dùng trong mạng máy tính.
Tốc độ phát triển các vi xử lý 32 bit và 64 bit hiện đại làm khoảng cách giữa máy tính
lớn và máy vi tính ngày càng thu hẹp.
Các loại máy tính cá nhân: Để đảm bảo tính tương thích, cấu trúc phần cứng bên trong
các máy vi tính cá nhân về cơ bản là giống nhau. Vì thế chúng chỉ được phân loại theo hình
dạng vật lý.

 Loại để bàn(desktop), loại để bàn thu nhỏ (desktop slim-line)
 Loại đặt đứng (tower), mini-tower
 Loại xách tay (notebook)
 Loại bỏ túi (palmtop, palmpilot)
b. Phân loại theo nguyên lý
 Máy tính cơ khí.
 Máy tính tương tự
 Máy tính số
c. Phân loại theo kiến trúc
Kiến trúc tuần tự (kiến trúc VonNewman cổ điển)
Chức năng của máy tính: xử lí thông tin theo lệnh, để thực thi các lệnh, yêu cầu máy
tính phải có:
Đơn vị điều khiển: giải mã lệnh và tạo ra tín hiệu điều khiển
Đơn vị thực hiện: thực hiện các phép toán số học và logic
Đơn vị lưu trữ: lưu trữ dữ liệu khi xử lí

Với kiến trúc tuần tự, bộ xử lí sẽ bao gồm 1 đơn vị điều khiển và 1 đơn vi thực hiện
SISD(Single Instruction Stream-Single Data Stream), như vậy:
 Thực hiện lần lượt từng lệnh một
 Tốc độ chậm
Đây là mô hình cơ bản cho kiến trúc VonNewman cổ điển.
Kiến trúc song song
+ SIMD (Single Instruction Stream-Multiple Data Stream)
Đặc điểm:
o Có một đơn vị điều khiển, n phần tử xử lý
-10-


o Đơn vị điều khiển: điều khiển đồng thời tất cả các phần tử tại cùng một thời
điểm các phần tử xử lý thực hiện cùng một thao tác trên các tập dữ liệu khác

nhau.

+ MIMD (Multiple Instruction Stream-Multiple Data Stream)
Đặc điểm:
o Máy gồm hai hoặc nhiều bộ vi xử lý tương tự về khả năng, có thể thực hiện

những phép toán khác nhau tren các DL khác nhau.
o Tất cả các CPU cùng chia xẻ một bộ nhớ chung. Một số bộ nhớ cục bộ cũng có
thể được dùng.
o Tất cả CPU cùng xử dụng chung các thiết bị vào ra, có thể dùng chung một số
kênh hoặc dùng các kênh khác nhau dẫn đến cùng một thiết bị.
o Hệ thống được điều khiển bởi hệ thống hoạt động tích hợp .Nó cung cấp sự ảnh
hưởng lẫn nhau giữa CPU và các chương trình chạy trên chúng ở task, file,các
thành phần dữ liệu...
+ MISD (Multiple Instruction Stream-Single Data Stream)
Đặc điểm:
o Có nhiều đơn vị điều khiển
o Thực hiện lệnh theo các công đoạn, tại một thời điểm mỗi đơn vị điều khiển xử
lý một công đoạn như vậy có thể tiết kiệm được số chu kỳ máy cần để xử lý
lệnh.
1.3. Biểu iễn thông tin trên máy tính
1.3.1. Hệ đếm và cơ số đếm
a. Hệ đếm bất kỳ
Bất kỳ một hệ đếm nào đều biểu diễn một số nguyên theo nguyên tắc sau:
n 1

N = an-1...a0 = a0.s0 + a1.s1 + ... + an-1.sn-1 =

 ai  s i


(1.1)

i 0

Trong đó N là một số nguyên có n chữ số. Chữ số a i tại vị trí i (i=0...n-1) được gọi là trị
số (hay còn gọi là trọng số). Giá trị s là cơ số của hệ đếm . Hệ đếm được đặt tên theo giá trị cơ
số s. Chẳng hạn, với s=2 ta có hệ đếm cơ số 2, với s=10 ta có hệ đếm cơ số 10 và với s=16 ta

-11-


có hệ đếm 16. Giá trị s cũng xác định số ký tự cần dùng để biểu diễn trị số. Chẳng hạn với s=2
hệ đếm sẽ cần hai ký tự để biểu diễn, vì thế ta có khái niệm hệ nhị phân(chia ra làm hai).
Tương tự như vậy, hệ đếm 10 và 16 còn được gọi là hệ thập phân và hệ thập lục phân.
b. Hệ đếm thập phân
Là hệ đếm quen thuộc nhất của nhân loại. Có lẽ hệ đếm này bắt nguồn từ việc người
tiền sử dùng mười đầu ngón tay để đếm các đồ vật xung quanh. Ngày nay toàn thế giới thống
nhất sử dụng những ký tự số Ả Rập để biểu diễn hệ thập phân. Các ký tự số đó là: 0, 1, 2, 3, 4,
5, 6, 7, 8, 9. Việc phát minh ra số 0 mới có khả năng biểu diễn số nguyên theo đúng nguyên
tắc đã nêu trong phương trình (1.1).
Ngoài ra như chúng ta đã biết một số nền văn minh khác cũng phát minh ra hệ đếm của
mình như Trung Quốc, La Mã cổ.... Tuy nhiên vì không có ký tự số 0 nên các hệ đếm này đều
cần nhiều hơn 10 ký tự để biểu diễn số nguyên.
Ví dụ biểu diễn số nguyên:
N = 1547d = 1.103 + 5.102 + 3.101 + 7.100
c. Hệ đếm nhị phân
Được hình thành trên cơ sở đại số lôgic Boole, xuất hiên từ cuối thế kỷ 19. Hệ đếm này
và các môn toán liên quan đến nó thực sự phát huy được sức mạnh khi có mạch điện hai trạng
thái. Với hai con số 0, 1 có thể biểu diễn một số nguyên bất kỳ. Mỗi ký tự (hay mỗi trị số) của
hệ nhị phân được gọi là một bit (Binary Digit). Đối với máy tính điện tử các bit được biểu

diễn bằng một hiệu điện thế tương ứng: mức 0 (0V-1 V), mức 1 (2v-5v).
Để giản tiện trong việc sử dụng số nhị phân, người ta còn đặt nhiều bội số của hệ nhị
phân như sau:
4 bit là một nibble.
8 bit là một byte.
16 bit là một từ (word).
32 bit là một từ kép (double word)
210 bit là một kilobit (Kbit).
220 bit là một Megabit (Mbit).
230 bit là một Gigabit (Gbit).
Ví dụ biểu diễn một số nguyên:
N = 1011b = 1.23 + 0.22 + 1.21 + 1.20 = 8 + 0 + 2 + 1 = 11d
Phép toán nhị phân: +, -, *. /, SHL, SHR, AND, OR, NOT, XOR
d. Hệ thập lục phân (hexa)
Xuất hiện như một cách biểu diễn giản tiện trong công nghệ tin học. Vì một số nhị phân
quá dài và bất tiện khi viết và tính toán. 4 chữ số nhị phân được gộp thành một chữ số thập lục
phân. Như vậy có số của hệ thập lục phân là s = 16. Điều này có nghĩa là cần có 16 ký tự khác
nhau để biểu diễn hệ thập lục phân. Các ký tự đó là: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.
Hệ
thập phân
0
1
2
3
4
5
6
7

Hệ

nhị phân
0000
0001
0010
0011
0100
0101
0110
0111

Hệ
thập lục phân
0
1
2
3
4
5
6
7

Hệ
thập phân
8
9
10
11
12
13
14

15

Hệ
nhị phân
1000
1001
1010
1011
1100
1101
1110
1111

Hệ
thập lục phân
8
9
A
B
C
D
E
F
-12-


Ví dụ biểu diễn một số nguyên:
N = 2BC1h = 2.163 + 11.162 + 12.161 + 1.160 = 11201d.
1.3.2. Chuyển đổi giữa các hệ cơ số
a. Đổi số thập phân ra số nhị phân (hay thập lục phân)

Để đổi số số thập phân ra số nhị phân hay thập lục phân, ta chỉ cần chia số thập phân
cho cơ số của hệ (2 hoặc 16).Số dư là trị số, thương số được chia tiếp để tính trị số tiếp theo.
Trong hệ nhị phân, trị số đầu tiên (ngoài cùng bên phải) được gọi là LSB (Least Significant
Bit) và trị số cuối cùng (ngoài cùng bên trái) được gọi là MSB (Most Signifcant Bit).
Ví dụ1: Đổi số thập phân 113d
Nhị phân
Thập lục phân
113/2=56 dư 1 LSB
113/16=7 dư 1
56/2=28 dư 0
7/16=0 dư 7
28/2=14 dư 0
14/2=7 dư 0
7/2=3 dư 1
3/2=1 dư 1MSB
Kết quả = 113d = 110001b = 71h
Ví dụ 2: Đổi số thập phân 0.625d thành số nhị phân:
0.625*2 = 1.250 nhớ 1 MSB
0.250*2 = 0.500 nhớ 0
0.500*2 = 1.000 nhớ 1 LSB
Kết quả : 0.625d = 0.101b
b. Đổi số từ nhị phân sang thập lục phân và ngược lại
Để đổi một số nhị phân thành số thập lục phân tương đương thì chỉ cần chia số nhị phân
thành từng nhóm gồm 4 bit nhị phân tính từ vị trí ký tự nhị phân đầu tiên bên phải, sau đó
thay thế lần lượt tùng nhóm 4 bít nhị phân đã chia bởi số thập lục phân tương ứng (Tra bảng
giá trị tương đương giữa các hệ đếm)
Ví dụ: Đổi số nhị phân 1111101000010000b thành thập lục phân.
1111 1010 0001 0000
F
A

1
0 Kết quả số thập lục phân: FA10h
Để đổi các số thập lục phân thành nhị phân, chỉ cần thay thế một cách đơn giản từng
con số thập lục phân bằng bốn bit nhị phân tương đương của nó (Tra bảng giá trị tương đương
giữa các hệ đếm).
Ví dụ: Đổi số thập lục phân DF6h thành nhị phân:
D
F
6
1101 1111 0110

Kết quả DF6h = 110111110110b.

1.3.3. Các loại mã
a. Mã BCD (Binary Code Decimal)
Giữa hệ thập phân và hệ nhị phân còn tồn tại một hệ lai: hệ BCD cho các số hệ thập
phân mã hoá bằng hệ nhị phânrất thích hợp cho các thiết bị đo có thêm phần hiển thị số ở đầu
ra dùng các loại đèn hiện số khác nhau. Ở đây dùng bốn số hệ nhị phân (bốn bit) để mã hoá
một số hệ thập phân có giá trị nằm trong khoảng từ 0..9. Như vậy ở đây ta không dùng hết các

-13-


tổ hợp có thể có của 4 bit; 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ụ: 35d = 00110101b.
b. Mã ASCII (American Standard Code for Information Interchange).
Đây là loại bảng mã 8 bit, số ký tự biểu diễn là 256 ký tự, mỗi ký tự được xác định
bằng số thứ tự trong bảng mã – gọi là mã ASCII (ví dụ : ký tự „A‟ có mã là 65d hay 41h).
Ngày nay loại bảng mã này ít được sử dụng vì số ký tự thể hiện ít, chỉ đủ dùng cho một quốc

gia, gây bất tiện khi chuyển văn bản
Bảng mã ASCII chia làm 2 phần:
 Phần đầu (ký tự đọc được) : 128 ký tự đầu (mã từ 0 – 127d)

-14-


Ví dụ: Đổi các ký tự BILL thành mã ASCII:
Ký tự
B
I
L
L
ASCII 1000010 1001001 1001100 1001100
HEXA
42 49 4C 4C
 Phần mở rộng (ký tự không đọc được) : 128 ký tự sau (mã từ 128 - 255)

c. Bảng mã Unicode
Do các hãng máy tính hàng đầu thế giới kết hợp thiết kế. Kích thước bộ mã này là 16 bit
có thể xây dựng bộ mã toàn cầu với số ký tự có thể mã là 2 16 ký tự với 128 ký tự đầu có mã
trùng mã trong bảng mã ASCII.
Ví dụ một đoạn trên bẳng mã Unicode

-15-


1.3.4. Biểu diễn số
a. Biểu diễn số nguyên theo mã nhị phân
 Dùng số nhị phân không dấu:

Với n bit nhị phân sẽ biểu diễn 2n số từ 0 đến 2n-1, sử dụng đủ n bit để biểu diễn giá trị.
Số bit
Khoảng giá trị
Kiểu dữ liệu
8 bit
0.. 255
Byte
16 bit
0.. 65535
Word
 Dùng số nhị phân có dấu (bit trái nhất là bit dấu).
Với n bit nhị phân sẽ biểu diễn 2n số từ -2n-1 đến +2n-1-1, chỉ sử dụng n-1 bit để biểu
diễn giá trị, còn bit ngoài cùng bên trai dùng để biểu diễn dấu (bit dấu có giá trị là 0 thì số
nguyên dương, bit dấu có giá trị là 1 thì số nguyên âm)
Số bit Kiểu dữ liệu Khoảng giá trị
8 bit
Short integer
-128.. +127
16 bit Integer
-32768.. +32767
32 bit Long integer
-231.. +231-1 (-2147483648.. +2147483647)
Số bù 2: (Ý nghĩa: Dùng đổi dấu số nguyên)
- Số bù 1: 1 đổi thành 0, 0 đổi thành 1
- Số bù 2: số bù 1 cộng 1
Ví dụ: đổi số nhị phân nguyên 8 bit +127 sang – 127
Giá trị nhị phân
01111111
~
+127d

-16-


Số bù 1
Số bù 2

10000000
~
-128d
+
1
10000001
~
-127d
Chú ý : trong máy tính sử dụng mã nhị phân theo hệ cơ số mũ 2 : 4,8,16,32,64 … bit. Vì
vậy nếu máy tính sử dụng là loại 8 bit thì khi biểu diễn giá trị sẽ sử dụng đủ 8 bít để biểu diễn.
Ví dụ : 5d = 0000 0101b ; 9d = 00001001b
b. Biểu diễn số thực theo mã nhị phân
 Biểu diễn dấu chấm cố định
Cách biểu diễn dấu chấm cố định trong hệ nhị phân hoàn toàn giống cách biểu diễn số
thực thông thường của hệ thập phân
n 1

R = an-1...a0, b1...bm =

 ai  s i +

i 0

m


b
j 1

j

 s j

Trong đó R số thực cần biểu diễn gồm n trị số đứng trước và m trị số đứng sau dấu
chấm. Tuỳ thuộc vào hệ thập phân hay nhị phân mà cơ số s có giá trị là 2 hay 10.
Quy tắc: ta chuyển đổi từng phần nguyên và lẻ theo quy tắc sau:
o Phần nguyên: Chia liên tiếp phần nguyên cho 2 giữ lại các số dư, Số nhị phân
chuyển đổi sẽ là dãy số dư liên tiếp tính từ lần chia cuối về lần chia đầu tiên.
o Phần lẻ: Nhân liên tiếp phần lẻ cho 2, giữ lại các phần nguyên tạo thành. Phần
lẻ của số Nhị phân sẽ là dãy liên tiếp phần nguyên sinh ra sau mỗi phép nhân
tính từ lần nhân đầu đến lần nhân cuối.
Ví dụ: Chuyển sang hệ Nhị phân số: 13,625d
Thực hiện:
Phần nguyên:
13:2
=6
dư 1
6:2
=3
dư 0
3:2
=1
dư 1
1:2
=0

dư 1
=> Phần nguyên của số Nhị phân là 1101
Phần lẻ:
0,625 x 2 = 1,250
Phần nguyên là 1
0,250 x 2 = 0,500
Phần nguyên là 0
0,500 x 2 = 1,000 Phần nguyên là 1 (dừng ở đây vì phân nguyên còn lại =0)
=> Phần lẻ của số Nhị phân là: 0,101
=> Ta viết kết quả là: (13,625)10 = (1101,101)2
Chú ý: việc chuyển đổi từ hệ thập phân sang hệ Nhị phân không phải luôn được gọn
gàng chính xác, trong trường hợp phép tính chuyển đổi kéo dài, thì tùy theo yêu cầu về độ
chính xác mà ta có thể dùng phép tính ở mức độ cần thiết thích hợp.
Nh n x t :
Các số dấu ph y tĩnh chỉ dùng trong các bài toán yêu cầu độ chính xác không cao và
luông cố định, ví dụ điểm môn học trong trường ĐH CN tính chính xác đến 1 số sau dấu ph y
(VD : 4,5). Như vậy các điểm sẽ luôn có độ chính xác trong khoảng đó. Trong thực tế có các
bài toán yêu cầu độ chính xác gần như tuyệt đối như các bài toán trong ngân hàng, trong điều
khiển máy bay, vệ tinh, ... Các bài toán này không thể quy định trước một độ chính xác, người
ta phải sử dụng sô dấu chấm động, khi đó số các số sau dấu ph y là không hạn chế về mặt
biểu diễn.
-17-


VD : 12e-101=12*10-101
Vấn đề là biểu diễn các số dấu chấm động như thế nào trên máy tính với cơ số 2.
b. Biểu diễn dấu chấm động
Chia làm 4 thành phần:
 M: phần định trị
 E: phần mũ

 R: cơ số
 S: dấu
Như vậy X = (-1)S.M.RE
Ví dụ: R=-750d = -0,75.103 = -0,75E3
Để định dạng dấu chấm động có thể dùng chu n IEEE754-1985 (Institute of Electrical
and Electronic Engineering) 32 bit hoặc 64 bit.
Đây là chu n được mọi hãng chấp nhận và được dùng trong bộ xử lý toán học của Intẹl.
Bit dấu nằm ở vị trí cao nhất, kích thước phần mũ và khuôn dạng phần định trị thay đổi theo
từng loại số thực, Trong cách biểu diễn này, phần định trị có dạng 1,f với số 1 n tăng và f là
phần số lẻ.
Chu n IEEE 754 định nghĩa hai dạng biểu diễn số chấm động:
- Số chấm động chính xác đơn với định dạng được định nghĩa: chiều dà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 (-1)S * (1,f1 f2 ..... f23) * 2(E - 127)
Bit 31 30
23 22 21
1
0
S
E
f1 f2
...........
f22 f23
- Số chấm động chính 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ũ E (Exponent - 11 bit), phần lẻ F (Fraction 52 bit)
Số này tương ứng với số thực (-1)S * (1,f1 f2 ..... f52) * 2(E - 1023)
Bit 63 62
52 51 50
1

0
S
E
f1f2f2
...........
f51 f52
 Giá trị số thực IEEE754-1985 32 bit được tính như sau:
R = (-1)S.(1 + M1.2-1 + ...+Mn2-n).2(E7...E0)-127
S
E7-E0
Định trị(M1- M23)
Ví dụ:
428CE9FCh = 0100 0010 1000 1100 1110 1001 1111 1100
Phần định trị: 2-4+2-5+2-8+2-9+2-10+2-12+2-15+
+2-16+2-17+2-18+2-19+2-20+2-21 = 0,1008906.
Giá trị ngầm định là: 1,1008906.
Phần mũ: 28+22+20 =133
Giá trị thực: 133-127=6.
Dấu (bit cao nhất): 0 = số dương
6

R = 1,1008906.2 = 70,457.
Quy tắc đổi ngược lại (số thực sang số dấu ph y động 32 bit):
 Chuyển số thập phân về số nhị phân
 Đưa về dạng 1.xxxxByyyy (Với B là cơ số 2)
 Xác định bit dấu (bít 31): lấy giá trị 0 với số dương, 1 với số âm
-18-


 Xác định phần mũ (bit từ 30-23): yyyy+7Fh

 Xác định phần định trị (bit 22-0): xxxx00...00
- Ví dụ: Biểu diễn số thực 9,75d sang số dạng dấu ph y động.
 Ta đổi sang dạng nhị phân: 9,75d = 1001.11b = 1,00111B3.
 Bit dấu: bit 31 = 0.
 Phần mũ: 3 + 7Fh = 82h = 10000010b. Được đưa vào các bit tiếp theo: từ bit
30 đến bit 23.
 Phần định trị: 00111 được đưa vào các bít tiếp theo từ bit 22
Kết quả
0100 0001 0001 1100 0000 0000 0000 0000
Bit

-

|31|30

23|22

0|

Ví dụ : biểu diễn số thực -12.625d sang số chấm động chu n IEEE 754 (32 bit):
 Đổi số -12.62510 sang nhị phân: -12.625d = -1100.101b = -1,100101B3.
 Bit dấu : bit 31=1.
 Phần mũ : Phần mũ: 3 + 7Fh = 82h = 10000010b. Được đưa vào các bit tiếp
theo: từ bit 30 đến bit 23.
 Phần định trị: 000101 được đưa vào các bít tiếp theo từ bit 22
Kết quả
32 bit
1 1000 0010 1001 0100 0000 0000 0000 000
S


E

F

1.3.5. Biểu diễn các dạng thông tin khác
 Biểu diễn hình ảnh
Trong máy vi tính, thông tin về hành ảnh, đồ họa được biểu diển theo nguyên tắc:
- Đồ họa điểm (Pixel graphics)
+ Dùng ma trận điểm ảnh (Pixel matrix), tọa độ một điểm ảnh được xác định
bởi hàng (Row) và cột (Columme).
+ Tùy theo chất lượng hình ảnh, người ta sử dùng số bit cụ thể (1, 4, 8, 16, 24,
32…) để biểu diễn giá trị của điểm, qua đó sẽ tạo nên chất lượng hình ảnh
khác nhau (đen trắng, ảnh xám, màu giả, màu chất lượng cao…)
+ Để lưu trữ hình ảnh chúng ta cần quan tâm đến: Kích thước ảnh, phạm vi áp
dụng, dung lượng lưu trữ, mã nén…)
- Đồ họa véc tơ (Vector graphics)
+ Đồ họa véc tơ khắc phục được việc giảm thiểu không gian lưu trữ như đối
với đồ họa điểm ảnh.
+ Nguyên tắc: chia hình ảnh ra thành các đối tượng (Object) cơ bản như: điểm
ảnh, đoạn thẳng, đa giác, đoạn cong, mặt khối… Khi đó hệ thống chỉ cần
biết các thông tin cụ thể (tọa độ, phương trình toán học, màu sắc…) qua đó
dễ dàng biểu diễn lại đối tượng một cách nhanh chóng.
+ Một đặc điểm quan trọng là đồ họa véc tơ có khả năng dễ dàng biểu diễn
các đối tượng đồ họa 3 chiều
Máy tính còn có khả năng biểu diễn hình ảnh chuyển động (như những đoạn phim).
Nguyên tắc cơ bản dựa trên phim nhựa (lưu trữ và hiển thị các ảnh theo quy luật, chỉ
cần 25 ảnh/ giây sẽ có cảm giác hình ảnh chuyển động). Do số lượng ảnh cần dùng
khá lớn nên có nhiều kỹ thuật xử lý hình ảnh đã được áp dụng (MPEG, AVI, FLC…)
 Biểu diễn âm thanh


-19-




Lấy mẫu của tín hiệu âm thanh theo thời gian cụ thể (fs = fmax) và gán cho mỗi mẫu bởi
một giá trị nhị phân cụ thể (lượng tử hóa theo số bít nhị phân xác định)
Hiện nay thường sử dụng fs = 44KHz (theo chu n của công nghệ nhạc CD)
Tương tự như biểu diễn hình ảnh, âm thanh cũng được phân tích thành nhiều đối
tượng (trống, kèn, đàn…)
Việc lưu trữ âm thanh hiện nay được dùng theo các chu n MIDI, WAVE, MP3…
Các đại lượng vật lý khác
Các thông tin khác trong thực tế dùng phục vụ đo lường, điều khiển (nhiệt độ, áp
suất…) đều có thể được mã hóa trên máy tính
Nguyên tắc chung: Cần các bộ cảm biến cụ thể để nhận tín hiệu vật lý và thông qua bộ
chuyển đổi tín hiệu sang số (ADC – Analog to digital converter) để tạo thành tín hiệu
số có khả năng thực hiện trên máy tính (hoặc ngược lại).

1.4. Các th nh phần cơ ản trong hệ thống máy tính
Mô hình chung của một máy tính

Mô hình chung của một hệ thống máy tính

Mô hình Von Newman cổ điển
1.4.1. Bộ xử lí trung tâm
Bộ xử lí trung tâm (Central Processing Unit – CPU) có thể được xem như não bộ, một
trong những phần tử cốt lõi nhất của máy vi tính. Nhiệm vụ chính của CPU là xử lý các
chương trình vi tính và dữ kiện. CPU có nhiều kiểu dáng khác nhau. Ở hình thức đơn giản
nhất, CPU là một con chip với vài chục chân. Phức tạp hơn, CPU được ráp sẵn trong các bộ
mạch với hàng trăm con chip khác. CPU là một mạch xử lý dữ liệu theo chương trình được

thiết lập trước. Nó là một mạch tích hợp phức tạp gồm hàng triệu transistor
Cấu trúc cơ bản CPU
 Đơn vị điều khiển (CU:Control Unit): Điều khiển hoạt động của máy tính theo
chương trình đã định sẵn.

-20-


 Đơn vị số học và logic (ALU: Arithmetic And Logic Unit): thực hiện các phép toán
số học và logic trên các dữ liệu cụ thể.
 Tập thanh ghi (RF: Register File): Lưu trữ các thông tin tạm thời phục vụ cho hoạt
động của CPU.
 Đơn vị nối ghép BUS(BIU: Bus Interface Unit): kết nối và trao đổi thông tin giữa
Bus bên trong và Bus bên ngoài CPU.
1.4.2. Bộ nh trong
Là loại bộ nhớ mà CPU có thể truy cập trực tiếp, có tốc độ cao và dung lượng thường
nhỏ. Bộ nhớ trong chia làm 2 loại
 Bộ nhớ chính (main memmory): ROM và RAM
 Bộ nhớ đệm Cache
 RAM (Random access memory), hay Bộ nhớ truy cập ngẫu nhiên:
Tốc độ truy cập nhanh, lưu trữ giữ liệu tạm thời, dữ liệu sẽ bị mất vĩnh viễn khi không
còn nguồn điện cung cấp.
 ROM (Read Only Memory), hay Bộ nhớ chỉ đọc:
Lưu trữ các chương trình mà khi mất nguồn điện cung cấp sẽ không bị (xóa) mất. Ngày
nay còn có công nghệ FlashROM tức bộ nhớ ROM không những chỉ đọc mà còn có thể ghi
lại được, nhờ có công nghệ này BIOS được cải tiến thành FlashBIOS.
 Cache:
Cache là tên gọi của bộ nhớ đệm – nơi lưu trữ các dữ liệu nằm chờ các ứng dụng hay
phần cứng xử lý. Mục đích của nó là để tăng tốc độ xử lý. Cache là một cơ chế lưu trữ tốc độ
cao đặc biệt. Nó có thể là một vùng lưu trữ của bộ nhớ chính hay một thiết bị lưu trữ tốc độ

cao độc lập.
1.4.3. Bộ nh ngoài
Có dung lượng lơn, để lưu các chương trình và dữ liệu lâu dài, như HDD, CDROM . . .
Các loại bộ nhớ dựa trên công nghệ FlashROM: Kết hợp với chu n giao tiếp máy tính
USB (Universal Serial Bus) tạo ra các bộ nhớ máy tính di động thuận tiện và đa năng như:
Các thiết bị giao tiếp USB lưu trữ dữ liệu, thiết bị giao tiếp USB chơi nhạc số, chơi video số;
khóa bảo mật qua giao tiếp USB; thẻ nhớ... Dung lượng thiết bị lưu trữ FlashROM đã lên tới
32GB (Samsung công bố năm 2005), trong tương lai, có thể FlashROM sẽ dần thay thế các ổ
đĩa cứng, các loại đĩa CD, DVD...
1.4.4. Hệ thống vào ra (Input Output ystem)
Giúp máy tính trao đổi thông tin với thế giới bên ngoài, bao gồm hai hoạt động chính là
nhận thông tin (Input) và gửi thông tin (Output).
Thiết bị vào (Input devices): Các bộ phận thu nhập dữ liệu hay mệnh lệnh như là bàn
phím, chuột...biến đổi thông tin từ môi trường bên ngoài sang dạng phù hợp để đưa vào máy
tính xử lí.
Thiết bị ra (Output divices): Các bộ phận trả lời, phát tín hiệu, hay thực thi lệnh ra bên
ngoài như là màn hình, máy in, loa, ...biến đổi dữ liệu sau xử lí sang dạng phù hợp với yêu
cầu của người sử dụng.
1.4.5. Hệ thống bus
Bus là tập hợp các đường dây truyền tải thông tin theo phương thức song song, mỗi 1
đường dây truyền 1 bit thông tin, số lượng đường dây càng lớn (độ rộng bus) thì khả năng
truyền thông tin càng lớn. Bus cho phép liên kết các thành phần lại với nhau, thông tin đi ra từ
1 thành phần có thể đến tất cả các thành phần khác kết nối với bus. Tại 1 thời điểm chỉ có 1
thành phần được phép sử dụng bus để truyền thông tin, các thành phần khác muốn truyền
thông tin thì phải chờ đến lượt hoặc bus ở trạng thái rảnh rỗi.
-21-


Bus có 2 loại : Bus cục bộ (local bus – internal bus) nối các thành phần cục bộ bên trong
1 thiết bị ; Bus hệ thống (System bus) kết nối các thành phần quan trọng trong hệ thống máy

tính (CPU, Memory, I/O).
Bus hệ thống bao gồm 3 loại :
 Bus địa chỉ (Address bus) : truyền các thông tin về tín hiệu địa chỉ của bộ nhớ,
các thiết bị.
 Bus dữ liệu (Data bus) : truyền các thông tin về dữ liệu giữa các thành phần,
thiết bị với nhau.
 Bus điều khiển (Control bus) : truyền các thông tin tín hiệu điều khiển, trạng thái
giữa CPU và các thành phần khác trong hệ thống máy tính.
Mô hình máy tính điện tử

Nội dung tự học
- Lịch sử phát triển của máy tính
- Sự phát triển của họ VXL Intel x86
- Sự phát triển của thiết bị ngoại vi
- Sự phát triển của các phần mềm máy tính
- Hiệu năng của hệ thống
- Các kiến trúc máy tính tiên tiến
- Các bài tập trong mục 1.2

-22-


Chƣơng II. BỘ XỬ LÝ TRUNG TÂM
2.1. Tổ chức ộ ử ý trung tâm
2.1.1. Các bộ ph n chính trong CPU
Trong hệ thống máy tính, bộ xử lý trung tâm (CPU – Central Proccesing Unit) đóng vai
trò quan trọng vì đây là đơn vị điều khiển và xử lý dữ liệu. CPU hoạt động theo chương trình
nằm trong bộ nhớ chính.
Cấu trúc cơ bản của CPU gồm 4 thành phần
chính:

- Đơn vị điều khiển
- Đơn vị xử lý toán học và logic
- Thanh ghi
- Hệ thống BUS

2.1.2. ự thực thi của CPU
CPU là nơi mà phần lớn các tác vụ xử lý được thực hiện. Các tác vụ xử lý này được
thực thi trong CPU và được lưu trữ trong bộ nhớ (tập lệnh).
Khi có một yêu cầu xử lý, CPU cần phải thực hiện những thao tác sau:
 Fetch Instructions (chỉ lệnh tìm nạp): CPU đọc các chỉ lệnh từ
bộ nhớ.
 Interpret Instructions: Giải mã chỉ lệnh để xác định hành động
nào được yêu cầu.
 Fetch data (dữ liệu tìm nạp): Thi hành chỉ lệnh (có thể yêu cầu
thực hiện một vài thao tác số học hoặc logic trên dữ liệu).
 Write Data: Ghi lại kết quả của sự thi hành (có thể yêu cầu viết
dữ liệu vào bộ nhớ hoặc module vào ra).
Để thực hiện các thao tác trên, CPU cần một số bộ phận làm việc cùng nhau, cung cấp
các dữ liệu cũng như các tín hiệu điều khiển thực thi cho nhau :

- Program Counter: chứa địa chỉ của lệnh tiếp theo trong bộ nhớ để thực thi.
- Memory Address Register (MAR): lưu địa chỉ của vùng nhớ trong bộ nhớ chính mà
dữ liệu sẽ được ghi vào hoặc dữ liệu sẽ được đọc từ đó.
-23-


- Memory Buffer Register (MBR): lưu giữ tạm thời dữ liệu đọc từ bộ nhớ hoặc dữ liệu
được sao chép vào bộ nhớ.
- Control Unit: giải mã lệnh và tạo ra các tín hiệu điều khiển, điều khiển các thành phần
khác trong CPU, phối hợp tất cả các thành phần đó hoạt động nhằm hoàn thành tác vụ cần xử

lý.
- Accumulator: lưu trữ kết quả tạm thời hoặc trung gian trong quá trình tính toán được
thực hiện bởi ALU.
- Arithmetic and Logic Unit (ALU): thực hiện các phép toán số học và logic
- Processor Status Register (PSR): lưu giữ trạng thái thực hiện của các phép xử lý
- Intruction Register (IR) : thanh ghi lệnh, lưu giữ các thông tin về nội dung lệnh cần
thực thi.
Việc thực hiện yêu cầu xử lý (lệnh) sẽ được tiến hành trong 1 chu kỳ lệnh, điều này có
nghĩa nội dung của lệnh đã được nạp vào trong CPU, đã được giải mã để xác định các yêu
cầu, cũng như các dữ liệu phụ thuộc đầu vào của lệnh cũng được nạp để phục vụ việc thực thi
lệnh, kết quả của lệnh (đầu ra) cũng phải được xử lý – lưu trữ.
FETCH
1. [MAR] ← [PC]
2. [PC]
← [PC]+1
3. [MBR] ← [MM [MAR]]
4. [IR]
← [MBR]
4a. CU.
← [IR (opcode)]
EXECUTE. 5. [MAR] ← [IR (Địa chỉ)]
6. [MBR] ← [MM [MAR]]
7a. ALU. ← [MBR]
7b. ALU. ← [ACC]
8. [ACC] ← ALU.
2.2. Tổ chức thanh ghi
Trong quá trình xử lí, lệnh và dữ liệu có thể được lưu trữ tạm thời tại các phần tử nhớ có
tốc độ truy xuất tương ứng với tốc độ xử lí của CPU, các phần tử nhớ đó được gọi là thanh
ghi.
Các thanh ghi có thể được chia thành hai nhóm:

 User - Visible Registers: các thanh ghi mà người dùng có thể can thiệp được vào
nội dung
 Control and Status Registers: lư trữ tín hiệu và điều khiển trạng thái thực hiện
2.2.1. User-Visible Registers:
Thanh ghi User-Visible là một trong những thành phần được tham chiếu bởi cách thức
của ngôn ngữ máy được CPU thi hành. Có trong các loại sau:
 Nhóm thanh ghi đa năng
 Nhóm thanh ghi đoạn
 Nhóm thanh ghi con trỏ và chỉ số
Các thanh ghi đa năng (general-purpose registers) có thể bị phân chia cho các chức năng
khác nhau bởi người lập trình.
- Dùng trong tập lệnh trực giao với thao tác (các toán hạng – opcode, thao tác con trỏ
động…)
- Dùng cho các chức năng địa chỉ hoá (thanh ghi gián tiếp, dịch chuyển).
- Trong các trường hợp khác (thanh ghi dữ liệu và thanh ghi địa chỉ).

-24-


×