KTMT lý thuyết

Màu nền
Font chữ
Font size
Chiều cao dòng

Chuong II: BIEU DIEN THONG TIN MAY TINH

I. HE NHI PHAN (1) (Binary)

I.1. Khai niem

n                          He nhi phan hay he dem co so 2 chi co hai con so 0 va 1.

n                          Do la he dem dua theo vi tri. Gia tri cua mot so bat ky nao do tuy thuoc vao vi tri cua no.

n                          Cac vi tri co trong so bang bac luy thua cua co so 2.

n                          Cham co so duoc goi la cham nhi phan trong he dem co so 2. Moi mot con so nhi phan duoc goi la mot bit (BInary digiT).

n                          Bit ngoai cung ben trai la bit co trong so lon nhat (MSB, Most Significant Bit) va bit ngoai cung ben phai la bit co trong so nho nhat (LSB, Least Significant Bit) nhu duoi day:

23         22         21        20         2-1      2-2

                  MSB          1    0    1     0  .  1     1      LSB

                                                     Cham nhi phan

n                          So nhi phan (1010.11)2 co the bieu dien thanh:

                (1010.11)2 = 1*23 + 0*22 + 1*21 + 0*20 + 1*2-1 + 1*2-2 =

                (10.75)10.

n                          Chu y: dung dau ngoac don va chi so duoi de ky hieu co so cua he dem.

I.2. Bien doi tu nhi phan sang thap phan

n                          Vi du : Bien doi so nhi phan (11001)2 thanh so thap phan:

                Trong so vi tri:  24   23   22   21   20

                Gia tri vi tri:     16   8    4     2    1

                So nhi phan:      1    1    0     0    1

n                                  So thap phan: 1*24 + 1*23 + 0*22 + 0*21 + 1*20 = (25)10  

I.3. Bien doi thap phan thanh nhi phan

n                          De thuc hien viec doi tu thap phan sang nhi phan, ta ap dung phuong phap chia lap nhu sau: lay so thap phan chia cho co so de thu duoc mot thuong so va so du.

n                          So du duoc ghi lai de lam mot thanh to cua so nhi phan.

n                          Sau do, so thuong lai duoc chia cho co so mot lan nua de co thuong so thu 2 va so du thu 2.

n                          So du thu hai la con so nhi phan thu hai.

n                          Qua trinh tiep dien cho den khi so thuong bang 0. 

Vi du 1: Bien doi so thap phan (29)10 thanh nhi phan:

n                            29/2 = 14 + 1(LSB)

n                            14/2 = 7 + 0

n                            7/2   = 3 + 1

n                            3/2   =  1 + 1

n                            1/2   =  0 + 1(MSB)

n                            Vay (29)10 = (1101)2 .

n                            Doi voi phan le cua cac so thap phan, so le duoc nhan voi co so va so nho duoc ghi lai lam mot so nhi phan. Trong qua trinh bien doi, so nho dau chinh la bit MSB va so nho cuoi la bit LSB.

Vi du 2: Bien doi so thap phan (0.625)10 thanh nhi phan:

n                          0.625*2 = 1.250. So nho la 1, la bit MSB.

n                          0.250*2 = 0.500. So nho la 0

n                          0.500*2 = 1.000. So nho la 1, la bit LSB.

n                          Vay : (0.625)10 = (0.101)2.

n            II.1. Khai niem:

n            Cac he may tinh hien dai thuong dung mot he dem khac la he thap luc phan.

n            He thap luc phan la he dem dua vao vi tri voi co so la 16

n            He nay dung cac con so tu 0 den 9 va cac ky tu tu A den F nhu trong bang sau:

n            II.2. Bien doi thap luc phan thanh thap phan.

n            Cac so thap luc phan co the duoc bien doi thanh thap phan bang cach tinh tong cua cac con so nhan voi gia tri vi tri cua no.

n            Vi du : Bien doi cac so a.(5B)16.

n            So thap luc phan:            5           B

n            Trong so vi tri:      161       160

n            Gia tri vi tri :           16        1

n            So thap phan:      5*16 + B*1 = (91)10.

n            Vi du : b. (2AF)16 thanh thap phan.

n            So thap luc phan:            2           A         F                    

n             Trong so vi tri:      162       161       160

n            Gia tri vi tri :          256      16        1

n            So thap phan:      2*256 + A*16  + F*1 = (687)10.

n            II.3. Bien doi thap phan thanh thap luc phan.

n            De bien doi cac so thap phan thanh thap luc phan, ta su dung phuong phap chia lap, voi co so 16.

n            Vi du : Bien doi  (1776)10 thanh thap luc phan.

                        1776/16 = 111 + 0 (LSB).

                        111/16   = 6 + 15 hoac F.

6/16       = 0 + 6 (MSB).

So thap luc phan: (6F0)16.

n            II.4. Bien doi thap luc phan thanh nhi phan. 

n            Cac so thap luc phan rat de doi thanh nhi phan.

n            Thuc ra cac so thap luc phan cung chi la mot cach bieu dien cac so nhi phan thuan loi hon ma thoi

n            De doi cac so thap luc phan thanh nhi phan, chi can thay the mot cach don gian tung con so thap luc phan bang bon bit nhi phan tuong duong cua no.

n            Vi du: Doi so thap luc (DF6)16 thanh nhi phan: 

n            D                 F           6

        1101         1111     0110

n            (DF6)16 = (110111110110)2.

n            II.5. Bien doi nhi phan thanh thap luc phan. 

n            De bien doi mot so nhi phan thanh so thap luc phan tuong duong thi chi can gop lai thanh tung nhom gom 4 bit nhi phan, bat  dau tu dau cham nhi phan.

n            Vi du: Bien doi so nhi phan (1111101000010000)2 thanh thap luc phan.

n            1111    1010   0001   0000

        F           A       1         0     à  So thap luc phan: (FA10)16.

n            Giua he thap phan va he nhi phan con ton tai mot he lai: he BCD cho cac so he thap phan ma hoa bang he nhi phan, rat thich hop cho cac thiet bi do co them phan hien thi so o dau ra dung cac loai den hien so khac nhau.

n            O day dung bon so he nhi phan (bon bit) de ma hoa mot so he thap phan co gia tri nam trong khoang tu 0..9.

n            Nhu vay o day ta khong dung het cac to hop co the co cua 4 bit; vi tam quan trong cua cac so BCD nen cac bo vi xu ly thuong co cac lenh thao tac voi chung.

n            Vi du: (35)10 = (00110101)2.

n            Tat ca cac so cung nhu cac ma ... trong may vi tinh deu duoc bieu dien bang cac chu so nhi phan.

n            De bieu dien cac so nguyen khong dau, nguoi ta dung n bit.

n            Tuong ung voi do dai cua so bit duoc su dung, ta co cac khoang gia tri xac dinh nhu sau:

n            So bit                   Khoang gia tri

        n bit:                     0..  2n - 1

        8 bit                      0..  255 Byte

        16 bit                    0..  65535 Word

n            Nguoi ta su dung bit cao nhat bieu dien dau; bit dau co gia tri 0 tuong ung voi so nguyen duong, bit dau co gia tri 1 bieu dien so am.

n            Nhu vay khoang gia tri so duoc bieu dien se duoc tinh nhu sau:

n            So bit                   Khoang gia tri:

        n bit                      2n-1-1

        8 bit                      -128..  127 Short integer

        16 bit                    -32768..  32767  Integer

        32 bit           -231.. 231-1 (-2147483648..  2147483647) Long integer

n            Co hai cach bieu dien so thuc trong mot he nhi phan: so co dau cham co dinh (fied point number) va so co dau cham dong (floating point number).

n            Cach thu nhat duoc dung trong nhung bo VXL (micro processor) hay nhung bo vi dieu khien (micro controller) cu.

n            Cach thu 2 hay duoc dung hien nay co do chinh xac cao.

n            Doi voi cach bieu dien so thuc dau cham dong co kha nang hieu chinh theo gia tri cua so thuc.

n              Cach bieu dien chung cho moi he dem nhu sau:          R = m.Be.

n              Trong do m la phan dinh tri, trong he thap phan gia tri tuyet doi cua no phai luon nho hon 1. So e la phan mu va B la co so cua he dem.

n              Co hai chuan dinh dang dau cham dong quan trong la: chuan MSBIN cua Microsoft va chuan IEEE. Ca hai chuan nay deu dung he dem nhi phan.

n              Thuong dung la theo tieu chuan bieu dien so thuc cua IEEE 754-1985(Institute of Electric & Electronic Engineers), la chuan duoc moi hang chap nhan va duoc dung trong bo xu ly toan hoc cua Intel

n              Bit dau nam tai vi tri cao nhat; kich thuoc phan mu va khuon dang phan dinh tri thay doi theo tung loai so thuc.

n            Bang ma ASCII. (American Standard Code for Information Interchange).

