Cấu trúc một hệ bộ máy vi tính tối thiểu.
Trang 2Tuyên b b n quy n ố ả ề
Tài li u này là lo i giáo trình n i b dùng trong nhà tr ệ ạ ộ ộ ườ ng v i m c đích làm tài li u ớ ụ ệ
gi ng d y cho giáo viên và h c sinh, sinh viên nên các ngu n thông tin có th đ ả ạ ọ ồ ể ượ c tham kh o ả
Tài li u ph i do tr ệ ả ườ ng Cao đ ng ngh Công nghi p Hà N i in n và phát hành. ẳ ề ệ ộ ấ
Vi c s d ng tài li u này v i m c đích th ệ ử ụ ệ ớ ụ ươ ng m i ho c khác v i m c đích trên đ u ạ ặ ớ ụ ề
b nghiêm c m và b coi là vi ph m b n quy n ị ấ ị ạ ả ề
Tr ườ ng Cao đ ng ngh Công nghi p Hà N i xin chân thành c m n các thông tin giúp ẳ ề ệ ộ ả ơ cho nhà tr ườ ng b o v b n quy n c a mình ả ệ ả ề ủ
Trang 3L I NÓI Đ UỜ Ầ
Trong chương trình đào t o c a các trạ ủ ường trung c p ngh , cao đ ng nghấ ề ẳ ề
Đi n t công nghi p th c hành ngh gi m t v trí r t quan tr ng: rèn luy n tayệ ử ệ ự ề ữ ộ ị ấ ọ ệ ngh cho h c sinh. Vi c d y th c hành đòi h i nhi u y u t : v t t thi t b đ yề ọ ệ ạ ự ỏ ề ế ố ậ ư ế ị ầ
đ đ ng th i c n m t giáo trình n i b , mang tính khoa h c và đáp ng v i yêuủ ồ ờ ầ ộ ộ ộ ọ ứ ớ
c u th c t ầ ự ế
N i dung c a giáo trình “C u trúc máy tính” đã độ ủ ấ ược xây d ng trên c sự ơ ở
k th a nh ng n i dung gi ng d y c a các trế ừ ữ ộ ả ạ ủ ường, k t h p v i nh ng n i dungế ợ ớ ữ ộ
m i nh m đáp ng yêu c u nâng cao ch t lớ ằ ứ ầ ấ ượng đào t o ph c v s nghi pạ ụ ụ ự ệ công nghi p hóa, hi n đ i hóa đ t nệ ệ ạ ấ ước,.
Giáo trình được biên so n ng n g n, d hi u, b sung nhi u ki n th cạ ắ ọ ễ ể ổ ề ế ứ
m i và biên so n theo quan đi m m , nghĩa là, đ c p nh ng n i dung c b n,ớ ạ ể ở ề ậ ữ ộ ơ ả
c t y u đ tùy theo tính ch t c a các ngành ngh đào t o mà nhà trố ế ể ấ ủ ề ạ ường t đi uự ề
ch nh cho thích h p và không trái v i quy đ nh c a chỉ ợ ớ ị ủ ương trình khung đào t oạ cao đ ng ngh ẳ ề
Tuy các tác gi đã có nhi u c g ng khi biên so n, nh ng giáo trình ch cả ề ố ắ ạ ư ắ
ch n không tránh kh i nh ng thi u sót, r t mong nh n đắ ỏ ữ ế ấ ậ ược s tham gia đóngự góp ý ki n c a các b n đ ng nghi p và các chuyên gia k thu t đ u ngành.ế ủ ạ ồ ệ ỹ ậ ầ
Xin trân tr ng c m n! ọ ả ơ
Trang 4Bµi 1 §¹i c¬ng
.1 Các ch tiêu k thu t chính c a máy vi tính ỉ ỹ ậ ủ
.1.1. Phân lo i máy vi tínhạ
Máy tính đi n t đệ ử ược cho là có t nh ng năm 1940, nh ng máy vi tính sừ ữ ư ử
d ng b vi x lý thì xu t hi n vào kho ng năm 1979 v i vi x lý Intel 8008. L nụ ộ ử ấ ệ ả ớ ử ầ
đ u tiên thu t ng Personal Computer đầ ậ ữ ược IBM s d ng tháng 11 năm 1981, vàử ụ
b t đ u t đó là th i k phát tri n m nh m c a máy vi tính cá nhân IBM PC.ắ ầ ừ ờ ỳ ể ạ ẽ ủ
Có nhi u phề ương pháp phân lo i máy vi tính. Trong tài li u này, thu t ngạ ệ ậ ữ máy vi tính ch xác đ nh cho các lo i máy vi tính dân d ng ph bi n th trỉ ị ạ ụ ổ ế ở ị ườ ng
Vi t nam, theo đó máy vi tính g m 2 lo i là máy tính xách tay (Laptop –ệ ồ ạ Notebook) và máy đ bàn (Destop). Cũng có th phân lo i máy vi tính v côngể ể ạ ề ngh , theo đó có các dòng máy x86, pentium v.v ệ
.1.2. Các ch tiêu v ngu n cung c pỉ ề ồ ấ
Ngu n cung c p là yêu c u k thu t đ u tiên c n quan tâm, m c dù v iồ ấ ầ ỹ ậ ầ ầ ặ ớ
ngườ ử ụi s d ng thì đây là các ch tiêu n.ỉ ẩ
Máy vi tính có b ngu n trong (Power Supply) r t t t, ch tiêu ch y u c aộ ồ ấ ố ỉ ủ ế ủ ngu n cung c p chính là các ch tiêu cho b ngu n này.ồ ấ ỉ ộ ồ
V i destop c n quan tâm đ n lo i ngu n và công su t cung c p t i đa (g iớ ầ ế ạ ồ ấ ấ ố ọ
t t là công su t ngu n), lo i này luôn dùng đi n lắ ấ ồ ạ ệ ưới công nghi p AC220V/50Hzệ (ch tiêu ghi trên v h p ngu n là AC 210 ~ 230V/50–60Hz). Công su t ngu nỉ ỏ ộ ồ ấ ồ yêu c u ph thu c r t nhi u vào các dòng máy. Các máy t trầ ụ ộ ấ ề ừ ước pentium chỉ
Trang 5c n b ngu n có công su t 200ầ ộ ồ ấ 250W, v i pentium 3 c n 300ớ ầ 350W, v iớ pentium 4 có chipset 8xx c n 350ầ 400W, còn v i các pentium 4 chipsset 9xx cóớ
th c n t i 500ể ầ ớ 600W, tùy theo c u hình c th ấ ụ ể
V i laptop thì khác, b n thân laptop s d ng công ngh ti t ki m đi n vàớ ả ử ụ ệ ế ệ ệ màn hình tinh th l ng nên tiêu th công su t r t nh so v i destop cùng tínhể ỏ ụ ấ ấ ỏ ớ năng, nhìn chung m t chi c laptop tiêu th công su t không quá 120W, v i cácộ ế ụ ấ ớ
lo i laptop thông thạ ường có màn hình 14.1 in thì công su t c a nó vào kho ngấ ủ ả
60 80W
C n r t chú ý v i b pin c a laptop. M t pin nguyên g c c a chính hãngầ ấ ớ ộ ủ ộ ố ủ
thường có th i gian s d ng (không c m đi n AC) là 2,5 đ n 3 gi , và th i gianờ ử ụ ắ ệ ế ờ ờ dùng pin này suy gi m r t nhanh n u s d ng pin không đúng cách. M t s lo iả ấ ế ử ụ ộ ố ạ laptop hi n đ i có th i gian dùng pin r t l n, lên t i 5 ệ ạ ờ ấ ớ ớ 6 gi ho t đ ng liênờ ạ ộ
t c.ụ
.1.3. Các ch tiêu v công nghỉ ề ệ
Nhóm các ch tiêu công ngh g m r t nhi u ch tiêu, và quan tâm đ n nó ỉ ệ ồ ấ ề ỉ ế ở
m c đ nào hoàn toàn ph thu c vào m c đích s d ng.ứ ộ ụ ộ ụ ử ụ
Đ u tiên c n xét đ n xu t x , đây là y u t quy t đ nh ch t lầ ầ ế ấ ứ ế ố ế ị ấ ượng và độ
n đ nh c a máy vi tính. Nhìn chung máy vi tính đ ng b c a các hãng tên tu i có
ch t lấ ượng cao, n đ nh nh ng giá thành cũng cao. Có th dung hòa b ng cách sổ ị ư ể ằ ử
d ng các linh ki n ch t lụ ệ ấ ượng cao có xu t x rõ ràng đ gi m giá thành.ấ ứ ể ả
Các ch tiêu công ngh khác hoàn toàn ph thu c vào m c đích s d ng,ỉ ệ ụ ộ ụ ử ụ trong đó ch tiêu lo i vi x lý, chipset và card đ h a là nh ng ch tiêu c n chú ýỉ ạ ử ồ ọ ữ ỉ ầ
đ u tiên.ầ
Ti p theo là các ch tiêu v b nh trong RAM, v kích thế ỉ ề ộ ớ ề ước bus, v khề ả năng k t n i LAN, WIFI v.v ế ố
Trang 6.2 Bi u di n thông tin trên máy vi tính ể ễ
.2.1. Các h đ mệ ế
M t h đ m độ ệ ế ược đ c tr ng b i: s lặ ư ở ố ượng các ký hi u c b n (g i là cệ ơ ả ọ ơ
s ) và cách bi u di n các ký hi u c b n (g i là ch s ).ố ể ễ ệ ơ ả ọ ữ ố
M t s có n + 1 ch s trong h c s a độ ố ữ ố ệ ơ ố ượ c ký hi u làệ
và có giá tr là ị
A = xnan1 + xn1an2 + … +x2a2 +x1a1 +x0a0 (CT)
Ví d h đ m 10 là h đ m thụ ệ ế ệ ế ường ngày s d ng. H đ m 10 (g i t t làử ụ ệ ế ọ ắ
h 10), thu t ng là ệ ậ ữ Decimal vi t t t là DEC có 10 s đ m c b n, đ c ký hi uế ắ ố ế ơ ả ượ ệ
là 0, 1, 2, 3, 4, 5, 6, 7, 8, 9; s A=9876543 trong h 10 có 7 ch s (t c là n = 6)ố ệ ữ ố ứ thì
.1 H đ m 2 (ệ ế binary vi t t t là BIN)ế ắ
H 2 dùng 2 ch s là 0 và 1, c s là 2, do đó 1ệ ữ ố ơ ố
ch s s có lữ ố ẽ ượng thông tin là 1 bit. Hi u m t cách đ nể ộ ơ
gi n s bit là s ch s đả ố ố ữ ố ược dùng đ bi u di n m t conể ể ễ ộ
s h 2. Ví d s x = 1 trong h 2, n u vi t d ng 1 bit số ệ ụ ố ệ ế ế ạ ẽ
Trang 7là x = 1b (ch b bi u th là s h 2), n u vi t d ng 2 bit s là x = 01b. B ng sauữ ể ị ố ệ ế ế ạ ẽ ả
đ i chi u giá tr 16 s h 10 đ u tiên v i các s h 2 d ng 4 bit tố ế ị ố ệ ầ ớ ố ệ ạ ương ng.ứ
.a Đ i s h 10 sang h 2ổ ố ệ ệ
Quy t c: đ đ i s A h 10 thành s h 2 thì th c hi n phép chia s nguyên Aắ ể ổ ố ệ ố ệ ự ệ ố cho 2, s d đố ư ược vi t riêng sang t n cùng bên ph i, k t qu l i chia ti p cho 2,ế ậ ả ế ả ạ ế
s d đố ư ược vi t sang bên trái c a s d trế ủ ố ư ước, và c làm nh v y cho đ n khiứ ư ậ ế
được k t qu làế ả
d nh n đư ậ ượ cchính là s h 2ố ệ
đ i s A=25ổ ố sang h 2 ệ
.b Đ i s h 2 sang h 10: th c ch t là tính giá tr c a s h 2 theo côngổ ố ệ ệ ự ấ ị ủ ố ệ
th c CT trên. Ví d s A = 11001101 đ i sang h 10 có là A = 1x2ứ ở ụ ố ổ ệ 7 + 1x26 + 0x25 + 0x24 + 1x23 + 1x22 + 0x21 + 1x20 = 128 + 64 + 0 + 0 + 8 + 4 + 0 + 1 = 205
.2 H 16 (ệ Hexa – Decimal g i t t là h HEX, ký hi u là h hay H)ọ ắ ệ ệ
H HEX có 16 s đ m, ký hi u b ng 10 ch s h 10 và 6 ch cái A, B,ệ ố ế ệ ằ ữ ố ệ ữ
C, D, E, F, trong b ng sau là đ i chi u c a 16 s đ u tiên trong các h 2,10 vàả ố ế ủ ố ầ ệ 16
0
0 1
25
2
6 2
3 2
1 2
0
2 1
Dãy s d là 1 1 0 0 1 chính ố ư
là s h 2 c n tìm ố ệ ầ
Trang 8Nh v y trong h HEX, 10 s đ m đ u tiên (0 ư ậ ệ ố ế ầ 9) gi ng nh trong h 10, cònố ư ệ
s đ m th 11 đố ế ứ ược ký hi u là A (t c là Ah = 10 d), các s đ m còn l i nhệ ứ ố ế ạ ư trong b ng.ả
.a Đ i s h 2 sang h 16 và ng c l iổ ố ệ ệ ượ ạ
S h 2 và s h 16 có liên quan đ c bi t là 16 = 2ố ệ ố ệ ặ ệ 4, do đó vi c chuy nệ ể
đ i r t d dàng, đó là m i ch s h 16 tổ ấ ễ ỗ ữ ố ệ ương ng v i b 4 ch s h 2 nhứ ớ ộ ữ ố ệ ư trong b ng. Ví d s 5A2h = 0101.1010.0010ả ụ ố b
.b Đ i s h 10 sang h 16ổ ố ệ ệ
Đ đ i s h 10 sang h 16 có th làm tể ổ ố ệ ệ ể ương t nh quy t c đ i v i h 2ự ư ắ ố ớ ệ tuy nhiên làm nh v y ph c t p và m t th i gian, có th áp d ng quy t c như ậ ứ ạ ấ ờ ể ụ ắ ư sau:
Quy t c: đ đ i s X h 10 sang h 16 hãy đ i nó sang h 2, sau đó đ i sắ ể ổ ố ệ ệ ổ ệ ổ ố
Trang 9quy t c trong b ng. C n chú ý r ng phép c ng h 2 v n có nh nh trong h 10ắ ả ầ ằ ộ ệ ẫ ớ ư ệ
v i 1+1 = 0 nh 1 (“ớ ớ nhớ” có thu t ng là carry).ậ ữ
Ví d : 1001b + 1011b = 10100bụ
Phép tr h 2 đừ ệ ược quy v phép c ng v i s bù 2. S bù 2 là s đ i h 2, ví dề ộ ớ ố ố ố ố ệ ụ
s bù 2 c a 0110 (= 6) là (6) và đố ủ ược quy
Phép c ng h 16 cũng độ ệ ược ti n hành nh trong h 10 v i chú ý theo m tế ư ệ ớ ộ
s quy t c trong b ng. Phép c ng h 16 có th t o ra m t s “c m giác” khácố ắ ả ộ ệ ể ạ ộ ố ả
thường, tuy v y n u quen v i nó s th y hoàn toàn gi ng nh c ng h 10 (làậ ế ớ ẽ ấ ố ư ộ ệ phép c ng thông thộ ường)
C n chú ý r ng trong máy vi tính m i lo i d li u đ u đầ ằ ọ ạ ữ ệ ề ược dùng v i mãớ
h 2, nh ng đ đ n gi n trong ghi chép nên nó thệ ư ể ơ ả ường được vi t ra dế ướ ạ i d ng
Trang 10B ng mã ASCII ban đ u ch là b ng 7 bit (dùng 7 ch s h 2), nên mã hóaả ầ ỉ ả ữ ố ệ
được 128 ký t g i là b ng mã ASCII chu n (standard). V sau do yêu c u bự ọ ả ẩ ề ầ ổ sung các ký t châu Âu nên nó đự ược m r ng thành b ng mã 8 bit (256 ký t )ở ộ ả ự
g m các ký t riêng c a ti ng Pháp, Tây Ban Nha, Hy L p và các ký t đ h a.ồ ự ủ ế ạ ự ồ ọ
Trong máy vi tính, theo ng m đ nh thì b ng mã ASCII luôn đầ ị ả ược đ t trongặ ROM; khi m i kh i đ ng, h đi u hành ch a n p thì ROM t đ ng s d ngớ ở ộ ệ ề ư ạ ự ộ ử ụ
b ng mã ASCII, ngoài ra h đi u hành DOS cũng s d ng b ng mã này vàả ệ ề ử ụ ả Windows s d ng ASCII trong các file text (*.txt).ử ụ
Sau m t th i gian, kho ng năm 1984 xu t hi n b ng mã ANSI là b ng mãộ ờ ả ấ ệ ả ả
t ng h p c a nhi u trang mã (code page), m i trang mã ngoài các ký t ASCIIổ ợ ủ ề ỗ ự chu n còn có ph n m r ng g m các ký t và xác l p đ a phẩ ầ ở ộ ồ ự ậ ị ương cho nhi uề
nước trên th gi i.ế ớ
.1 D li u ki u s (numeric)ữ ệ ể ố
Trong máy vi tính d li u ki u s đữ ệ ể ố ượ ưc l u theo 3 d ng:ạ
– S nguyên không d uố ấ
– S nguyên có d uố ấ
Trang 11Các d li u s có ph m vi nh th nào hoàn toàn tùy thu c vào ph n m mữ ệ ố ạ ư ế ộ ầ ề
đã t o ra nó, và do đó gián ti p nó ph thu c vào ngôn ng l p trình đạ ế ụ ộ ữ ậ ược sử
d ng đ vi t ph n m m.ụ ể ế ầ ề
.2 D li u ki u ký t (text)ữ ệ ể ự
Lo i này đạ ược th hi n dể ệ ưới 2 d ng : ký t đ n và chu i (ký t ), trong đóạ ự ơ ỗ ự
m i ký t là m t ph n t c a b ng mã ASCII.ỗ ự ộ ầ ử ủ ả
.3 D li u ki u logic (logical)ữ ệ ể
Đây là ki u d li u đ c bi t, ch nh n m t trong hai giá tr ể ữ ệ ặ ệ ỉ ậ ộ ị đúng (true)
ho c ặ sai (false), nó t ng ng v i tr ng h p có ho c không.ươ ứ ớ ườ ợ ặ
C u trúc b ng mã ASCIIấ ả
– 32 ký t đ u tiên (mã s 1 ự ầ ố 32 hay 01h 20h) là các ký t đi u khi n,ự ề ể các ký t này liên quan đ n các l nh riêng c a máy mà không th gõ b ng bànự ế ệ ủ ể ằ phím (chính xác h n là n u gõ b ng bàn phím m r ng thì nó s xu t ra các kýơ ế ằ ở ộ ẽ ấ
t d ng hoa văn ho c không xu t hi n ký t nào).ự ạ ặ ấ ệ ự
– Ph n còn l i là các ký t d u ho c ký t d u hi u.ầ ạ ự ấ ặ ự ấ ệ
Dưới đây là b ng mã ASCIIả
0 48
@ 64
P 80
` 96
á 160
░ 176
└ 192
╨ 208
Trang 12B 66
R 82
b 98
ó 162
▓ 178
┬ 194
╥ 210
3 51
C 67
S 83
c 99
ú 163
│ 179
├ 195
╙ 211
4 52
D 68
T 84
d 100
ñ 164
┤ 180
─ 196
╘ 212
5 53
E 69
U 85
e 101
Ñ 165
╡ 181
┼ 197
╒ 213
F 70
V 86
f 102
ª 166
╢ 182
╞ 198
╓ 214
7 55
G 71
W 87
g 103
º 167
╖ 183
╟ 199
╫ 215
8 56
H 72
X 88
h 104
¿ 168
╕ 184
╚ 200
╪ 216
9 57
I 73
Y 89
I 105
⌐ 169
╣ 185
╔ 201
┘ 217
: 58
J 74
Z 90
j 106
¬ 170
║ 186
╩ 202
┌ 218
; 59
K 75
[ 91
k 107
½ 171
╗ 187
╦ 203
█ 219
<
60
L 76
\ 92
l 108
¼ 172
╝ 188
╠ 204
▄ 220
= 61
M 77
] 93
m 109
¡ 173
╜ 189
═ 205
▌ 221
>
62
N 78
^ 94
n 110
« 174
╛ 190
╬ 206
▐ 222
? 63
O 79
_ 95
o 111
» 175
┐ 191
╧ 207
▀ 223
∩
239
255
Trang 13.3 Ki n trúc c b n máy vi tính PC ế ơ ả
.3.1. S lơ ượ ịc l ch sử
Do nhu c u c n tăng đ chính xác và gi m th i gian tính toán, con ngầ ầ ộ ả ờ ườ i
đã quan tâm ch t o các công c tính toán t x a: bàn tính tay c a ngế ạ ụ ừ ư ủ ười Trung
Qu c, máy c ng c h c c a nhà toán h c Pháp Blaise Pascal (1623 1662), máyố ộ ơ ọ ủ ọ tính c h c có th c ng, tr , nhân, chia c a nhà toán h c Đ c Gottfriedơ ọ ể ộ ừ ủ ọ ứ Wilhelmvon Leibniz (1646 1716), máy sai phân đ tính các đa th c toán h c ể ứ ọ
Tuy nhiên, máy tính đi n t th c s b t đ u hình thành vào th p niên 1950ệ ử ự ự ắ ầ ậ
và đ n nay đã tr i qua 5 th h và đế ả ế ệ ược phân lo i theo s ti n b v công nghạ ự ế ộ ề ệ
đi n t và vi đi n t cũng nh các c i ti n v nguyên lý, tính năng và lo i hìnhệ ử ệ ử ư ả ế ề ạ
Th h 2 (1958 1964): ế ệ máy tính dùng b x lý b ng đèn bán d n, m chộ ử ằ ẫ ạ
in. Máy tính đã có chương trình d ch nh Cobol, Fortran và h đi u hành đ nị ư ệ ề ơ
gi n. Kích thả ước máy còn l n, t c đ tính kho ng 10.000 100.000 phép tính/s.ớ ố ộ ả
Đi n hình nh lo i IBM1070 (M ) hay MINSK (Liên Xô), ể ư ạ ỹ
Th h 3 (1965 1974): ế ệ máy tính được g n các b vi x lý b ng vi m chắ ộ ử ằ ạ
đi n t c nh có th có đệ ử ỡ ỏ ể ượ ốc t c đ tính kho ng 100.000 1 tri u phép tính/s.ộ ả ệ Máy đã có các h đi u hành đa chệ ề ương trình, nhi u ngề ườ ồi đ ng th i ho c theoờ ặ
ki u phân chia th i gian. K t qu t máy tính có th in ra tr c ti p máy in.ể ờ ế ả ừ ể ự ế ở
Đi n hình nh lo i IBM360 (M ) hay EC (Liên Xô), ể ư ạ ỹ
Th h 4 (1974 nay): ế ệ máy tính b t đ u có các vi m ch đa x lý có t c đắ ầ ạ ử ố ộ
Trang 14tính hàng ch c tri u đ n hàng t phép tính/s. Giai đo n này hình thành 2 lo i máyụ ệ ế ỷ ạ ạ tính chính: máy tính cá nhân đ bàn (Personal Computer PC) ho c xách tayể ặ (Laptop ho c Notebook computer) và các lo i máy tính chuyên nghi p th c hi nặ ạ ệ ự ệ
đa chương trình, đa x lý, hình thành các h th ng m ng máy tính (Computerử ệ ố ạ Networks), và các ng d ng phong phú đa phứ ụ ương ti n. ệ
Th h 5 (1990 nay): ế ệ b t đ u các nghiên c u t o ra các máy tính môắ ầ ứ ạ
ph ng các ho t đ ng c a não b và hành vi con ngỏ ạ ộ ủ ộ ười, có trí tu nhân t o v iệ ạ ớ
kh năng t suy di n phát tri n các tình hu ng nh n đả ự ễ ể ố ậ ược và h qu n lý ki nệ ả ế
th c c b n đ gi i quy t các bài toán đa d ng. ứ ơ ả ể ả ế ạ
Tài li u này s xét đ n các lo i PC (t c là th h 4) v i nh ng ch ng lo iệ ẽ ế ạ ứ ế ệ ớ ữ ủ ạ
hi n nay đang t n t i trên th trệ ồ ạ ị ường, đ ng th i có đ ý đ n m t vài công nghồ ờ ể ế ộ ệ trong tương lai g n. ầ
Thùng máy (Case) Bàn phím
(Keyboard)
Hình 1 Cấu trúc một
hệ (bộ) máy vi tính
tối thiểu.
Trang 15g i t t là ọ ắ mo. Monitor đ c coi là thi t b xu t chu n, là n i hi n th quá trìnhượ ế ị ấ ẩ ơ ể ị làm vi c c a máy vi tính, là b ph n giao ti p tr c quan gi a ngệ ủ ộ ậ ế ự ữ ười và máy.
Monitor có th có 2 ch đ làm vi c: văn b n và đ h aể ế ộ ệ ả ồ ọ
.a Ch đ văn b n (text): trong ch đ này monitor ch hi n th các dòngế ộ ả ế ộ ỉ ể ị
ch , s d ng mã ASCII, giao ti p gi a ngữ ử ụ ế ữ ười và máy nh các dòng l nh. Đây làờ ệ
trường h p c a các h đi u hành dòng l nh nh DOS.ợ ủ ệ ề ệ ư
.b Ch đ đ h a (graphic): trong ch đ này monitor hi n th các hìnhế ộ ồ ọ ế ộ ể ị
v , s d ng các công c v c a máy vi tính, giao ti p ngẽ ử ụ ụ ẽ ủ ế ười và máy nh giaoờ
di n đ h a (GUI). M t ví d v h đi u hành s d ng ch đ này là Windows.ệ ồ ọ ộ ụ ề ệ ề ử ụ ế ộ
ch đ đ h a, làm vi c v i các văn b n không ph i s d ng mã ký t nh
trong dòng l nh, mà s d ng mã khác cho ký t ệ ử ụ ự
.2 Bàn phím (keyboard)
Là thi t b nh p chu n, là b ph n chính dùng đ nh p d li u và giaoế ị ậ ẩ ộ ậ ể ậ ữ ệ
ti p gi a ngế ữ ười và máy trong ch đ dòng l nh. Sau này khi Windows phát tri nế ộ ệ ể thì thi t b nh p chính là chu t (mouse – mice), bàn phím ch còn là thi t b nh pế ị ậ ộ ỉ ế ị ậ
d li u d ng văn b n.ữ ệ ạ ả
.3 Thùng máy (Case)
Bên trong thùng máy là các thành ph n ch y u c a máy vi tính, trong đóầ ủ ế ủ quan trong hàng đ u là b ng m ch chính (bo m ch ch , bo m ch m ).ầ ả ạ ạ ủ ạ ẹ
Bảng mạch chủ (Main board)
Bộ nguồn (Power Supply)
Các khay chứa ổ đĩa (Drive Bay)
Trang 16Nh n đi n áp ngu n AC (thậ ệ ồ ường) t lừ ưới đi n công nghi p, th c hi nệ ệ ự ệ
bi n đ i thành m t hay nhi u m c đi n áp m t chi u DC đúng tiêu chu n cungế ổ ộ ề ứ ệ ộ ề ẩ
c p cho b ng m ch ch và các thi t b ph c v khác trong h máy vi tính.ấ ả ạ ủ ế ị ụ ụ ệ
Do đ c đi m làm vi c t n s cao và ngu n đi n áp l n nên b ngu nặ ể ệ ở ầ ố ồ ệ ớ ộ ồ
được đóng kín trong h p kim lo i, ch có các đ u dây d n ra.ộ ạ ỉ ầ ẫ
Cho đ n nay b ngu n máy vi tính đã tr i qua 3 lo i: AT, ATX, và AT lai.ế ộ ồ ả ạ
Lo i ngu n AT là ngu n xung đ n gi n dùng cho các lo i PC đ i đ u tiênạ ồ ồ ơ ả ạ ờ ầ cho đ n kho ng đ i pentium 2. Sau đó có lo i AT lai là ngu n ATX có các đ uế ả ờ ạ ồ ầ
ra phù h p v i ngu n AT và có tính năng t t máy nh ph n m m. Đ n đ i PCợ ớ ồ ắ ờ ầ ề ế ờ pentium 3 thì ngu n ATX tr nên ph bi n, đ c tr ng c a ngu n lo i này là khồ ở ổ ế ặ ư ủ ồ ạ ả năng đi u khi n ngu n th c s b ng ph n m m.ề ể ồ ự ự ằ ầ ề
.c Khay đĩa (Drive Bay)ổ
Trang 17Là h p kim lo i khác trên đó có các rãnh d n, các l b t vit đ có th dộ ạ ẫ ỗ ắ ể ể ễ dàng l p các đĩa. Có 2 lo i: 5 ¼ in và 3 ½ in.ắ ổ ạ
Lo i 3 ½ in trạ ước đây ch dùng cho đĩa m m 1.44MB, nh ng nay đỉ ổ ề ư ượ c
m r ng đ dùng cho các lo i đĩa c ng thông thở ộ ể ạ ổ ứ ường
Lo i 5 ¼ in trạ ước đây ch dùng cho đĩa 720KB ho c đĩa c ng, nayỉ ổ ặ ổ ứ
được dùng cho đĩa quang (CD, CDROM, DVD). N u mu n l p đĩa c ng vàoổ ế ố ắ ổ ứ khay này thì ph i có các rãnh d n riêng.ả ẫ
.d Các b ph n ph c v khác cho m t b máy vi tính làm vi c ngoài cácộ ậ ụ ụ ộ ộ ệ
b ph n chính còn có các b ph n ph c v nh công t c ngu n, nút nh n reset,ộ ậ ộ ậ ụ ụ ư ắ ồ ấ loa, đèn báo ngu n, đèn báo truy xu t đĩa, v.v các thành ph n này đồ ấ ầ ược n i đ nố ế
b ng m ch ch thông qua các dây có đ u jack c m vào b ng m ch.ả ạ ủ ầ ắ ả ạ
.4 Vi x lý ử
.4.1. T ng quátổ
Trong l ch s các h th ng tính toán t đ ng ho c đi u khi n t đ ng, banị ử ệ ố ự ộ ặ ề ể ự ộ
đ u ngầ ười ta quan tâm đ n vi c x lý t ng hành đ ng c th , ví d khi đi uế ệ ử ừ ộ ụ ể ụ ề khi n tay máy thì quan tâm đ n các hành đ ng: quay theo góc ngang , góc l chể ế ộ α ệ
đ ng và kho ng cách d. V i cách đi u khi n nh v y, n n công nghi p s nứ γ ả ớ ề ể ư ậ ề ệ ả
xu t t đ ng đã phát tri n m nh m Sau đó, cùng v i s phát tri n c a côngấ ự ộ ể ạ ẽ ớ ự ể ủ ngh linh ki n đi n t và lý thuy t tính toán, ngệ ệ ệ ử ế ười ta th y r ng các hành đ ngấ ằ ộ
c th theo cách x lý truy n th ng hoàn toàn có th mô hình hóa thành nhi uụ ể ử ề ố ể ề hành đ ng khác nhau bao g m m t s h u h n các hành vi chung và đó là s b tộ ồ ộ ố ữ ạ ự ắ
đ u c a k thu t vi x lý.ầ ủ ỹ ậ ử
K thu t vi x lý s d ng các vi m ch đ c bi t g i là b vi x lý (microỹ ậ ử ử ụ ạ ặ ệ ọ ộ ử Proccessor – μP), đ c tr ng c a b vi x lý là ho t đ ng theo t p l nhặ ư ủ ộ ử ạ ộ ậ ệ (instructions set) là t p h p các l nh cho vi x lý ho t đ ng và th c hi n m t sậ ợ ệ ử ạ ộ ự ệ ộ ố
h u h n các hành vi và do đó hoàn thành m t hành đ ng c th ữ ạ ộ ộ ụ ể
Trang 18Căn c theo t p l nh c a vi x lý, có 2 lo i vi x lý: là RISC và CISCứ ậ ệ ủ ử ạ ử
– Có t p l nh rút g n (RISC – ậ ệ ọ Reduce Instruction Set Computer) t p l nhậ ệ
có m t s lộ ố ượng ít l nh, và ch nh m vào gi i quy t m t s hành đ ng ph c vệ ỉ ằ ả ế ộ ố ộ ụ ụ
m t m c đích nh t đ nh, lo i vi x lý này độ ụ ấ ị ạ ử ược dùng trong các thi t b chuyênế ị
d ng nh đi u khi n m t b máy c th ho c th c hi n m t nhi m v c thụ ư ề ể ộ ộ ụ ể ặ ự ệ ộ ệ ụ ụ ể trong m t h th ng máy móc khác (độ ệ ố ược g i là các h th ng nhúng), ví d nhọ ệ ố ụ ư trong ôtô (car) hi n đ i có t i 40 ệ ạ ớ 50 vi x lý lo i này ho c đi n tho i di đ ngử ạ ặ ệ ạ ộ
hi n nay cũng dùng vi x lý RISC v.v ệ ử
– Có t p l nh đ y đ (CISC – ậ ệ ầ ủ Complex Instruction Set Computer) t pậ
l nh là hoàn ch nh, b o đ m đ vi x lý có th đi u khi n gi i quy t m i hànhệ ỉ ả ả ể ử ể ề ể ả ế ọ
đ ng, đây là lo i vi x lý độ ạ ử ược dùng trong các máy vi tính cá nhân PC và các máy tính nói chung
.1 H vi x lýệ ử
B n thân b vi x lý ch là m t linh ki n đi n t , đ ho t đ ng nó ph iả ộ ử ỉ ộ ệ ệ ử ể ạ ộ ả
được đ t trong m t h th ng nh t đ nh g i là h vi x lý.ặ ộ ệ ố ấ ị ọ ệ ử
Trung tâm c a h vi x lý là b vi x lý, thủ ệ ử ộ ử ường được g i v i tên là b xọ ớ ộ ử
lý trung tâm (CPU), nó đ m nh n nhi m v th c hi n x lý thông tin và đi uả ậ ệ ụ ự ệ ử ề khi n toàn b h th ng theo l nh.ể ộ ệ ố ệ
IO DEV (Input – Output DEVice) thi t b vào ra là b ph n nh n l nh c aế ị ộ ậ ậ ệ ủ
ngườ ử ụi s d ng, chuy n l nh cho vi x lý th c hi n, nh n l nh đi u khi n t viể ệ ử ự ệ ậ ệ ề ể ừ
x lý và chuy n các l nh này đ n các thi t b liên quan và th c hi n giao ti p,ử ể ệ ế ế ị ự ệ ế trao đ i v i các thi t b ngo i vi.ổ ớ ế ị ạ
MEM (MEMory) là b nh , có nhi m v l u tr chộ ớ ệ ụ ư ữ ương trình, d li uữ ệ trong quá trình máy tính làm vi c.ệ
Trang 19Liên l c gi a các thành ph n đó là bus. Ngoài ra do yêu c u trao đ i dạ ữ ầ ầ ổ ữ
li u t c đ cao, trong h vi x lý còn có thêm h th ng DMA là h th ng choệ ố ộ ệ ử ệ ố ệ ố phép trao đ i tr c ti p v i b nh ổ ự ế ớ ộ ớ
.a B x lý trung tâm (ộ ử Central Proccessing Unit là b vi x lý): nh n l nh,ộ ử ậ ệ phân tích l nh thành các giá tr thông tin hay đ a ch , th c hi n các phép toán (sệ ị ị ỉ ự ệ ố hay logic) và đ a k t qu ra b nh ư ế ả ộ ớ
.b Mem: b nh , bao g mộ ớ ồ
– ROM là b nh ch đ c, có nhi m v l u tr c đ nh các chộ ớ ỉ ọ ệ ụ ư ữ ố ị ương trình
c s đ v n hành máy vi tính mà d a vào đó các h đi u hành s đi u khi nơ ở ể ậ ự ệ ề ẽ ề ể máy vi tính
– RAM là b nh truy c p ng u nhiên, có nhi m v l u tr chộ ớ ậ ẫ ệ ụ ư ữ ương trình khi kh i ch y, l u tr thông tin trong quá trình chở ạ ư ữ ương trình làm vi cệ
.c IO DEV (Input – Output Device): có nhi m v giao ti p v i các thi t bệ ụ ế ớ ế ị ngo i vi (peripheral)ạ
DMA (Direct Memory Access): truy nh p tr c ti p b nhậ ự ế ộ ớ
Bình thường trong quá trình làm vi c, m i hành đ ng đ c (nh n d li u),ệ ọ ộ ọ ậ ữ ệ
vi t (ghi d li u) đ n b nh đ u ph i thông qua s đi u khi n c a vi x lý,ế ữ ệ ế ộ ớ ề ả ự ề ể ủ ử
nh ng khi có yêu c u trao đ i d li u v i t c đ cao ho c lư ầ ổ ữ ệ ớ ố ộ ặ ượng d li u l n thìữ ệ ớ quá trình đó kéo dài r t lâu, lãng phí năng l c x lý c a CPU, do đó khi có nh ngấ ự ử ủ ữ yêu c u nh v y thì có th cho phép thi t b vào ra đi u khi n tr c ti p vi c truyầ ư ậ ể ế ị ề ể ự ế ệ
CPU
BUS CHÍNH
Trang 20c p b nh mà không c n s đi u khi n c a CPU.ậ ộ ớ ầ ự ề ể ủ
.d Bus: là m t h th ng độ ệ ố ường dây d n tín hi u s , đẫ ệ ố ượ ổc t ch c dứ ướ i
d ng gói (pakage), m i l n chuy n d li u trên bus là chuy n tr n m t gói nhạ ỗ ầ ể ữ ệ ể ọ ộ ư
v y. Dung lậ ượng c a m t gói là m t s 2ủ ộ ộ ố n byte (1,2,4, ), và g i là đ r ng busọ ộ ộ (tính theo bit). Có 2 lo i busạ
– Bus song song (Parallel bus) m i đỗ ường dây có m t đ a ch bus c th , doộ ị ỉ ụ ể
đó ch truy n bit có tr ng s dùng nh đ a ch bus, ví d dây Dỉ ề ọ ố ư ị ỉ ụ o là đường dây bus
d li u, ch truy n d li u có tr ng s là 0. Nh v y, m t gói d li u s đữ ệ ỉ ề ữ ệ ọ ố ư ậ ộ ữ ệ ẽ ượ ctruy n đ ng th i (trong m t chu k bus), và do đó đ r ng bus là n bit thì ph i cóề ồ ờ ộ ỳ ộ ộ ả 2n đường dây
– Bus n i ti p (Serial bus) toàn b gói d li u ch đố ế ộ ữ ệ ỉ ược truy n trên 1 đôiề dây, m i bit đỗ ược truy n trong m t chu k nh p.ề ộ ỳ ị
.2 Nguyên lý ho t đ ng c a h vi x lýạ ộ ủ ệ ử
Khi kh i đ ng h th ng, các ph n m m ROM th c hi n nhi m v và b tở ộ ệ ố ầ ề ự ệ ệ ụ ắ
đ u n p h đi u hành. Khi h đi u hành đã n p xong vào b nh thì quá trìnhầ ạ ệ ề ệ ề ạ ộ ớ
kh i đ ng hoàn t t và h th ng s n sàng làm vi c.ở ộ ấ ệ ố ẵ ệ
H đi u hành có m t chệ ề ộ ương trình g i là trình giao ti p có nhi m v trungọ ế ệ ụ gian giao ti p gi a ngế ữ ười và máy. Khi ngườ ử ụi s d ng ra l nh thì trình giao ti pệ ế
d ch l nh thành mã máy, chị ệ ương trình tương ng đứ ược kích ho t và đạ ược n pạ vào b nh Các l nh c a chộ ớ ệ ủ ương trình được th c hi n m t cách tu n t theoự ệ ộ ầ ự đúng th t c a l nh trong chứ ự ủ ệ ương trình
Vi x lý phân tích và chuy n đ i t ng l nh thành : l nh vi x lý, d li uử ể ổ ừ ệ ệ ử ữ ệ
và đ a ch , r i th c hi n l nh đ x lý d li u theo đ a ch đị ỉ ồ ự ệ ệ ể ử ữ ệ ị ỉ ược ch đ nh trongỉ ị
l nh. Toàn b quá trình đó di n ra theo t ng chu k bus, và chu k này đệ ộ ễ ừ ỳ ỳ ược xác
đ nh nh b t o nh p (clock).ị ờ ộ ạ ị
D li u đã x lý đữ ệ ử ược đ a tr l i b nh , và chư ở ạ ộ ớ ương trình theo s ho tự ạ
Trang 21k t xu t đ n đ u ra .v.v ).ế ấ ế ầ
C ng (port) là m t khái ni m đ c bi t trong k thu t vi x lý. C ng là n iổ ộ ệ ặ ệ ỹ ậ ử ổ ơ
h vi x lý giao ti p v i các thi t b ngo i vi. M i thi t b ngo i vi đ u đệ ử ế ớ ế ị ạ ọ ế ị ạ ề ượ c
n i đ n h vi x lý thông qua các c ng.ố ế ệ ử ổ
C ng đổ ược đ c tr ng b i đ a ch , có th là đ a ch 8 bit ho c 16 bit, nóiặ ư ở ị ỉ ể ị ỉ ặ cách khác c ng đổ ược coi nh là m t thành ph n c a b nh D li u đ a đênư ộ ầ ủ ộ ớ ữ ệ ư
c ng nh l nh ổ ờ ệ out <đ a ch c ng> còn nh n d li u t c ng v i l nh ị ỉ ổ ậ ữ ệ ừ ổ ớ ệ In <đ a chị ỉ
c ng>. ổ
Nh v y, v i h vi x lý, thao tác th c s là thao tác trên các đ a ch như ậ ớ ệ ử ự ự ị ỉ ớ (các c ng cũng là ô nh ).ổ ớ
.4.2. Vi x lý 8086ử
.1 Gi i thi u chungớ ệ
Năm 1969 hãng Intel đ a ra m t vi m ch đ c bi t là 4004, là chip vi x lýư ộ ạ ặ ệ ử
đ u tiên có 4 bit d li u và 4 bit đ a ch , chip này nhanh chóng đầ ữ ệ ị ỉ ược đ a vào cácư máy tính tay thương m i. Thành công này đã làm cho Intel m nh d n đ a ra chipạ ạ ạ ư
th hai 8008 g n gi ng nh 4004 và là lo i 8 bit. Chip 8080 ra đ i sau đã đứ ầ ố ư ạ ờ ượ cIBM đ a vào trong máy tính đ bàn (Destop Computer), sau đó là chip 8085 r iư ể ồ
8086. K t khi vi x lý 8086 ra đ i và để ừ ử ờ ược IBM đ a vào máy vi tính (nămư 1981) thì b t đ u có thu t ng máy vi tính cá nhân (PC – Personal Computer), vàắ ầ ậ ữ
b t đ u cho m t th h các máy vi tính g i là x86 và sau đó là các lo i “trên cắ ầ ộ ế ệ ọ ạ ơ
s x86” (base x86). Do đó tài li u này s xét đ n vi x lý 8086 nh là c s choở ệ ẽ ế ử ư ơ ở máy vi tính
Các b vi x lý nêu trên ch ho t đ ng th c s v i các phép toán s h c vàộ ử ỉ ạ ộ ự ự ớ ố ọ logic, v i các phép toán s th c thì ph i dùng tính năng gi l p g n đúng, do đóớ ố ự ả ả ậ ầ
đ chính xác th p và th c hi n ch m. Song song v i các vi x lý lo i trên, cònộ ấ ự ệ ậ ớ ử ạ
có lo i vi x lý chuyên dùng đ tính toán s th c d u ch m đ ng, mà kh i đ uạ ử ể ố ự ấ ấ ộ ở ầ
Trang 22là lo i Intel 8087, sau đó là 80287, 80387, đ n dòng vi x lý 80486 (g i t t làạ ế ử ọ ắ dòng 486) thì b t đ u tích h p b tính toán d u ch m đ ng vào cùng vi x lý.ắ ầ ợ ộ ấ ấ ộ ử.2 S đ chân c a 8086ơ ồ ủ
Vi x lý Intel 8086 là lo i chip 16 bit d li u và 16 bit đ a ch trong và 20ử ạ ữ ệ ị ỉ bit đ a ch ngoài, ho t đ ng v i xung nh p 4.77MHz và có th đ nh đ a ch lên t iị ỉ ạ ộ ớ ị ể ị ị ỉ ớ 1MB. Chip 8086 có 40 chân, s đ các chân ch c năng nh b ng sauơ ồ ứ ư ả
– Min là ch đ ch có 1 chip 8086 (là ch đ thế ộ ỉ ế ộ ường dùng)
– Max là ch đ chi 8086 làm vi c song song v i chip 8087 (chuyên d ng)ế ộ ệ ớ ụ
U3
8086MAX
31 30 17
22 19
21 18
16 15 14 13 12 11 10 9
8 7 6 5 4 3 2 39
26 27 28
38 37 36 35
RQ/GT0 RQ/GT1 NMI
READY CLK
RST INTR
AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7
AD8 AD9 AD10 AD11 AD12 AD13 AD14 AD15
S0 S1 S2
A16/S3 A17/S4 A18/S5 A19/S6
Sơ đồ chân vi xử lý Intel 8086 TEST
RQ/GTO
MX RD BHE/S7
S2 S1 S0
LOCK IO
R DEN
INTA WR
Trang 23(MN/MX): n u chân này có giá tr 1 thì làm vi c ch đ Min, ngế ị ệ ở ế ộ ượ ạc l i là chế
đ Max.ộ
Các chân 2 16 và 39 là bus AD (t AD0 ừ AD15), được s d ng đử ụ ể truy n d li u (D) ho c đ a ch (A) và t i m t th i đi m thì ch truy n 1 lo i (Dề ữ ệ ặ ị ỉ ạ ộ ờ ể ỉ ề ạ
ho c A).ặ
Chân 17 là NMI (None Maskable Interrupt – ng t không che đ c) n uắ ượ ế
ng t là không che đắ ược thì chân này có m c 1.ứ
Chân 18 là INTR (INTerrupt Request – yêu c u ng t) khi có yêu c u ng tầ ắ ầ ắ thì chân này có m c 1.ứ
Chân 19 là CLK (clock) chân đ a xung nh p vào 8086 đ đ ng b cho m iư ị ể ồ ộ ọ thao tác
Chân 21 là RST (reset) khi chân này có m c 1 thì 8086 d ng ho t đ ng, xóaứ ừ ạ ộ toàn b tr ng thái hi n t i và kh i đ ng l i (chính là nút reset trên máy vi tính).ộ ạ ệ ạ ở ộ ạ
Chân 22 READY khi h th ng đã s n sàng thì có m c 1, báo cho vi x lýệ ố ẵ ứ ử
bi t là đã s n sàng làm vi c.ế ẵ ệ
Chân 23 TEST tín hi u vào m c th p (m c 0) ng v i l nh c a ph nệ ứ ấ ứ ứ ớ ệ ủ ầ
m m, n u chân này có m c 1 thì vi x lý t m d ng ch đ n khi chân này có m cề ế ứ ử ạ ừ ờ ế ứ 0
Chân 24 INTA (INTerrupt Aknowledge) cho phép ng t, khi có ng t thì viắ ắ
x lý nh n m t yêu c u ng t (INTR – chân 18), khi vi x lý chu n b xong thì nóử ậ ộ ầ ắ ử ẩ ị cho phép ng t và phát tín hi u ra chân 24 INTA v i m c 0.ắ ệ ớ ứ
Chân 25 ALE/S0 (Adress Latch Enable – cho phép ch t đ a ch ) chân nàyố ị ỉ
có 2 ý nghĩa: n u là m c 1 thì nó cho phép ch t đ a ch (t c là các giá tr trênế ứ ố ị ỉ ứ ị
đường bus hoàn toàn là đ a ch , n u là 0 thì nó bit 0 c a t thông tin tr ng thái (tị ỉ ế ủ ừ ạ ừ
tr ng thái status 8 bit S0,S1, ,S7).ạ
Chân 26 DEN/S1 (Data Enable) n u có m c 0 thì m thông đ ng cho tínế ứ ở ườ
Trang 24hi u là d li u đệ ữ ệ ược đ a lên đư ường truy n, còn S1 là bit c a t status.ề ủ ừ
Chân 27 DT/R (Data Transmit/Receive) truy n (transmit) hay nh nề ậ (receive) d li u, n u có m c 0 là m thông đữ ệ ế ứ ở ường d li u vào vi x lý, m c 1ữ ệ ử ứ
là d li u đữ ệ ược phát ra t vi x lý.ừ ử
Chân 28 M/IO (Memory/InputOutput) xác đ nh n i thao tác v i vi x lý làị ơ ớ ử thi t b vào ra (IO = 0) hay b nh (M = 1).ế ị ộ ớ
Chân 29 WR (WRite) hi u l c m c th p báo hi u là vi x lý đã phátệ ự ứ ấ ệ ử (truy n) d li u n đ nh lên bus.ề ữ ệ ổ ị
Chân 30 HLDA (HoLD Aknowledge – cho phép DMA) khi vi x lý đãử chu n b xong và s n sàng chuy n quy n s d ng, đi u khi n bus cho DMA thìẩ ị ẵ ể ề ử ụ ề ể chân này m c 1.ở ứ
Chân 31 HOLD (HOLD request – yêu c u DMA) khi c n DMA thì m chầ ầ ạ
đi u khi n DMA phát tín hi u đ n vi x lý, chân này có m c 1.ề ể ệ ế ử ứ
Chân 32 RD (ReaD) đ c có m c 0 là vi x lý s n sàng đ c d li u trênọ ứ ử ẵ ọ ữ ệ bus
Chân 33 đã nêu trên.ở
Chân 34 BHE/S7 (Bus High Enable) cho phép byte cao c a bus (D8 ủ D15)
được truy n d li uề ữ ệ
Chân 35 đ n chân 39 A/S khi chân 25 (ALE – cho phép truy n đ a ch ) thì 4ế ề ị ỉ chân này là 4 bit cao nh t c a đ a ch 20 bit, ngoài ra nó có ch c năng ki m soátấ ủ ị ỉ ứ ể bus
Chú ý r ng 8086 là vi x lý 16 bit d li u và đ a ch trong, nh ng có khằ ử ữ ệ ị ỉ ư ả năng ki m soát 20 bit đ a ch ngoài, vì v y nó có th đ nh đ a ch b nh lên t iể ị ỉ ậ ể ị ị ỉ ộ ớ ớ
210 byte = 1MB
Trước khi xét đ n s ho t đ ng c a vi x lý c n n m v ng các v n đế ự ạ ộ ủ ử ầ ắ ữ ấ ề sau:
Trang 25– Ô nh là m t vùng nh g m 8 bit (= 1 byte) liên ti p, đ c tr ng b i đ aớ ộ ớ ồ ế ặ ư ở ị
ch ô nh là s th t c a nó trong vùng nh (ô nh đ u tiên có đ a ch là 00h),ỉ ớ ố ứ ự ủ ớ ớ ầ ị ỉ
đ a ch ô nh luôn đị ỉ ớ ược ghi b ng s h 16.ằ ố ệ
– Các thao tác c s c a b vi x lý là ghi (write), đ c (read), truy nơ ở ủ ộ ử ọ ề (transmit) và nh n (receive) đ n (ho c t ) các ô nh ậ ế ặ ừ ớ
.3 C u trúc kh i c a vi x lý 8086ấ ố ủ ử
– BX thanh ghi c s (Base), thơ ở ường được dùng đ làm g c cho tính toánể ố
đ a ch c a m t đo n b nh ị ỉ ủ ộ ạ ộ ớ
– CX thanh ghi đ m (Count), thế ường được dùng đ ch a s đ mể ứ ố ế
– DX thanh ghi d li u (Data), thữ ệ ường được dùng đ ch a d li u đ u raể ứ ữ ệ ầ sau khi x lýử
– Khi s d ng nh thanh ghi 8 bit thì các thanh ghi đó có tên là AH, AL,ử ụ ư
BH, BL, CH, CL, DH, DL
Các thanh ghi ch s (Index Register) ỉ ố
Trang 26l u giá tr đ a ch c a d li u đíchư ị ị ỉ ủ ữ ệ
(n i ch a d li u đã đơ ứ ữ ệ ược x lý),ử
Các thanh ghi con tr (Pointer Register) ỏ
– Con tr ngăn x p SP(Stack Pointer) đỏ ế ược dùng đ l u đ a ch hi n t iể ư ị ỉ ệ ạ
c a đ nh ngăn x pủ ỉ ế
– Con tr c s BP (Base Pointer) đỏ ơ ở ược dùng để
l u đ a ch c a ngăn x p.ư ị ỉ ủ ế
Ngăn xếp (Stack) là một cấu trúc dữ liệu đặc biệt,
bao gồm một loạt 2n các ô nhớ liền nhau, dữ
liệu đưa vào theo từng 2 byte (= 1 từ word),
theo quy tắc từ vào sau (nạp sau) sẽ phải lấy
ra trước (vào sau ra trước – last in first out
LIFO)
–nạp dữ liệu : lệnh PUSH
–lấy dữ liệu ra : lệnh POP
Thanh ghi c (ờ Flags Register FR) là thanh ghi
16 bit nh ng ch s d ng 9 bit, m i bit mang thông tinư ỉ ử ụ ỗ
tr ng thái hi n t i ho c thông tin đi u khi n:ạ ệ ạ ặ ề ể
Bit 0: c C (carry – c nh ) = 1 khi phép c ng có nhờ ờ ớ ộ ớ
Bit 2: c P (parity – c ch n) = 1 khi s các con s 1 trong k t qu là sờ ờ ẵ ố ố ế ả ố
Đoạn O
Đoạn A
Đoạn F
0000h 0000h
SP = BP
POP 2 byte
SP = 104h Địa chỉ = 100h
Ví d l nh POP vào Stack ụ ệ
Thanh ghi cờ FR
Trang 27ch nẵ
Bit 4: c A (Auxiliary – c nh ph ) = 1 khi có nh ph (nh t bit 3 sangờ ờ ớ ụ ớ ụ ớ ừ bit 4 trong k t qu )ế ả
Bit 6: c Z (Zero – c zero) = 1 khi k t qu phép toán b ng 0ờ ờ ế ả ằ
Bit 7: c S (Sign – c d u) = 1 khi k t qu x lý là s âmờ ờ ấ ế ả ử ố
Bit 8: c T (Trap – c b y) = 1 đ t vi x lý vào ch đ ch y t ng l nhờ ờ ẫ ặ ử ế ộ ạ ừ ệ
đ n (l nh máy)ơ ệ
Bit 9: c I (Interrupt – c ng t) = 1 khi cho phép ng tờ ờ ắ ắ
Bit 10: c D (Direction – c hờ ờ ướng) = 1 thì hướng x lý là theo chi u tăngử ề
c a đ a ch nh ủ ị ỉ ớ
Bit 11: c O (Overflow – c tràn) = 1 là có s tràn s ờ ờ ự ố
Trang 28.b Đ n v giao ti p bus (BIU – ơ ị ế Bus Interface Unit) có nhi m v giao ti pệ ụ ế
gi a vi x lý và bus ngoài (chú ý r ng v i 8086 đ a ch bên trong vi x lý là 16ữ ử ằ ớ ị ỉ ử bit, còn đ a ch ngoài vi x lý là 20 bit), bao g m các thành ph n:ị ỉ ử ồ ầ
– B phát đ a ch (adress generator) phát ra đ a ch 20 bit t các đ a ch 16ộ ị ỉ ị ỉ ừ ị ỉ bit (segment: offset)
Các thanh ghi đ u là lo i 16 bit, nên c n s d ng 2 lo i đ a ch là đ a chề ạ ầ ử ụ ạ ị ỉ ị ỉ
đo n và đ a ch l ch (offset), còn bên ngoài 8086 dùng đ a ch 20 bit đ đ nh đ aạ ị ỉ ệ ị ỉ ể ị ị
ch cho 1MB b nh ỉ ộ ớ
AX BX CX DX SI DI SP BP
CS DS ES SS IP phát địa chỉ
BUS nội bộ
ALU Thanh ghi tạm
Thanh ghi cờ
Đ/k EU
Trang 29– Đo n b nh (Segment) là m t vùng nh liên t c dài 64 KB (2ạ ộ ớ ộ ớ ụ 16 bit),
đo n đ u tiên (là đo n s 0000h) b t đ u t ô nh đ u tiên c a b nhạ ầ ạ ố ắ ầ ừ ớ ầ ủ ộ ớ
– Đ a ch l ch là s th t c a m t ô nh trong m t đo n so v i đ u c aị ỉ ệ ố ứ ự ủ ộ ớ ộ ạ ớ ầ ủ
đo n đóạ
Nh v y đ a ch m t ô nh s đư ậ ị ỉ ộ ớ ẽ ược xác đ nh b i 2 con s là s th tị ở ố ố ứ ự
đo n và s th t ô nh trong đo n, đạ ố ứ ự ớ ạ ược ký hi u là ệ seg:off (đo n:l ch). Ví dạ ệ ụ
đ a ch 000Ah:0100h (nh trong hình trang trị ỉ ư ước) xác đ nh ô nh th 100h (=256)ị ớ ứ trong đo n A. ạ
M t chộ ương trình vi x lý, có các phân đo n: ch a mã l nh, ch a d li u,ử ạ ứ ệ ứ ữ ệ stack, và có th có d li u l n thì thêm phân đo n b sung, m i phân đo n nàyể ữ ệ ớ ạ ổ ỗ ạ
đ u c n các đ a ch đo n b nh c a nó.ề ầ ị ỉ ạ ộ ớ ủ
Dãy ch a l nh (Queue) là m t vùng nh đ c bi t dài 6 byte dùng đ t mứ ệ ộ ớ ặ ệ ể ạ
gi l nh nh n t b nh , byte l nh nào vào trữ ệ ậ ừ ộ ớ ệ ướ ẽ ược s đ c đ y ra trẩ ước (First In Fist Out – FIFO) và n u dãy này r i h n 3 byte thì l nh ti p theo s đ c đ aế ỗ ơ ệ ế ẽ ượ ư vào dãy
.4.3. B nh c a h 8086ộ ớ ủ ệ
.1 Khái quát v b nhề ộ ớ
Trang 30B nh trong g m 2 lo i :ộ ớ ồ ạ
ROM (Read – Only Memory b nh ch đ c) là lo i b nh đăc bi t,ộ ớ ỉ ọ ạ ộ ớ ệ trong quá trình làm vi c, h vi x lý ch đ c nó ch không ghi lên nó.ệ ệ ử ỉ ọ ứ
RAM (Random Access Memory b nh truy c p ng u nhiên) là lo i bộ ớ ậ ẫ ạ ộ
nh đớ ược dùng đ n p chể ạ ương trình, d li u và l u tr t m trong quá trình làmữ ệ ư ữ ạ
vi c.ệ
SRAM có c u trúc ph c t p nên đ t ti n nh ng có kh năng ho t đ ngấ ứ ạ ắ ề ư ả ạ ộ (ghi – đ c) r t nhanh, vì v y nó thọ ấ ậ ường đượ ử ục s d ng các v trí c n t c đ ghiở ị ầ ố ộ
đ c cao nh các thanh ghi ho c b nh cache (trong các vi x lý m i đây).ọ ư ặ ộ ớ ử ớ
DRAM có c u trúc đ n gi n, r ti n nh ng t c đ ho t đ ng th p h nấ ơ ả ẻ ề ư ố ộ ạ ộ ấ ơ nhi u, nên thề ường được dùng làm RAM h th ng. Do DRAM l u tr d li uệ ố ư ữ ữ ệ
b ng t đi n nên trong quá trình làm vi c giá tr đi n áp trên nó b gi m, t c làằ ụ ệ ệ ị ệ ị ả ứ
m c tín hi u b sai, vì v y DRAM c n có tín hi u xung n p bù cho s suy gi mứ ệ ị ậ ầ ệ ạ ự ả này g i là đi n áp ọ ệ làm t ươ (hay n p nh c) Refresh, t n s n p nh c g i là i ạ ắ ầ ố ạ ắ ọ Refresh Rate, đi u đó làm cho DRAM có t c đ làm vi c ch m h n r t nhi u soề ố ộ ệ ậ ơ ấ ề
A16 A19 AD0 AD15
Phân chia thời gian truyền địa chỉ – dữ liệu t
Trang 31li u b nh (read) và truy n d li u vào BIU g i là quá trình ệ ở ộ ớ ề ữ ệ ọ Fetch. Sau khi
được x lý, thông tin đử ượ ưc l u tr l i vào b nh g i là quá trình ghi (write),doở ạ ộ ớ ọ
đó bus ph i có kh năng truy n tín hi u theo c hai chi u.ả ả ề ệ ả ề
– AD0 AD15 là bus đ a ch – d li u, trên đó đ a ch và d li u đị ỉ ữ ệ ị ỉ ữ ệ ượ ctruy n trong 2 kho ng th i gian khác nhau tùy thu c vào s đi u khi n c a vi xề ả ờ ộ ự ề ể ủ ử lý
– A16 A19 là bus đ a ch cho 4 bit đ a ch m r ngị ỉ ị ỉ ở ộ
– ALE: xung tín hi u cho phép ch t đ a ch , sệ ố ị ỉ ườn âm c a xung này là tínủ
hi u m ch t đ a ch nhệ ở ố ị ỉ ớ
– WR & RD: tín hi u có hi u l c m c th p, làm cho các bit (byte) nhệ ệ ự ở ứ ấ ớ
được phép truy c p (access), chú ý r ng 2 tín hi u này không bao gi có cùng giáậ ằ ệ ờ
tr th pị ấ
– M/IO: tín hi u xác đ nh hệ ị ướng thao tác c a vi x lý là b nh n u ủ ử ộ ớ ế ở
m c th p, là thi t b vào ra n u m c caoứ ấ ế ị ế ở ứ
– DEN: các b ph n trong h th ng n i vào bus đ u ph i qua m ch đ mộ ậ ệ ố ố ề ả ạ ệ
là m t m ch 3 tr ng thái (tree stat), DEN là tín hi u m c th p đ m m ch đ m ộ ạ ạ ệ ứ ấ ể ở ạ ệ
– DT/R: đi u khi n hề ể ướng di chuy n c a d li u, n u m c th p thìể ủ ữ ệ ế ở ứ ấ
hướng d li u đi vào vi x lý, n u m c cao thì hữ ệ ử ế ở ứ ướng là t vi x lý phát raừ ử
Trong các máy vi tính ban đ u, m i vi m ch (IC) nh ch có dung lầ ỗ ạ ớ ỉ ượ ng8K, và b nh máy vi tính độ ớ ược g n c đ nh trên b ng m ch ch Đ n khi xu tắ ố ị ả ạ ủ ế ấ
hi n PC thì cũng có thêm các rãnh (slot) đ m r ng b nh , m i rãnh dùng đệ ể ở ộ ộ ớ ỗ ể
c m thêm m t b ng m ch nh , trên đó g n c đ nh nhi u IC nh t o thành m tắ ộ ả ạ ỏ ắ ố ị ề ớ ạ ộ thanh, và đ n nay dung lế ượng c a m i thanh nh đã có th đ t t i vài GB.ủ ỗ ớ ể ạ ớ
.a ROM: vi t t t c a ch Read – Only Memory, là b nh ch đ c. Trongế ắ ủ ữ ộ ớ ỉ ọ
th i k đ u, ROM là b nh c ng đờ ỳ ầ ộ ớ ứ ược n p m t l n nhà máy, n i dung khôngạ ộ ầ ở ộ
th thay đ i trong quá trình s d ng. Sau đó, xu t hi n PROM là lo i có th l pể ổ ử ụ ấ ệ ạ ể ậ
Trang 32trình (n p l i) nh máy đ t PROM (dùng tia c c tím). Ti p theo là EPROM, r iạ ạ ờ ố ự ế ồ EEPROM là các lo i ROM có th ghi xóa nh m ch đi n đ c bi t, và đ n nayạ ể ờ ạ ệ ặ ệ ế
ph bi n là các lo i ROM flash là lo i ROM có th d dàng n p xóa ngay trênổ ế ạ ạ ể ễ ạ máy vi tính nh m t chờ ộ ương trình đ c bi t g i là chặ ệ ọ ương trình ROM update
Khi kh i đ ng máy vi tính, d li u trong ROM đở ộ ữ ệ ược xác đ nh đ a ch là tị ị ỉ ừ F0000h đ n FFFFFh, nh ng ROM có t c đ truy c p th p, đ tăng t c đ truyế ư ố ộ ậ ấ ể ố ộ
c p có th copy các n i dung này vào RAM có t c đ cao h n, b ng cách xácậ ể ộ ố ộ ơ ằ
đ nh trong CMOS Setup là ch n ch đ shadown cho các đ a ch trên.ị ọ ế ộ ị ỉ
ROM g m có 2 b ph n là CMOS ROM và BIOSROM. ồ ộ ậ
– CMOS ROM là m t b ph n đ c bi t trong ROM, có th ghi l i độ ộ ậ ặ ệ ể ạ ượ c
gi ng nh RAM và c n có ngu n đi n riêng đ nuôi gi thông tin, nh ng thôngố ư ầ ồ ệ ể ữ ữ tin ghi trong CMOS ROM là các thông tin c b n v ph n c ng máy vi tính, vơ ả ề ầ ứ ề ngày tháng v.v là nh ng thông tin c n thi t đ kh i đ ng máy vi tính và h đi uữ ầ ế ể ở ộ ệ ề hành.
– BIOSROM là n i l u tr các ph n m m c s đ v n hành b máy viơ ư ữ ầ ề ơ ở ể ậ ộ tính, d a trên đó các h đi u hành là n n giao ti p đ ngự ệ ề ề ế ể ườ ử ụi s d ng làm vi cệ
v i máy vi tính, đó là các chớ ương trình con ph c v ng t và các chụ ụ ắ ương trình khác đi u khi n ph n c ng c s c a máy vi tính nh chipset, DMA, đi u khi nề ể ầ ứ ơ ở ủ ư ề ể các đĩa v.v ổ
.b RAM: vi t t t c a ch ế ắ ủ ữ Random Access Memory là b nh truy c pộ ớ ậ
ng u nhiên.ẫ
Trong l ch s phát tri n, các th h máy tính đi n t trị ử ể ế ệ ệ ử ước đây đ u sề ử
d ng b nh t tính g m các xuy n t Đ c đi m c a lo i b nh này là t c đụ ộ ớ ừ ồ ế ừ ặ ể ủ ạ ộ ớ ố ộ
ch m, kích thậ ướ ớc l n. S phát tri n c a k thu t m ch vi đi n t đã cho phépự ể ủ ỹ ậ ạ ệ ử
t o ra các triger (trig ) – Flip Flop có kích thạ ơ ước nh làm n n t ng cho các ICỏ ề ả
nh , t đó b nh bán d n thay th cho b nh t tính, tuy nhiên b nh bán d nớ ừ ộ ớ ẫ ế ộ ớ ừ ộ ớ ẫ
Trang 33m t đi n ngu n cung c p là cũng m t hoàn toàn d li u l u tr trên nó.ấ ệ ồ ấ ấ ữ ệ ư ữ
C n phân bi t đ r ng bus vàầ ệ ộ ộ
băng thông c a RAM Đ r ng busủ ộ ộ
(buswith) là s bit trong m t gói dố ộ ữ
li u đệ ược chuy n đ n (hay đi kh i)ể ế ỏ
RAM, còn đ r ng băng thôngộ ộ
(bandwith) liên quan đ n t c đế ố ộ
truy n d li u.ề ữ ệ
.4.4. H th ng t o nh pệ ố ạ ị
.1 Khái quát
H vi x lý ph i có xung nh p đ đ ng b m i ho t đ ng, dãy xung nàyệ ử ả ị ể ồ ộ ọ ạ ộ
d a trên m t b dao đ ng có t n s nh t đ nh, v i 8086 thì t n s này là 5MHz.ự ộ ộ ộ ầ ố ấ ị ớ ầ ố
Do đó m t chu k dao đ ng (g i là chu k nh p ho c g i t t là nh p) là T = 1/f =ộ ỳ ộ ọ ỳ ị ặ ọ ắ ị 1/5MHz = 200ns
B vi x lý ho t đ ng theo các chu k g i là chu k bus, có chu k busộ ử ạ ộ ỳ ọ ỳ ỳ
Trang 34đ c (g i là chu k đ c), chu k bus ghi (chu k ghi) và chu k truy n.ọ ọ ỳ ọ ỳ ỳ ỳ ề
Thông thường m i chu k bus c n 4 nh p và d ng tín hi u th hi n trênỗ ỳ ầ ị ạ ệ ể ệ hình v ẽ
.2 Chu k đ c ỳ ọ b t đ u t khi đ c thông tin (t b nh ho c t IO tùy theoắ ầ ừ ọ ừ ộ ớ ặ ừ giá tr c a M/IO) ị ủ
– T1: đ a ch c n đ c đị ỉ ầ ọ ược đ a lên bus, đ ng th i tín hi u ALE đư ồ ờ ệ ược phát, khi đ a ch đã lên bus đ y đ thì ALE ị ỉ ầ ủ 0 và đây chính là tín hi u cho phép ch tệ ố
đ a ch , đ u nh p này, tín hi u DT/R có giá tr là 0 (hị ỉ ở ầ ị ệ ị ướng d li u là vào vi xữ ệ ử lý), ngoài ra RD = 1
– T2: các đường dây bus chuy n sang ch c năng th hai, c th các busể ứ ứ ụ ể A16 A19 mang thông tin tr ng thái (S3 ạ S6), các dây AD b t đ u chuy nắ ầ ể sang truy n d li u, do DT/R không thay đ i (= 0) nên d li u chuy n vào vi xề ữ ệ ổ ữ ệ ể ử
– T4: vi x lý đ c d li u trên bus, k t thúc nh p này, DT/R = 1 và RD = 1ử ọ ữ ệ ế ị
ch ra r ng các đỉ ằ ường bus chuy n v tr ng thái chu n b cho chu k bus ti p sau.ể ề ạ ẩ ị ỳ ế
.3 Chu k ghi ỳ là chu k mà vi x lý th c hi n ghi d li u lên b nh (M/IOỳ ử ự ệ ữ ệ ộ ớ
= 0) hay ra c ng IO (M/IO = 1), lổ ược đ th i gian c a chu k này tồ ờ ủ ỳ ương t nhự ư
Trang 35.4 Đ tr gi i mã đ a ch : ộ ễ ả ị ỉ
Đ có th xác đ nh chính xác ô nh nào để ể ị ớ ượ ử ục s d ng (Select) thì c n cóầ
b gi i mã đ a ch Tín hi u đ a ch độ ả ị ỉ ệ ị ỉ ược truy n theo đề ường bus đ n b gi i mãế ộ ả
đ a ch , t i đây đ a ch đị ỉ ạ ị ỉ ược chuy n thành tín hi u ch n chip (Chip Select – CS),ể ệ ọ
do đó t o ra m t kho ng th i gian tr g i là Latency, bao g m CAS Latency vàạ ộ ả ờ ễ ọ ồ RAS Latency, đ tr này càng nh càng t t, trong các máy vi tính hi n đ i, độ ễ ỏ ố ệ ạ ộ
tr này đễ ược đi u khi n t đ ng (trong kho ng 50 ề ể ự ộ ả 70 nsec)
th i gian xung b ng 1 chu k dãy xung fờ ằ ỳ x
– PCLK (Peripheral CLocK) là tín hi u th i gian cho thi t b ngo i vi, cóệ ờ ế ị ạ
Sơ đồ chân của IC Intel 8284A
DT/R
DEN
Dữ liệu Địa chỉ
Sơ đồ phân định thời gian cho vi xử lý
Thạch anh dao động
Trang 36BỘ NHỚ hoặc
IO DEV
Hệ thống kiểm soát BUS
VXL 8086
74LS373 74LS245 8258
t n s b ng n a t n s nh p.ầ ố ằ ử ầ ố ị
– F/C là đ u vào đi u khi n, n u có xung m c 1 thì m ch dùng t n s daoầ ề ể ế ứ ạ ầ ố
đ ng ngoài đ a vào chân EFI (chân 14), n u m c 0 thì s d ng t n s th ch anhộ ư ế ứ ử ụ ầ ố ạ
– CSYNK (Clock SYNChronization) được s d ng đ đ ng b các ICử ụ ể ồ ộ
Vi x lý 8086 đử ược đ ng b b i chíp t o nh p 8284 nh trên đã nêu.ồ ộ ở ạ ị ư
H th ng ki m soát bus bao g m 3 IC là:ệ ố ể ồ
– 8258 là vi m ch phát các tín hi u ki m soát bus.ạ ệ ể
H th ng bus là đệ ố ường liên l c hai chi u gi a vi x lý và các thi t bạ ề ữ ử ế ị
fx = 14.31828 MHz
CLK ( fCLK =1/3fx )
Lược đồ phân chia tần số - thời gian
PCLK (fPCLK =1/2 fCLK )
Trang 37chi u. Đ đ ng b các ho t đ ng đó, vi m ch ch t có nhi m v b o đ m dề ể ồ ộ ạ ộ ạ ố ệ ụ ả ả ữ
li u trên bus là n đ nh, không b tác đ ng b i các tín hi u khác, vi m ch thu phátệ ổ ị ị ộ ở ệ ạ bus đ m b o chu n b t t đả ả ẩ ị ố ường truy n theo đúng hề ướng (thu hay phát) và toàn
b độ ược đ ng b b i vi m ch ki m soát bus.ồ ộ ở ạ ể
.4.6. Chương trình và chương trình con
.1 Chương trình máy vi tính
Vi x lý có m t t p các l nh c a nó g i làử ộ ậ ệ ủ ọ
t p l nh vi x lý (Instruction Set – IS). Đ đi uậ ệ ử ể ề
khi n vi x lý ho t đ ng nh mong mu n thìể ử ạ ộ ư ố
ph i l p trình sao cho vi x lý th c hi n l n lả ậ ử ự ệ ầ ượ t
các l nh vi x lý (còn g i là các vi l nh –ệ ử ọ ệ
microcode). T p h p các l nh theo m t trình tậ ợ ệ ộ ự
nh t đ nh (g i là thu t toán – algorithm) t o thànhấ ị ọ ậ ạ
m t chộ ương trình máy tính
Khi chương trình được g i, đ u tiên nó đọ ầ ược n p lên b nh và đạ ộ ớ ược hệ
đi u hành phân b theo các vùng: vùng mã l nh, vùng d li u, vùng ngăn x p,ề ổ ệ ữ ệ ế sau đó vi x lý s l y t ng l nh theo l n lử ẽ ấ ừ ệ ầ ượt trên b nh vùng mã l nh c aộ ớ ở ệ ủ
chương trình. V i 8086 các chớ ương trình thường có kích thước nh , nên đỏ ượ c
b trí trên b nh nh hình v ố ộ ớ ư ẽ
Đ u ph n b nh dành cho chầ ầ ộ ớ ương trình là Header (t m g i là tiêu đ ),ạ ọ ề tùy theo lo i chạ ương trình mà có kích thước và n i dung khác nhau, nh ng chộ ư ủ
y u là mang thông tin c b n v chế ơ ả ề ương trình. Ti p theo là vùng mã l nh, sauế ệ
n a là vùng d li u, hai vùng này đữ ữ ệ ược b trí trên cùng m t đo n b nh do đóố ộ ạ ộ ớ
CS (đ a ch đo n mã l nh) = DS (đ a ch đo n d li u). N u chị ỉ ạ ệ ị ỉ ạ ữ ệ ế ương trình có
lượng d li u l n thì h đi u hành s c p thêm cho nó đo n b nh b sung vàữ ệ ớ ệ ề ẽ ấ ạ ộ ớ ổ
đo n này có đ a ch là ES khác v i đo n mã l nh, n u không có thì ES = CS.ạ ị ỉ ớ ạ ệ ế
CS =DS =ES =SS Header
Trang 38nh hình v , ti p theo t ng l nh đư ẽ ế ừ ệ ược n p vào vi x lý và th c hi n theo đúngạ ử ự ệ trình t trên b nh và đự ộ ớ ược g i là th c hi n tu n t ọ ự ệ ầ ự
.2 Chương trình con
Chương trình con thường được g i v i các thu t ng routine, function,ọ ớ ậ ữ procedure và được d ch là ti u trình, hàm, th t c và tùy theo t ng ngôn ng l pị ể ủ ụ ừ ữ ậ trình mà s d ng các thu t ng đó, nh ng t t c đ u chung m t ý nghĩa.ử ụ ậ ữ ư ấ ả ề ộ
Trong quá trình th c hi n l nh, trong chự ệ ệ ương trình có th có nh ng ph nể ữ ầ (ho c môdun) c n th c hi n nhi u l n. Đ gi i quy t v n đ này v i m c đíchặ ầ ự ệ ề ầ ể ả ế ấ ề ớ ụ
t i u hóa chố ư ương trình, có th s d ng các c u trúc l p, tuy nhiên nhi u khi cácể ử ụ ấ ặ ề
c u trúc l p cũng không gi i quy t đấ ặ ả ế ược th c s v n đ , ngự ự ấ ề ười ta đ a ra m tư ộ
c u trúc cho các môđun này và g i là các chấ ọ ương trình con
Chương trình con là m t thành ph n đ c bi t c a chộ ầ ặ ệ ủ ương trình, nó có c uấ trúc r t gi ng nh chấ ố ư ương trình, s khác bi t là nó n m trong không gian nhự ệ ằ ớ
c a chủ ương trình. Chương trình ch a chứ ương trình con g i là chọ ương trình chính, chương trình con có th là các hàm, th t c (nh trong Turbo Pascal) hayể ủ ụ ư
l nh g i (routine, subroutine trong Assemble).ệ ọ
.3 Ho t đ ng khi có chạ ộ ương trình con
N u có chế ương trình con thì chương trình chính c n có l nh g i chầ ệ ọ ươ ngtrình con, và là l nh “ệ call <label>”, đây label có th là tên ch ng trình conở ể ươ
ho c đ a ch c a đi m b t đ u chặ ị ỉ ủ ể ắ ầ ương trình con
Khi có l nh call thì vi x lý s th c hi n:ệ ử ẽ ự ệ
– T m d ng th c hi n chạ ừ ự ệ ương trình chính theo trình t tu n tự ầ ự
– T đ ng l u c t IP (đ a ch c a l nh ti p theo c n th c hi n) vào ngănự ộ ư ấ ị ỉ ủ ệ ế ầ ự ệ
x pế
– T đ ng l u c t các đ a ch đo n c a chự ộ ư ấ ị ỉ ạ ủ ương trình chính (các đ a ch CS,ị ỉ
DS, ES, SS) vào ngăn x pế
Trang 39k t thúc chế ương trình con (nh có l nh return) thì chu n b đ tr v chờ ệ ẩ ị ể ở ề ươ ngtrình chính
– Vi x lý đi u khi n khôi ph c các thanh ghi đ a ch đo n (CS, DS, ES,ử ề ể ụ ị ỉ ạ SS)
– Khôi ph c đ a ch l nh IP và th c hi n l nh t i đây.ụ ị ỉ ệ ự ệ ệ ạ
V i cách th c hi n nh v y, khi làm vi c v i chớ ự ệ ư ậ ệ ớ ương trình con, h vi xệ ử
lý luôn luôn tr v đúng v trí trở ề ị ước khi nó th c hi n chự ệ ương trình con. Đi uề
c n nh là chầ ớ ương trình con s s d ng các thanh ghi khác theo m c đích c a nóẽ ử ụ ụ ủ (gi ng nh chố ư ương trình chính), nên n u có các d li u c n trao đ i gi aế ữ ệ ầ ổ ữ
chương trình chính và chương trình con thì ph i s d ng k thu t chuy n giaoả ử ụ ỹ ậ ể
d li u.ữ ệ
.4.7. Vi x lý pentium ử
Các máy vi tính ph bi n hi n nay ph n l n d a trên c s x86 (base x86),ổ ế ệ ầ ớ ự ơ ở
t c là c u trúc c s là b vi x lý 8086. Dòng máy x86 phát tri n qua các th hứ ấ ơ ở ộ ử ể ế ệ
286, 386, 486 r i pentium. Đ n dòng pentium thì c u trúc và ho t đ ng c a vi xồ ế ấ ạ ộ ủ ử
lý đã được thay đ i m nh m , nh ng v n d a trên x86, nh ng có nh ng đ c tínhổ ạ ẽ ư ẫ ự ư ữ ặ tiên ti n vế ượ ột tr i. B ng sau cho th y s phát tri n v c u trúc đi n t bên trongả ấ ự ể ề ấ ệ ử các vi x lý c a Intel.ử ủ
Trang 40486DX 5v 32bit 32bit 4G 8K 1,200,000 1/89486SL** 3.3v 32bit 32bit 4G 8K 1,400,000 11/92
486DX4 3.3v 32bit 32bit 4G 16K 1,600,000 2/94Pentium 5v 32bit 32bit 4G 2x16K 3,100,000 1/95Pen
60/66 5v 64bit 32bit 4G 2x8K 3,100,000 3/93Pen 75+ 3.3v 64bit 32bit 4G 2x8K 3,300,000 3/94Pen Pro 2.9v 64bit 36bit 64G 2x8K 5,500,000
Các lo i Pentium II có t c đ xung nh p t 233MHz đ n 450 MHz khôngạ ố ộ ị ừ ế
t n t i lâu vì đồ ạ ược thay th b i Pentium III và sau đó là Pentium IV nh đế ở ư ượ cnêu trong b ng sauả
Tên mã Tech T c đ (GHz)ố ộ Bus (MHz) Cache Transistors Năm SXPen
III
Katmai 0.25 450550 MHz 100 512 9,500,000 1999Coppermin
e 0.18 533 733MHz 100/133 256 28,100,000 1999Coppermin