n            Nguoi ta da xay dung bo ma de bieu dien cho cac ky tu cung nhu cac con so Va cac ky hieu dac biet khac.

n            Cac ma do goi  la bo  ma ky tu va so. Bang ma ASCII la ma 7 bit duoc dung pho bien trong cac he may tinh hien nay.

n            Voi  ma 7 bit nen co 27 = 128 to hop ma.

n            Moi ky tu (chu hoa va chu thuong) cung nhu cac con so thap phan tu 0..9 va cac ky hieu dac biet khac deu duoc bieu dien bang mot ma so.

n            Viec bien doi thanh ASCII va cac ma ky tu so khac, tot nhat la su dung ma tuong duong trong bang.

n            Vi du: Doi cac ky tu BILL thanh ma ASCII:

n            Ky tu            B            I             L            L

n            ASCII           1000010  1001001  1001100  1001100

n            HEXA         42               49             4C           4C

Chuong III: CAC KHOI CO BAN CUA MAY TINH

I.                    BO NHO TRONG

I.1. Co so ve bo nho

- Cac bo nho co the chia lam hai loai tong quat, ROM va RAM. ROM la Read-only Memory(bo nho chi doc) va RAM la Random-access Memory (bo nho truy xuat ngau nhien).

- Noi chung ROM chua cac du lieu mot cach co dinh va khong the thay doi. Con RAM co the doc ra va co the ghi vao.

- Khai niem truy xuat ngau nhien co nghia la bat ky mot vi tri nho nao cung co the duoc mo ra hoac duoc goi ra o bat ky luc nao, cac thong tin khong can phai doc ra hay ghi vao mot cach tuan tu.

- Ve thuc chat, ca RAM va ROM deu la truy xuat ngau nhien.

- Chi co dieu khac nhau co ban la ROM chi cho phep doc ma khong the ghi vao no, con RAM la bo nho co the doc va ghi, vi the RAM duoc goi la “bo nho doc/ghi”.

Cau truc bo nho

- Mach nho duoc noi voi cac bo phan khac trong may tinh thong qua cac duong day dia chi va cac duong day du lieu cua no.

- Kiem soat mach nho bang duong day cho phep (enable), rieng doi voi RAM con co them duong day kiem soat doc/ghi (Read/write).

- Cac mach nho noi chung duoc to chuc duoi dang ma tran, gom nhung hang va nhung cot de xac dinh vi tri hay dia chi nho.

- Moi o trong ma tran goi la mot phan tu (cell) hay vi tri nho (memory location).

- Vi tri hay phan tu nho duoc do tim bang cach chon dia chi nho mach giai ma dia chi.

- Mach nay gom hai phan: mach chon dia chi hang RAS (row-address selector) va mach chon dia chi cot CAS (Column-address selector).

- Cac duong day dia chi se chon dia chi hang va cot. Duong day enable dung de mo cac mach dien loi ra bo nho theo ba trang thai. Con duong day Read/write quyet dinh dang thao tac se thuc hien.

- Bo nho hoac la co to chuc bit hoac la loai co to chuc loi (word organized). Bo nho to chuc bit co the luu giu mot bit don trong moi vi tri dia chi.

- Bo nho to chuc loi se duoc lua chon ca mot nhom phan tu nho cung mot luc voi moi vi tri dia chi.

- Moi nhom phan tu nho thuong la mot byte (8 bit), hoac mot loi (16 bit).

- So duong day dia chi cua mach nho se quyet dinh so vi tri nho cuc dai tinh theo cong thuc sau:

+ So vi tri nho cuc dai = 2N.

+ trong do, N la so luong cac duong dia chi.

- Mach nho co ban (basic memory device)

- So do khoi (Block diagram)

I.2. ROM-BIOS

- Bat cu he may tinh nao cung co mot vi mach ROM. vi mach nay chua chuong trinh cua he dieu hanh vao ra co so BIOS (basic input/output system).

- Nhung chuong trinh nay can thiet de khoi dong may va cai dat che do lam viec co so cho cac thiet bi ngoai vi.

- Noi chung, co the chia ROM thanh bon loai.

+ ROM mat na (maskable ROM) la loai ROM do nha san xuat da nap san du lieu, khi do du lieu khong the thay doi duoc nua.

+ ROM co the nap chuong trinh (PROM - programable ROM) la loai mach ma nguoi dung co the nap du lieu vao thong qua thiet bi “dot” PROM. Khi da nap cac du lieu trong PROM cung khong the thay doi.

+ PROM co the xoa, con goi la EPROM (erasable PROM) la loai ROM ma nguoi dung co the nap du lieu vao va cac du lieu do co the xoa hoac thay doi bang mot thiet bi dac biet.

+ EPROM co the xoa bang dien (electric EPROM) la loai ROM co the nap va xoa du lieu bang dien duoc ma khong phai su dung tia cuc tim nhu voi EPROM.

- Trong cac may tinh hien dai, nguoi ta thuong su dung Flash BIOS dung EEPROM.

- Nhu vay noi dung BIOS cua may tinh co the duoc thay doi de tuong thich voi nhung mo rong va nang cap he thong, ma dieu nay la khong the thuc hien doi voi nhung may tinh the he cu.

- BIOS gom nhieu chuong trinh va ham. Phan dau cua chuong trinh BIOS kiem tra he thong may tinh, qua trinh nay goi la POST.

- Neu he thong su dung cac Card (the cam) Plug and Play thi giai doan nay chinh la luc may tinh truy nhap tham so cua the. BIOS nao cung co chuong trinh “Setup BIOS” de nguoi dung tu chinh tham so cac thiet bi ngoai vi.

I.3. RAM

- Co the chia RAM thanh hai hoai, RAM tinh (SRAM), co kha nang luu giu so lieu mai mai neu nhu khong mat nguon nuoi.

- Va RAM dong (DRAM), la loai RAM phai duoc “lam tuoi” (refresh) tuc la phai nap lai du lieu dang duoc luu tru theo tung chu ky.

- “Lam tuoi” bang cach thuc hien thao tac doc hoac ghi nhac lai.

- Cung co the “lam tuoi” bang nhung thao tac dac biet khac.

- Loai DRAM co mat do phan tu nho cao nen gia thanh kha re so voi SRAM.

- Cac mach nho DRAM duoc dung pho bien trong cac the he may tinh hien nay.

- De tiet kiem so duong dia chi va giam so chan tren IC, hau het cac loai DRAM deu dung phuong phap dia chi multiplex.

- Trong qua trinh doc hay ghi cac duong dia chi dau tien chua cac thong tin ve hang roi tiep sau mang thong tin ve cot.

- De kiem soat thao tac nay, nguoi ta dung duong day va nhu tren hinh 2-3.

- Khi thap thi thong tin tren cac duong dia chi se duoc mo thong qua mach chot dia chi hang (row-address latch).

- Khi thap thi thong tin tren cac duong dia chi se duoc mo thong qua mach chot dia chi cot (column-address latch).

- Viec “lam tuoi” bang du lieu doc, du lieu ghi hoac bang cac thao tac rieng.

- Mach dieu khien lam tuoi phai chon tuan tu tung hang cac phan tu nho, cu moi hang mot lan, cho den khi tat ca cac hang deu duoc “lam tuoi”.

- Do la phuong phap lam tuoi tung dot.

- Trong qua trinh do khong duoc doc hay ghi du lieu vao bo nho cho den khi ket thuc qua trinh.

- Mot cach khac la “lam tuoi” tung hang trong cac chu ky roi rac va goi la lam tuoi theo chu ky don.

II. BO XU LY TRUNG TAM CPU (1)

- Bo xu ly trung tam CPU la cot loi cua mot may vi tinh.

- CPU thuc hien moi tinh toan va xu ly cua he thong - ngoai tru xu ly tang cuong tinh toan dac biet trong nhung he thong co mot chip don vi dong xu ly toan, ma chip nay cung da duoc tich hop ngay trong cac CPU hien nay.

-Tat ca nhung may tinh IBM va tuong thich IBM su dung nhung bo xu ly ho Intel hoac tuong thich voi bo xu ly ho Intel, du chinh nhung bo xu ly co the da duoc nhieu cong ty khac nhau thiet ke va san xuat, gom AMD, IBM, Cyric... .

- Mot trong nhung bo xu ly dien hinh thuoc ho 80x86 cua Intel la bo xu ly 8088.

- Day la bo vi xu ly kha don gian va vi vay viec tim hieu no la tuong doi de doi voi nhung nguoi bat dau tham nhap vao linh vuc vi xu ly, mat khac viec nam vung cac van de ky thuat cua bo vi xu ly 8088 se la co so de nam bat duoc cac ky thuat cua cac bo xu ly khac trong ho 80x86 cua Intel, cua cac ho khac va cua cac bo xu ly hien dai ngay nay.

II.1. Bo dieu khien CU (Control Unit)

- Khoi dieu khien nay co mach giai ma lenh.

- Ma lenh doc vao tu bo nho duoc dua den dau vao cua bo giai ma, cac thong tin thu duoc tu dau ra cua no se duoc dua den mach tao xung dieu khien, ket qua thu duoc la cac day xung khac nhau tuy theo ma lenh, de dieu khien hoat dong cua cac bo phan ben trong va ben ngoai CPU

- Khoi so hoc va logic (ALU) chuyen thuc hien cac phep tinh so hoc va logic ma toan tu cua no nam trong cac thanh ghi da nang. Ket qua thuong duoc dat ve thanh ghi AX.

- Ngoai ra trong EU con co cac thanh ghi da nang (registers: AX, BX, CX, DX, SP, BP, SI, DI), thanh ghi co FR (flag register) ma cong dung cua chung se duoc de cap den trong phan sau.

- Tom lai, khi CPU hoat dong EU se cung cap thong tin ve dia chi cho BIU de khoi nay doc lenh va du lieu, con ban than no thi giai ma va thuc hien lenh.

II.3. Cac thanh ghi (1)(Registers)

- Cac thanh ghi da nang (general registers): Co nhiem vu ghi tham so cho ma lenh, day cung la noi lenh tra ket qua ve sau khi duoc thuc hien. Nhung thanh ghi da nang cua vi xu ly 16 bit la:

+ AX (accumulator) rong 16 bit, duoc chia lam hai phan: 1 byte cao AH va 1 byte thap AL. Day la thanh ghi quan trong nhat va chuyen duoc dung de chua ket qua cac thao tac lenh. Ca ba cach viet AX, AH, AL deu co the su dung nhu nhung thanh ghi rieng biet.

+ BX (base) thanh ghi co so, rong 16 bit, cung duoc chia ra lam BH va BL. Day la thanh ghi thuong dung chua dia chi co so cua mot bang dung trong lenh XLAT, Ca ba cach viet BX, BH, BL deu co the su dung nhu nhung thanh ghi rieng biet.

+ CX (count) bo dem, rong 16 bit. Duoc chia ra lam CH va CL. Thanh ghi CX duoc dung de chua so lan lap trong truong hop cac lenh LOOP.

+ DX (data) thanh ghi du lieu, rong 16 bit. Thanh ghi nay cung thanh ghi AX tham gia vao cac thao tac cua phop nhan hoac chia cac so 16 bit. DX con dung de chua dia chi 16 bit cua cac cong cung (dai hon 8 bit) trong cac lenh truy nhap cac cong ngoai vi (I/O port).

- Cac thanh ghi doan (segment registers) dung de ghi dia chi mot doan bo nho. Vi mach 8088/8086 co 20 duong day tren bus dia chi.

- Vi vay trong che do thuc (real mode) bo nho duoc chia lam nhieu doan de mot thanh ghi con tro 16 bit co the quan ly duoc.

- Cac thanh ghi doan 16 bit se chi ra dia chi dau cua 4 doan trong bo nho, dung luong lon nhat cua moi doan nho se dai 26 = 64 Kbyte va tai mot thoi diem nhat dinh bo vi xu ly chi lam viec duoc voi 4 doan nho 64Kbyte nay.

- Dia chi cua o nho nam o dau doan duoc ghi trong mot thanh ghi doan 16 bit, dia chi nay goi la dia chi co so.

- Gia tri vat ly cua dia chi doan la gia tri trong thanh ghi doan dich sang trai 4 vi tri.

- Dia chi cua cac o nho khac nam trong doan tinh duoc bang cach cong them vao dia chi co so mot gia tri goi la dia chi lech hay do lech (offset), goi nhu the vi no ung voi khoang lech cua toa do mot o nho cu the nao do so voi o dau doan.

- Do lech nay duoc xac dinh boi cac thanh ghi 16 bit khac dong vai tro thanh ghi lech (offset register).

- Nguyen tac nay dan den cong thuc tinh dia chi vat ly (physical address) tu dia chi doan (segment) trong thanh ghi doan va dia chi lech (offset) trong thanh ghi con tro nhu sau:

Dia chi vat ly = Thanh ghi doan x 16 + Thanh ghi lech

- Viec dung hai thanh ghi de nho thong tin ve dia chi thuc chat tao ra mot loai dia chi goi la dia chi logic va duoc ky hieu nhu sau:

Thanh ghi doan : Thanh ghi lech hay segment:offset.

- Dia chi kieu segment : offset la logic vi no ton tai duoi dang gia tri cua cac thanh ghi cu the ben trong CPU va khi can thiet truy nhap o nho nao do thi no phai doi ra dia chi vat ly de roi dua len bus dia chi.

- Vi xu ly 16 bit co 4 thanh ghi doan nhu sau:

+ CS (code segment) la thanh ghi doan ma 16 bit. thanh ghi nay phoi hop voi con tro lenh IP de ghi dia chi ma lenh trong bo nho.

+ DS (data segment) la thanh ghi doan 16 bit cho mot doan du lieu. Thanh ghi nay phoi hop voi hai thanh ghi chi so SI va DI de danh dia chi cho du lieu.

+ SS (stack segment) la thanh ghi doan 16 bit cho mot ngan xep. Dia chi dinh cua ngan xep duoc bieu dien cung voi con tro ngan xep SP la SS:SP.

+ ES (extra segment) la thanh ghi du lieu phu co chieu dai 16 bit. Thuong duoc dung de danh dia chi mot chuoi.

- Cac thanh ghi con tro va chi so co the duoc dung nhu mot thanh ghi da nang 16 bit, ba thanh ghi con tro la (IP, BP, SP) va hai thanh ghi chi so (SI, DI).

+ IP (instruction pointer) la con tro chi toi lenh may tiep theo. Lenh nay nam trong bo nho ma dia chi doan duoc ghi trong CS.

+ BP (base pointer) la con tro co so tro ve du lieu bo nho ma dia chi doan duoc ghi trong SS.

+ SP (stack pointer) la con tro ngan xep luon tro vao dinh ngan xep ma dia chi doan duoc ghi trong SS.

+ SI (source index) la chi so nguon, tro vao du lieu ma dia chi doan duoc ghi trong DS.

+ DI (destination index) la chi so dich, cung tro vao doan du lieu ma dia chi doan ghi trong DS.

- Thanh ghi co FR (flag register) day la thanh ghi kha dac biet trong CPU, dung de ghi trang thai ket qua cac phep xu ly trong don vi so hoc va logic ALU hoac mot trang thai hoat dong cua EU.

- Dua vao cac co nay nguoi lap trinh co the co cac lenh thich hop tiep theo cho bo vi xu ly (cac lenh nhay co dieu kien)

- Thanh ghi nay la mot thanh ghi 16 bit trong 8088/8086. Nhung chi co 9 bit trong thanh ghi duoc dinh nghia va su dung, do la:

n         x: bit khong duoc dinh nghia.

·             So do thanh ghi co cua bo vi xu ly.

+ Bit 0: CF (carry flag) co nho, CF=1 khi co nho hoac muon tu MSB.

+ Bit 2: PF (parity flag) co parity, PF phan anh tinh chan (parity) cua tong so bit 1 co trong ket qua. Co PF =1 khi tong so bit 1 trong ket qua la chan

+ Bit 4: AF (auxliary carry flag) co nho phu dung cho cac phep tinh voi ma BCD. AF = 1 khi co nho hoac muon tu mot so BCD thap (4 bit thap) sang mot so BCD cao (4 bit cao).

+ Bit 6: ZF (zero flag) co rong, ZF = 1 khi ket qua bang 0.

+ Bit 7: SF (sing flag) co dau, SF = 1 khi ket qua am.

+ Bit 8: TF (trap flag) co bay, TF = 1 khi vi xu ly o trong che do chay tung lenh.

+ Bit 9: IF (interrupt enable flag) co cho phep ngat, IF = 1 cho phep cac yeu cau ngat che duoc (maskable interrupt) tac dong.

+ Bit A: DF (direction flag) co huong. DF = 1 khi CPU lam viec voi chuoi ky tu theo thu tu tu phai sang trai (lui).

+ Bit B: OF (overflow) co tran, OF =1 khi ket qua vuot ra ngoai gioi han, xay ra doi voi phep tinh co dau.

Chuong IV: LENH VA CHE DO DIA CHI

I. Ma HOA LENH

I.1. Dang thuc cua lenh

- Quy trinh thuc hien mot lenh trong bo vi xu ly duoc chia lam ba giai doan:

+ Lay lenh (feeching).

+ Giai ma lenh (decording).

+ Va xu ly lenh (excution).

- Mot lenh mo ta bang ma nhi phan co the dai tu 1 den 6 byte. Cau truc chung cua mot ma lenh bao gom:

+ Prefix di truoc ma lenh.

+ Ma toan (operation code) phan biet do la lenh go, vi du voi lenh dich chuyen MOV co ma toan la 100010.

+ Toan hang (operand) cho biet cai go duoc xu ly (noi dung cua thanh ghi hay bo nho).

+ Dia chi truc tiep (2 byte).

I.1. Cach thuc ghi lenh

- Noi dung cua ma lenh duoc quy dinh kha chat che. hinh 4-1 duoi day cho thay cau truc nhi phan cua mot lenh dich chuyen MOV dich, nguon dung de chuyen du lieu giua 2 thanh ghi hoac giua o nho va thanh ghi.

Cau truc ma lenh

- Bit D (direction) chi huong cho thanh ghi REG. D=1 chi du lieu di den REG; D=0 thi chi du lieu di tu REG.

- Bit W (Word) chi xem thanh ghi duoc dung la 8 bit hay 16 bit (1 word). W=1 co nghia la thanh ghi 16 bit duoc dung. Bang 4-1 cho thay cach ma hoa cac thanh ghi trong bo VXL:

- Hai bit MOD (mode, che do) va ba bit R/M (register/memory, thanh ghi/bo nho) tao ra 5 bit, dung de chi che do dia chi cua lenh. Nhung che do nay duoc quy dinh trong bang 4-1. Bang 4-2 cho thay cach ma hoa cac che do dia chi (cach tim ra cac toan hang) bang cac bit nay.

Cach ma hoa cac thanh ghi trong bo VXL.

Phoi hop MOD va R/M de tao ra cac che do dia chi.

II. CAC KIEU LENH

II.1. Nhom lenh truyen du lieu (1) ( Khong anh huong den cac co)

- MOV lenh di chuyen du leu co ban

- Cau truc lenh : MOV dich, nguon.

- Trong do toan hang dich va goc co the tim theo cac dia chi khac nhau, nhung phai co cung do dai va khong duoc phep dong thoi la 2 o nho hoac 2 thanh ghi doan.

- Cac vi du ve lenh MOV

- XCHG -exchange two operands (hoan doi noi dung 2 toan hang).

- Viet lenh: XCHG Dich, Nguon

- Vi du:

- XCHG AH, AL:trao noi dung AH va AL.

- XCHG AL, [BX]: trao noi dung AL voi o nho co dia chi DS:BX.

- IN- Input data from a port (Doc du lieu tu cong vao thanh Acc)

- Viet lenh:IN Acc, Port

- Port la dia chi 8 bit cua cong, no co the co gia tri trong khoang 00H..FFH

- Neu Acc la AL thi du lieu 8 bit duoc dua vao tu cong Port.

- Neu Acc la AX thi du lieu 16 bit duoc dua vao tu cong Port va Port+1.

- lenh duoc viet nhu sau: IN Acc, DX

- Trong do DX phai duoc gan tu truoc gia tri ung voi cong.

- OUT- Output a byte or word to a port ( Dua du lieu ra cong tu Acc).

- Viet lenh:OUT Port, Acc

- Neu Acc la AL thi du lieu 8 bit duoc dua ra cong Por

- Neu Acc la AH thi du lieu 16 bit duoc dua ra cong Port va cong Port+1.

- Lenh duoc viet nhu sau:OUT DX, Acc.

- Thanh ghi DX phai duoc nap dia chi cong tu truoc.

- LEA (load effective address). Lenh nap dia chi hieu dung vao thanh ghi, no khong di chuyen noi dung chua trong dia chi do. Day la lenh de tinh dia chi lech hoac dia chi cua o nho chon lam goc roi nap vao thanh ghi d• chon.

- Viet lenh: LEA Dich, nguon.

- Trong do :

- Dich thuong la mot trong cac thanh ghi BX, CX, DX, BP, SI, DI.

- Nguon la ten bien trong doan DS duoc chi ro trong lenh hoac o nho cu the.

- Vi du:

- LEA DX, MSG : Nap dia chi lech cua ban tin MSG vao DX.

- PUSH/POP Thanh ghi ngan xep la noi rat thuan tien de cat giu tam du lieu va cac toan hang can nho cua chuong trinh. Vi du, mot chuong trinh co the muon cat lai cac noi dung trong thanh ghi AX de dung trong mot so thao tac sau nay. De thuc hien nhiem vu do co the dung cac lenh PUSH va POP.

- PUSH Cat du lieu vao ngan xep.

- Viet lenh: PUSH nguon

Mo ta:SP <=SP - 2

Nguon <= {SP}.

- Vi du:

- PUSH BX: cat BX vao ngan xep, tai vi tri do SP chi ra.

- POP Lay du lieu tu ngan xep.

- Viet lenh: POP Dich

Mo ta:Dich <= {SP}.

SP <=SP + 2

- Vi du:

- POP DX: lay 2 byte tu dinh ngan xep, dua vao DX.

- PUSHF/POPF Cac noi dung cua thanh ghi co co the duoc gui vao hay lay ra khoi ngan xep bang cac lenh PUSPF va POPF.

- PUSHF Cat noi dung thanh ghi co vao ngan xep.

- Viet lenh: PUSHF

Mo ta:SP <=SP - 2

- RF <= {SP}.

- Du lieu de tai thanh ghi co khong thay doi.

- POPF Lay 1 tu, tu dinh ngan xep dua vao thanh ghi co

- Viet lenh: POPF

Mo ta:RF <= {SP}.

SP <=SP + 2

- Sau lenh nay du lieu de tai ngan xep khong thay doi.

II.2. nhom lenh so hoc( la nhom lenh co anh huong den co)

- Cac lenh so hoc bao gom bon phep tinh so hoc co ban la cong, tru , nhan, chia va dao dau toan hang.

- ADD/SUB Dang tong quat cua cac lenh cong (add) va tru (subtract) la:

ADD dich, nguon

SUB dich, nguon

Mo ta:ADD: Dich <= Dich + Nguon

SUB : Dich <= Dich -Nguon

- Trong do cac toan hang dich, nguon co the tim duoc theo cac dia chi khac nhau, nhung phai chua du lieu co cung do dai va khong duoc phep dong thoi la hai o nho va cung khong duoc la thanh ghi doan.

- Bang 4-4 tom tat cac loai khac nhau cua cac toan hang dich va nguon dung trong cac lenh cong va tru:

- Bang 4-4. cac dang toan hang trong lenh ADD/SUB:

- Vi du:

ADD AX, BX; AX <= AX+BX

ADD AL, 74H; AX <= AX+ 74H

SUB CL, AL; CL <= CL - AL

SUB AX, 0405H; AX <= AX - 0405H.

- MUL/DIV Dang tong quat cua lenh nhan (multiply, MUL) va chia (divide, DIV) la:

MUL so nhan nguon

DIV so chia nguon

- Trong do so nhan nguon (toan hang goc) co the tim duoc theo cac che do dia chi khac nhau. Khi dung lenh nhan, so duoc nhan phai duoc chuyen vao thanh ghi AX hoac AL.

- Vi du:

MUL BX; so nhan nam trong thanh ghi BX

MUL MEM1; so nhan nam trong dia chi nho mang nhan MEM1

- Khi hai byte nhan voi nhau thi ket qua duoc gui luu vao thanh ghi AX

- Cac lenh chia, ve co ban, cung giong nhu cac lenh nhan. Trong phep chia co byte, so chia la mot byte co the o trong mot thanh ghi hoac mot vi tri nho.

- So bi chia phai la mot so khong dau 16 bit chua trong thanh ghi AX. Ket qua thuong so se o trong thanh ghi AL, con so du thi o trong thanh ghi AH.

- Doi voi phep chia co loi thi so chia 16 bit co the dat trong thanh ghi hoac mot vi tri nho. Con so bi chia phai la mot so khong dau 32 bit duoc dat trong cac thanh ghi DX va AX. Thanh ghi DX se giu loi co trong so cao, thanh ghi AX se giu loi co trong so thap. Ket qua thuong dat trong thanh ghi AX, con so du dat trong thanh ghi DX.

- Vi du 5: Viet doan chuong trinh de chia 6H cho 3H, dung thanh ghi CL.

MOV AX, 0006H; AX <= 6H

MOV CL, 03H; CL <= 3H

DIV CL; AHAL <= 00H (so du), 02H (thuong so)

- Chu y: 6H duoc dua vao thanh 0006H de lap day toan bo thanh ghi AX. Nhu vay cac byte trong so cao cua AX se bi xoa de tranh bi loi.

- INC/DEC Day la lenh tang (increment) va giam (decrement). Lenh tang se cong them mot don vi vao toan hang, con lenh giam se tru mot don vi vao toan hang. Cac lenh nay rat can doi voi thao tac dem. Dang tong quat cua cac lenh INC va DEC la:

INC dich Mo ta: Dich <= Dich +1

DEC dich Mo ta: Dich <= Dich -1

- Toan hang dich co the la mot thanh ghi hoac mot vi tri nho bat ky, co the la 1 loi 16 bit hoac 1 byte; co the tim duoc theo cac che do dia chi khac nhau.

II.3. nhom lenh logic, dich, quay (co anh huong den co nho)

- Cac lenh logic nham thuc hien cac phep tinh Boolean NOT, AND va OR. Lenh NOT thi dao tat ca cac bit trong toan hang

- NOT Lay bu cua mot toan hang, dao bit cua mot toan hang.

- Viet lenh: NOT Dich. Mo ta: Dich <= (Dich)

- Vi du 1: Xac dinh ket qua cua doan chuong trinh sau:

MOV BL, 00110011B

NOT BL

MOV MEM1, BL

- Noi dung cua thanh ghi BL duoc nap vao la 00110011B. Sau khi thuc hien phep NOT thi noi dung cua thanh ghi BL la 11001100B va gia tri nay duoc dua vao vi tri nho duoc chi ra boi nhan MEM1.

- AND/OR: Va/Hoac hai toan hang. dang tong quat cua lenh AND/OR la:

AND Dich, Nguon

OR Dich, Nguon

trong do toan hang dich va nguon co the tim duoc theo cac che do dia chi khac nhau, nhung phai chua du lieu cung do dai va khong duoc phep dong thoi la hai o nho va cung khong duoc la thanh ghi doan.

- Vi du 2 :

AND AL, BL ; noi dung thanh ghi BL duoc giao voi noi dung trong thanh ghi AL va ket qua duoc luu trong thanh ghi AL(AX)

OR AL, BL ; noi dung thanh ghi BL duoc hop voi noi dung trong thanh ghi AL tung bit mot va ket qua duoc luu trong thanh ghi AL(AX).

- SAL- Shift arithmetically Left (Dich trai so hoc)/ SHL- Shift (Logically) Left (Dich trai logic).

- Viet lenh:SAL Dich, CL

SHL Dich, CL

Mo ta:

- SAR - Shift Arithmetically Right (Dich phai so hoc).

- Viet lenh:SAR Dich, CL

Mo ta:

- ROL - Rotate All Bit to the Left (Quay vong sang trai).

- Viet lenh:ROL Dich, CL

Mo ta:

- Lenh nay dung de quay toan hang sang trai, MSB se duoc dua qua co CF va LSB. CL phai chua so lan quay mong muon.

- Vi du:

ROL BX, 1; quay vong sang trai thanh ghi BX.

MOV CL, 4; dat so lan quay vao thanh ghi CL.

ROL AL, CL; quay vong sang trai thanh ghi AL 4 lan.

- ROR - Rotate All Bit to the Right (Quay vong sang phai).

- Viet lenh:ROR Dich, CL

Mo ta:

- Lenh nay dung de quay toan hang sang phai, LSB se duoc dua qua co CF va MSB. CL phai chua so lan quay mong muon.

II.4. nhom lenh so sanh (1)

- CMP - Compare Byte or Word (so sanh 2 byte hay 2 tu).

- Viet lenh: CMP Dich, Goc.

- Trong do toan hang dich va goc co the tim duoc theo cac che do dia chi khac nhau, nhung phai chua du lieu co cung do dai va khong duoc phep dong thoi la 2 o nho.

- Lenh nay chi tao cac co, khong luu ket qua so sanh; sau lenh so sanh, cac toan hang khong bi thay doi. lenh nay thuong duoc dung de tao co cho cac lenh nhay co dieu kien.

- Cac co chinh theo quan he dich va nguon khi so sanh 2 so khong dau:

 CF                  ZF

Dich = Nguon  01

Dich > Nguon  00

Dich < Nguon  10.

- TEST - And Operands to Update Flag (va 2 toan hang de tao co).

- Viet lenh:TEST Dich, Nguon

- Trong do toan hang dich va nguon co the tim duoc theo cac che do dia chi khac nhau, nhung phai chua du lieu cung do dai va khong duoc phep dong thoi la 2 o nho va cung khong duoc la thanh ghi doan. Sau lenh nay cac toan hang khong bi thay doi va ket qua khong duoc luu giu. Cac co duoc tao ra se duoc dung lam dieu kien cho cac lenh nhay co dieu kien. Lenh nay cung co tac dung che nhu mot mat na.

- Tac dong: Xoa: CF, OF

 Cap nhat: PF, SF, ZF (PF chi lien quan den 8 bit thap)

Khong xac dinh: AF.

- Vi du:

TEST AH, AL; Va AH voi AL de tao co.

TEST AH, 01H; Bit 0 cua AH = 0?

TEST BP, [BX][DI]; Va BP voi o nho DS:BX+DI.

II.5. nhom lenh re nhanh

- JMP Lenh nhay khong dieu kien: Lenh nay khien bo vi xu ly bat dau thuc hien mot lenh moi tai dia chi duoc mo ta trong lenh.

- Viet lenh:JMP Nhan

- Lenh nhay co dieu kien: Lenh nay bieu dien thao tac: nhay (co dieu kien) toi nhan, tuc la chi thuc hien nhay toi nhan neu dieu kien chi ra dung. Nhan phai nam cach xa (dich di mot khoang) -128.. +127 byte so voi lenh tiep theo sau lenh nhay co dieu kien.

- Cac lenh nay khong tac dong den co.

- Nguoi ta phan biet cac kieu nhay co dieu kien:

- Nhay theo kieu khong dau:

JA/JNBE - Jump if Above/ Jump if Not Below or Equal.

Viet lenh: JA Nhan

 JNBE Nhan

JAE/JNB- Jump if Above or Equal/ Jump if Not Below.

Viet lenh:JAE Nhan

JNB Nhan

JB/JNAE- Jump if Below/ Jump if Not Above or Equal.Viet lenh:JB Nhan

JNAE Nhan.

- Vi du:

CMP AL, 10H; so sanh AL voi 10H.

JA MEM1; nhay den nhan MEM1 neu AL cao hon 10H.

JB MEM2;nhay den nhan MEM2 neu AL thap hon 10H.

- Nhay theo kieu co dau:

JG/JNLE- Jump if Greater than/ Jump if Not Less than or Equal.

Viet lenh:JG Nhan / JNLE Nhan.

JGE/JNL- Jump if Greater than or Equal/ Jump if Not Less than.

Viet lenh:JGE Nhan / JNL Nhan.

JL/JNGE- Jump if Less than/ Jump if Not Greater than or Equal.

JLE/JNG- Jump if Less than or Equal/ Jump if Not Greater than.

- Nhay theo kieu don.

JE/JZ- Jump if Equal/ Jump if Zero.

JNE/JNZ- Jump if Not Equal/ Jump if Not Zero.

JC- Jump if Carry

JNC- Jump if Not Carry

JNC- Jump if Not Carry

JO- Jump if Overflow

JNO- Jump if Not Overflow

JS- Jump if Sign

JNS- Jump if Not Sign

JP/JPE- Jump if Parity/ Jump if Parity Even

JNP/JPO- Jump if Not Parity/ Jump if Parity Odd

- Lenh JCXZ- Jump if CX is Zero (nhay neu CX = 0).

- Viet lenh: JCXZ Nhan

- Day la lenh nhay co dieu kien toi nhan neu noi dung thanh dem bang 0 va khong co lien he gi voi co ZF. Nhan phai nam cach xa (dich di mot khoang) -128.. +127 byte so voi lenh tiep theo sau lenh JCXZ. Chuong trinh dich se can cu vao vi tri nhan de xac dinh gia tri dich chuyen.

II.6. nhom lenh dac biet- Lenh lap:

Lenh nay dung de lap lai doan chuong trinh (bao gom cac lenh nam trong khoang tu nhan den het lenh LOOP Nhan cho den khi so lan lap CX=0. Dieu nay co nghia la truoc khi vao vong lap, ta phai dua so lan lap mong muon vao thanh ghi CX va sau moi lan thuc hien lenh LOOP Nhan thi CX tu dong giam di 1.

- Nhan phai nam cach xa (dich mot khoang) -128 byte so voi lenh tiep theo sau lenh LOOP.

- Viet lenh: LOOP Nhan

- Vi du:

XOR AL, Al; xoa AL

MOV CX, 16; so lan lap dua vao CX

Lap: INC AL; tang AL len 1

LOOP Lap; lap lai 16 lan, AL =16.

- Lenh goi chuong trinh con CALL: Lenh nay dung de chuyen hoat dong cua bo vi xu ly tu chuong trinh chinh (CTC) sang chuong trinh con (ctc). Neu ctc o cung mot doan ma voi CTC thi ta co goi gan. Neu CTC va ctc nam trong hai doan ma khac nhau thi ta co goi xa. Goi gan va goi xa khac nhau ve cach tao dia chi tro ve. Dia chi tro ve la dia chi tiep theo ngay sau lenh CALL. Khi goi gan thi chi can cat IP cua dia chi tro ve, khi goi xa thi phai cat ca CS va IP cua dia chi tro ve. Dia chi tro ve duoc tu dong cat vao ngan xep khi bat dau thuc hien lenh goi va duoc tu dong lay ra khi gap lenh tro ve RET.

- RET - Return from Procedure to Calling Program (Tro ve CTC tu ctc).

- Viet lenh:RET

- Khi gap lenh tro ve RET, vi xu ly ket thuc ctc lay lai dia chi tro ve, bao gom dia chi IP (truong hop goi gan) hoac IP va CS (trong truong hop goi xa) cua lenh tiep theo sau lenh CALL, duoc dat trong ngan xep.

- INT - Interrupt Program Excution (Ngat, gian doan chuong trinh dang chay).

 Viet lenh:INT N, N = 0.. FFH

- Mo ta: Cac thao tac cua bo vi xu ly khi chay lenh INT :

1. SP <= SP - 2. {SP} <= FR

2. IF <= 0 (cam cac ngat khac tac dong), TF <= 0 (chay suot).

3. SP <= SP - 2, {SP} <= CS.

4. SP <= SP - 2, {SP} <= IP.

5. {N x 4} <= IP, {5N x 4 + 2} <= CS.

- Moi lenh ngat ung voi mot chuong trinh phuc vu ngat khac nhau co dia chi lay tu bang vec to ngat. Bang nay gomg 256 vec to, chua dia chi cua cac chuong trinh phuc vu ngat tuong ung va chiem 1 Kb RAM co dia chi thap nhat.

- Vi du nhu cac chuong trinh phuc vu ngat cua BIOS, cua DOS nhu IO.SYS, MSDOS.SYS.

- Vi du:INT 21H

III. CAC CHE DO DIA CHI

- Nhung phuong phap dinh dia chi hay con goi la che do dia chi (addressing mod) duoc dung de vi xu ly tim ra (dinh vi, addressing) cac toan hang can thiet cho mot lenh nao do. Mot bo vi xu ly co the co nhieu che do dia chi, cac che do dia chi nay duoc xac dinh ngay tu khi che tao bo vi xu ly va sau nay khong the thay doi duoc. Ho vi xu ly Intel co bay che do dia chi nhu sau:

III.1. Che do dia chi thanh ghi (register addressing)

- Trong che do dia chi nay nguoi ta dung cac thanh ghi ben trong CPU nhu la cac toan hang de chua du lieu can thao tac.

- Vi vay khi thuc hien lenh co the dat toc do truy nhap cao hon so voi cac lenh co truy nhap den bo nho.

- Vi du:

- MOV AX, BX ; chuyen noi dung BX vao AX.

- ADD DS, DL; cong noi dung AL va DL , ket qua giu trong AL.

III.2. Che do dia chi tuc thi (immediate addressing)

- Trong che do dia chi nay toan hang dich la mot thanh ghi hay mot o nho, con toan hang nguon la mot hang so va ta co the tim thay toan hang nay o ngay sau ma lenh (chinh vi vay che do dia chi nay goi la che do dia chi tuc thi).

- Ta co the dung che do nay de nap du lieu can thao tac vao bat ky thanh ghi nao (tru cac thanh ghi doan va cac thanh ghi co) hoac vao bat ky o nho nao trong doan du lieu DS.

- Vi du:

- MOV AX, 4EH; chuyen gia tri 4EH vao thanh ghi AX.

- MOV AX, 0FFOH ; chuyen 0FF0H vao thanh ghi AX

- MOV DS, AX; de dua vao DS.

- MOV [BX], 4EH; chuyen 4EH vao dia chi o nho DS:BX

III.3. Che do dia chi truc tiep (direct addresssing mode)

- Trong che do dia chi nay mot toan hang chua dia chi lech cua o nho dung de chua du lieu, con toan hang kia chi co the la mot thanh ghi ma khong the la mot vi tri nho.

- Neu so sanh voi che do dia chi tuc thi ta thay o day ngay sau ma lenh khong phai la mot toan hang ma la mot dia chi lech cua toan hang. Xet ve phuong dien dia chi thi do la dia chi truc tiep.

- Vi du:

- MOV AL, [1234H]; chuyen noi dung o nho DS:1234H vao AL.

- MOV [4321H], CX; chuyen noi dung CX vao 2 vi tri nho lien tiep la DS:4321 va DS:4322.

III.4. Che do dia chi gion tiep qua thanh ghi (register indirect addressing)

- Trong che do dia chi nay mot toan hang la mot thanh ghi duoc su dung de chua dia chi lech cua o nho chua du lieu, con toan hang kia chi co the la mot thanh ghi ma khong duoc la o nho.

- Vi du:

- MOV AL, [BX]; chuyen noi dung tai o nho DS:BX vao AL.

- MOV [SI], CL; chuyen noi dung CL vao o nho DS:SI.

III.5. Che do dia chi truc tiep (direct addresssing mode)

- Trong che do dia chi nay mot toan hang chua dia chi lech cua o nho dung de chua du lieu, con toan hang kia chi co the la mot thanh ghi ma khong the la mot vi tri nho.

- Neu so sanh voi che do dia chi tuc thi ta thay o day ngay sau ma lenh khong phai la mot toan hang ma la mot dia chi lech cua toan hang. Xet ve phuong dien dia chi thi do la dia chi truc tiep.

- Vi du:

- MOV AL, [1234H]; chuyen noi dung o nho DS:1234H vao AL.

- MOV [4321H], CX; chuyen noi dung CX vao 2 vi tri nho

; lien tiep la DS:4321 va DS:4322.

III.6. Che do dia chi tuong doi chi so (indexed relative addressing)

- Trong che do dia chi nay cac thanh ghi chi so nhu SI va DI va cac hang so bieu dien cac gia tri dich chuyen (displacement values) duoc dung de tinh dia chi cua toan hang trong vung nho DS.

- Vi du:

- MOV AL, [SI]+10; chuyen noi dung o nho DS:(SI+10) vao AL.

- MOV AL, [SI+10]; tuong tu nhu tren.

III.7. Che do dia chi tuong doi chi so co so (1)(based indexed relative addressing)

- Ket hop hai che do dia chi chi so va co so ta co che do dia chi chi so co so. Trong che do dia chi nay ta dung ca thanh ghi co so va thanh ghi chi so de tinh dia chi cua toan hang. Neu ta dung them ca thanh phan bieu dien su dich chuyen cua dia chi thi ta co che do dia chi phuc hop cho che do dia chi hoa cac mang hai chieu.

- Vi du:

- MOV AL, [BP][SI]+10; chuyen noi dung DS:(BX+SI+10) vao AL.

- MOV AL, [BP+SI+10]; tuong tu nhu tren.

- Khi dung thanh ghi chi so , thanh ghi co so va thanh ghi con tro thi nhung cap dia chi doan va dia chi lech sau se duoc dinh nghia truoc:

CS:IP, DS:SI, DS:DI, DS:BX, ES:DI, SS:SP, SS:BP.

- Muon loai bo gia tri ngam dinh cho BX trong thanh ghi doan DS va dung gia tri trong thanh ghi doan ES ta can viet:

- MOV AL, ES:[BX]; chuyen noi dung ES:BX vao AL.

Chuong V: BO XU LY TRUNG TAM

I. HOAT DONG CUA CPU

- So do khoi tong quat cua may tinh.

- Don vi xu ly trung tam (CPU) cua mot may tinh thuong gom co cac thanh ghi, don vi so hoc-logic (ALU) va don vi dieu khien (CU).

- Cac thanh phan ben trong CPU ket noi thong tin voi nhau thong qua bus trong.

- Don vi dieu khien (CU) thuc hien:

+ Dua ra ngoai CPU cac tin hieu dieu khien de tac dong den cac trao doi du lieu voi bo nho vao/ra.

+ Dua ra cac tin hieu dieu khien ben trong CPU de van chuyen du lieu giua cac thanh ghi va tac dong ALU thuc hien cac nhiem vu cu the.

- Don vi dieu khien thuc hien nhung tac dong nay nho:

+ 1. Dien giai duoc (giai ma) cac ma lenh (Op-codes)

+ 2. Dinh tuan tu cac vi thao tac.

+ 3. Thuc hien cac vi thao tac.

+ 4. Ra quyet dinh dua tren cac co trang thai cua ALU.

- CPU thuc hien tap cac tap chi lenh cua may de bao bo xu ly phai lam gi.

- Bang cach su dung don vi ALU cua minh CPU co the thuc hien cac phep toan so hoc nhu cong, tru, nhan chia. Cac CPU moi hien nay chua them cac bo xu ly dau cham dong cho phep no co the thuc hien cac tinh toan cuc ky phuc tap tren cac so dau cham dong lon.

- CPU co the di chuyen du lieu tu bo nho nay den mot vi tri khac.

- CPU co the dua ra cac quyet dinh va nhay den mot tap hop cac chi lenh moi dua tren cac quyet dinh nay.

- CPU gom co:

+ Mot tuyen dia chi - Address bus de gui dia chi den bo nho.

+ Mot tuyen du lieu – Data bus de co the gui du lieu den bo nho hoac nhan du lieu lai tu bo nho.

+ Mot duong doc – RD va ghi – WR de CPU “noi chuyen” voi bo nho neu no muon thiet lap hoac lay vi tri dia chi.

+ Mot duong dong ho - Clock line cho phep bo xu ly nhan cac xung dong ho tuan tu.

+ Mot duong reset – Reset line de reset chuong trinh ve Rezo va khoi dong lai su thi hanh.

II. THIET KE CPU

- CPU viet tat cua chu Central Processing Unit, tam dich la don vi xu li trung tam. CPU co the duoc xem nhu nao bo, mot trong nhung phan tu cot loi nhat cua may vi tinh. Nhiem vu chinh cua CPU la xu ly cac chuong trinh vi tinh va du kien.

- CPU co nhieu kieu dang khac nhau. Don gian nhat, CPU la mot con chip voi vai chuc chan. Phuc tap hon, CPU duoc rap san trong cac bo mach voi hang tram con chip khac. CPU la mot mach xu ly du lieu theo chuong trinh duoc thiet lap truoc. No la mot mach tich hop phuc tap gom hang trieu transitor tren mot bang mach nho. Bo xu ly trung tam bao gom Bo dieu khien va Bo lam tinh.

- Bo vi xu ly Intel 80486DX2

- Bo dieu khien (CU-Control Unit)

+ La cac vi xu ly co nhiem vu thong dich cac lenh cua chuong trinh va dieu khien hoat dong xu ly, duoc dieu tiet chinh xac boi xung nhip dong ho he thong.

+ Mach xung nhip dong ho he thong dung de dong bo cac thao tac xu li trong va ngoai CPU theo cac khoang thoi gian khong doi.Khoang thoi gian cho giua hai xung goi la chu ky xung nhip.Toc do theo do xung nhip he thong tao ra cac xung tin hieu chuan thoi gian goi la toc do xung nhip - toc do dong ho tinh bang trieu don vi moi giay-Mhz.

+ Thanh ghi la phan tu nho tam trong bo vi xu ly dung luu du lieu va dia chi nho trong may khi dang thuc hien tac vu voi.

- Bo so hoc-logic (ALU-Arithmetic Logic Unit): ALU co chuc nang thuc hien cac lenh cua don vi dieu khien va xu ly tin hieu. Theo ten goi, don vi nay dung de thuc hien cac phep tinh so hoc(+,-,*,/)hay cac phep tinh logic(so sanh lon hon, nho hon...)

- Mo ta chuc nang: Chuc nang co ban cua may tinh la thuc thi chuong trinh. Chuong trinh duoc thuc thi gom mot day cac chi thi duoc luu tru trong bo nho. Don vi xu ly trung tam(CPU) dam nhan viec thuc thi nay. Qua trinh thuc thi chuong trinh gom hai buoc: CPU doc chi thi tu bo nho va thuc thi chi thi do. Viec thuc thi chuong trinh la su lap di lap lai qua trinh lay chi thi va thuc thi chi thi.

- Toc do:

+ Toc do xu ly cua may tinh phu thuoc vao toc do cua CPU, nhung no cung phu thuoc vao cac phan khac (nhu bo nho trong, RAM, hay bo mach do hoa).Co nhieu cong nghe lam tang toc do xu ly cua CPU.

+ Toc do CPU co lien he voi tan so dong ho lam viec cua no (MHz, GHz, ...). Doi voi cac CPU cung loai tan so nay cang cao thi toc do xu ly cang tang. Doi voi CPU khac loai, thi dieu nay chua chac da dung, vi du CPU Core 2 Duo co tan so 2,6GHz co the xu ly du lieu nhanh hon CPU 3,4GHz mot nhan.

+ Toc do CPU con phu thuoc vao bo nho dem cua no, vi nhu Intel Core 2 Duo su dung chung cache L2 (shared cache) giup cho toc do xu ly cua he thong 2 nhan moi nay nhanh hon so voi he thong 2 nhan the he 1 (Intel Pentium D) voi moi core tung cache L2 rieng biet. (Bo nho dem dung de luu cac lenh hay dung, giup cho viec nhap du lieu xu ly nhanh hon).

+ Hien nay CPU pho bien la Duo-Core (2 nhan), Quad-Core (4 nhan). Quy 2 nam 2010 Intel va AMD ra mat CPU Six-Core (6 nhan).

III. BO DONG XU LY (COPROCESSOR)

- Bo dong xu ly la mot bo vi xu ly rieng biet ket noi voi bo vi xu ly chinh thong qua bus he thong.

- Vi du nhu trong ho vi xu ly Intel co cac bo dong vi xu ly toan hoc (math coprocessor) 8087, 80287, 80387 lam viec voi 8086/8088, 80286 va 80386.

- Bo dong xu ly chi thuc hien mot so chuc nang dac biet, vi du nhu cac phep toan doi hoi su chinh xac su dung dau phay dong.

- Toc do xu ly cua bo dong xu ly nhung phep tinh nay se nhanh hon rat nhieu so voi bo xu ly chinh.

- Cac bo vi xu ly cong nghe cao hien nay da cay vao ben trong don vi xu ly dau phay dong (FPU) cang lam tang toc do tinh toan cac phep tinh nhanh va chinh xac hon nhieu.

Chuong VI: VAO RA VOI THIET BI NGOAI VI

I. NHIEM VU CUA BO PHOI GHEP

I.1. Vai tro cua bo phoi ghep

- Bo phoi ghep nam trung gian giua may vi tinh va cac thiet bi ngoai, dong vai tro trung chuyen du lieu (nhan va truyen) giua chung.

- Khi truyen du lieu tu may vi tinh ra thiet bi ngoai, bo phoi ghep dong vai tro nhan du lieu tu may tinh va la nguon cap du lieu cho thiet bi ngoai.

- Khi truyen du lieu tu thiet bi ngoai vao may vi tinh, bo phoi ghep dong vai tro nhan du lieu tu thiet bi ngoai va la nguon cap du lieu vao cho may tinh.

I.2. Nhiem vu cua bo phoi ghep.

- Bo phoi ghep lam nhiem vu phoi hop trao doi du lieu giua may tinh va thiet bi ngoai ve muc va cong suat cua tin hieu, ve dang tin hieu, ve toc do va phuong thuc trao doi.

I.2.1. Phoi hop ve muc va cong suat tin hieu

- Muc tin hieu cua may vi tinh thuong la muc (0V, 5V) trong khi cua cac thiet bi ngoai, hoac o muc cao (15V, 48V) hoac rat thap (<<1V).

- Cong suat cua cac tin hieu tren bus du lieu cua may vi tinh rat nho (co vai chuc mA), trong khi can cong suat lon hon nhieu cho thiet bi ngoai.

I.2.2. Phoi hop ve dang du lieu (tin hieu).

- Bo phoi ghep phai dam bao tinh tuong thich ve co che trao doi du lieu giua may tinh va thiet bi ngoai.

I.2.3. Phoi hop ve toc do trao doi du lieu.

- May tinh thuong hoat dong voi toc do cao, trong khi cac thiet bi ngoai thuong hoat dong cham hon. Do do bo phoi ghep phai co kha nang cap, nhan du lieu nhanh voi may tinh, nhung voi thiet bi ngoai thi nguoc lai .

I.2.4. Phoi hop ve phuong thuc trao doi du lieu.

- De dam bao su trao doi du lieu mot cach tin cay, can co bo phoi ghep va phuong thuc trao doi du lieu dien ra theo mot trinh tu nhat dinh va hop ly.

- Neu viec trao doi du lieu do may tinh yeu cau thi qua trinh dien ra nhu sau:

- May tinh dua lenh dieu khien de khoi dong bo phoi ghep hay thiet bi ngoai.

- May tinh doc tin hieu tra loi. Neu co tin hieu san sang moi trao doi tin, neu khong, them mot chu ky cho va doc lai trang thai.

- May tinh trao doi tin khi doc thay trang thai san sang.

- Neu viec trao doi tin do TBN yeu cau: de giam thoi gian cho doi trang thai san sang cua TBN, may tinh co the khoi dong TBN roi thuc hien cac nhiem vu khac. Viec trao doi tin dien ra khi:

- TBN gui yeu cau trao doi tin toi bo xu ly ngat cua khoi ghep noi, de dua yeu cau ngat chuong trinh den may tinh.

- Neu co nhieu thiet bi ngoai cung gui yeu cau, KGN xu ly theo muc uu tien ngat dinh truoc, roi dua yeu cau trao doi tin cho may tinh.

- May tinh nhan yeu cau, chuan bi trao doi va gui tin hieu xac nhan san sang trao doi.

- KGN nhan va truyen tin hieu xac nhan cho TBN.

- TBN trao doi tin voi KGN va KGN trao doi tin voi may tinh (neu la dua tin vao) hoac may tinh trao doi tin voi KGN va KGN trao doi tin voi TBN (neu la dua tin ra).

II. CAU TRUC CHUNG CUA BO PHOI GHEP

II.1. Nhiem vu cua cac khoi trong KGN.

KGN co nhiem vu chung la nhan va chuyen tin giua may tinh va TBN. Nhung cu the, co nhung nhiem vu nho khac nhau trong so do khoi. Nhung nhiem vu va cac khoi tuong ung la:

1. Ghep noi va bien doi tin giua MT - KGN va KGN - TBN ve:

- Muc va cong suat tin hieu.

- Dang tin (song song, noi tiep, tin hieu so, tin hieu analog).

2. Giai ma dia chi, giai ma lenh cho cac thanh ghi dem cua KGN.

3. Ghi nhan trang thai TBN hay yeu cau trao doi tin cua TBN, xu ly yeu cau uu tien, gui yeu cau vao MT va xac nhan trao doi tin tu MT.

4. Ghi nhan, bien doi dang tin, phat tin cho thiet bi nhan tin.

5. Nhan va phat tin hieu nhip thoi gian trao doi tin cho cac khoi trong KGN va TBN.

II.2. So do KGN

1. Khoi phoi hop duong day MT.

- Khoi co nhiem vu:

- Phoi hop muc va cong suat tin hieu voi bus I/O cua MT.

- Co lap bus I/O voi cac TBN khi khong trao doi tin.

- Dieu khien dua tin ra, dua tin vao bus I/O.

- Cac nhiem vu tren duoc thuc hien nho cac vi mach dem ba trang thai.

2. Khoi giai ma dia chi - lenh.

- Moi thanh ghi dem (dieu khien, trang thai, so lieu doc vao, so lieu dua ra) cua KGN duoc chon de ghi va doc tin nho cac lenh doc, ghi tu khoi gia ma dia chi - lenh. Khoi giai ma nay la nhung vi mach giai ma hay to hop cac cong logic. Loi vao duoc noi voi bus I/O cua MT, de nhan cac tin hieu dia chi (A0 .. An), tin hieu dieu khien doc, ghi, cac tin hieu chot dia chi, chot du lieu. Loi ra cua khoi nay la cac tin hieu doc, ghi cho tung thanh ghi dem cua KGN.

3. Cac thanh ghi dem gom:

- Thanh ghi dieu khien che do hoat dong, thanh ghi dieu khien TBN.

- Thanh ghi trang thai hay yeu cau trao doi tin cua TBN.

- Thanh ghi dem so lieu ghi

- Thanh ghi dem so lieu doc.

4. Khoi xu ly ngat.

- Khi nhan, che chan yeu cau trao doi tin cua TBN, xu ly uu tien va dua yeu cau trao doi tin vao MT.

5. Khoi phat nhip thoi gian.

- Phat nhip thoi gian cho cac hoat dong truyen va xu ly tin trong KGN hay TBN. Doi khi, de dong bo, khoi con nhan tin hieu nhip dong ho tu MT.

6. Khoi dem TBN.

- Khoi co the bien doi muc (TTL), bien doi cong suat (cho cac TBN la cac mach dieu khien cong suat) va bien doi ve dang tin.

7. Khoi dieu khien:

- Dieu khien hoat dong cua cac khoi, nhu khoi phat nhip thoi gian, che do hoat dong, vv... .

II.3. Giai ma dia chi cho bo ghep noi.

- Viec giai ma dia chi cho bo ghep noi cung gan giong nhu giai ma dia chi cho mach nho. Chu yeu ta nghien cuu viec giai ma dia chi cho cac cong.

- Thong thuong cac cong co dia chi 8 bit tai A0-A7 hoac co dia chi 16 bit tai A0-A15. Tuy theo do dai cua toan hang trong lenh la 8 hay 16 bit ta se co 1 cong 8 bit hay 2 cong 16 bit co dia chi lien nhau de tao nen tu voi do dai tuong ung.

- Trong thuc te it co he su dung het 256 cong I/O khac nhau, nen ta chi xet o day cac bo giai ma dia chi 8 bit A0-A7 va mach giai ma thong dung nhu 74LS138 de tao ra cac xung chon thiet bi.

III. CACH DIEU KHIEN VAO RA DU LIEUIII.1. Vao ra bang cach tham do trang thai san sang cua cong

- Mot trong nhung hoat dong va chuc nang co ban cua may tinh la truyen so lieu (data transfer). Su hoat dong cua may tinh do cac bo vi xu ly dieu khien. Bo vi xu ly va cac chip ho tro khac den luot minh cung thuong xuyen phai truyen so lieu giua cac khoi, bo phan trong va ngoai chung voi nhau.

- Vi co rat nhieu cac bo phan , khoi rieng re trong ban than cac Chip va cac duong truyen so lieu rat da dang, nen mot cach hop ly ta khong the thuc hien cac duong noi giua cac bo phan , khoi tung doi mot voi nhau ma ta noi chung tat ca cac loi vao/ loi ra cua cac khoi rieng re voi nhau len mot he thong cac duong dan chung; he thong nay duoc goi la bus.

- Cac bo phan, khoi duoc noi len bus phai thoa man mot yeu cau la co kha nang duoc cat ra hoac noi tro lai theo lenh cua dieu khien. Luc mot output duoc cat ra khoi bus, no o trang thai tro khang cao (High impedance, Hi-Z).

- Quy tac nghiem ngat cua truyen so lieu la trong moi thoi diem, toi da chi co mot output duoc cap so lieu len bus.

- Do trong moi thoi diem mot output thuong can phai dong thoi cap so lieu cho nhieu input, cho nen no can phai co kha nang phat ra (source) o muc logic cao hoac nuot vao (sink) o muc logic thap, mot dong dien lon toi vai chuc mA cap cho cac input do, dong vai tro tai cua output.

- Can cu theo cau hinh cua cac thiet bi noi vao bus, nguoi ta phan chung thanh 3 nhom nhu sau:

+ Output cap so lieu cho bus.

+ Input nhan so lieu tu bus.

+ In/ Out khi la input, khi la output.

III.2. Vao ra bang DMA

- Cac tin hieu lien quan den DMA

- Cac tin hieu con lai noi chung lien quan den hoat dong DMA, chang han khi CPU yeu cau o dia doc mot khoi du lieu, mach dieu khien o dia se cho nhan duoc byte dau tien tu o dia dua ra, sau do phat ra mot yeu cau tro thanh bus master de ghi byte do vao bo nho.

- Chip 8237A duoc INTEL thiet ke nham quan ly cac nghi thuc bus va thuc hien DMA trong do co viec taung dia chi bo nho va giam con dem sau khi truyen moi byte. Viec nay no thuc hien thay cho cac thiet bi I/O, giup giam gia thanh cua chung.

- Ve can ban, chip 8237A la mot CPU nho, co cac chuong trinh duoc ghi san ben trong. Khi 8088 muon bat dau hoat dong DMA doi voi mot thiet bi ngoai vi nao do, no nap so hieu vao thiet bi, dia chi o nho, so byte, huong truyen va cac thong tin khac vao cac thanh ghi ben trong 8237A. Khi chip dieu khien de san sang doc hoac ghi byte dau tien, no dat muc tich cuc len mot trong cac duong DRQ cua bus de dua vao chip 8237A. Khi nhan duoc tin hieu, 8237A doi chiem bus va san sang truyen mot byte. Chip 8237A phat tin hieu toi chip dieu khien bao cho no biet hay ghi hoac doc byte cua minh (trong thao tac doc hoac ghi tuong ung). Trong khoang mot chu ky nay, chip 8237A dieu khien hoat dong cua bus nhu mot bus master.

- Chip 8237A co 4 kenh doc lap va co the quan ly dong thoi 4 duong truyen.

III.3. Vao ra bang ngat

- Mot chuc nang quan trong cua bus la xu ly ngat. Khi CPU ra lenh cho mot thiet bi trong may tinh thuc hien viec doc, ghi hay xu ly tin, no thuong cho doi tin hieu ngat do thiet bi I/O phat ra khi hoan thanh cong viec duoc CPU yeu cau. Khi nhan duoc tin hieu ngat, CPU dap ung ngay, do co the la viec nhan du lieu do thiet bi I/O chuyen ve, cung co the la viec tiep tuc gui du lieu toi thiet bi I/O hoac CPU su dung bus cho mot thao tac khac ... Nhu vay chinh ngat phat ra tin hieu yeu cau bus.

- Vi co the co nhieu thiet bi ngoai vi cung phat tin hieu ngat, cho nen cung can co mot co che trong tai giong nhu doi voi cac bus thong thuong. Giai phap thuong dung la gan cac muc do uu tien cho cac thiet bi va su dung mot trong tai tap trung de trao quyen uu tien cho cac thiet bi va su dung mot trongh tai tap trung de trao quyen uu tien cho cac thiet bi quan trong thuong xuyen duoc su dung

Bạn đang đọc truyện trên: Truyen2U.Pro