You are on page 1of 56

. CUONG N T.P MN H.C C.U TRC MY TNH. CHUONG 1: C.u trc h. my tnh. 1. My tnh lm vi.c theo nguyn l Voneumann.

Von Neumann chia ho.t c.a my tnh thnh 5 thnh ph.n chnh l: - CPU (B. x. l trung tm) L thnh ph.n chnh c.a my tnh, dy l noi s. th.c hi.n cc php tnh s. h.c v logic c.a qu trnh x. l thng tin, d.ng th.i l noi sinh ra cc tn hi.u d. d.ng b. v di.u khi.n ton b. m.i ho.t d.ng c.a my tnh. - B. nh. lm vi.c (RAM) L noi t.o ra mi tru.ng lm vi.c cho H. di.u hnh v cc chuong trnh .ng d.ng. - B. nh. vinh c.u (ROM) L noi ch.a cc chuong trnh di.u hnh ho.t d.ng my my tnh . m.c d. co s.. - Thi.t b. vo (Input) l cc ngo.i vi nhu bn phm, con chu.t, Scanner.v.v. gip cho my tnh c nhi.u kh. nang phong ph khi thu th.p s. li.u v giao ti.p ngu.i my. - Thi.t b. ra (Output) - l cc ngo.i vi nhu Mn hnh, my in, my v., loa b. nh. ngoi .v.v. gip cho my tnh c kh. nang phong ph khi x. l v luu tr. s. li.u cung nhu giao ti.p ngu.i my v cc thi.t b. chuyn d.ng khc. Cc thi.t b. k. trn du.c k.t n.i v.i nhau thng qua h. th.ng Bus bao g.m cc tn hi.u: - Tn hi.u d.a ch.: Tn hi.u ny du.c sinh ra t. CPU hu.ng d.n b. nh. v cc ngo.i vi. Cho php CPU c kh. nang d.a ch. ha v qu.n l du.c cc nh.,

cc c.ng vo v cc c.ng ra. S. lu.ng dy d.n t.o nn cc tn hi.u d.a ch. (d. r.ng bus d.a ch.) cho th.y kh. nang d.a ch. ha du.c cc nh. v cc c.ng vo/ra trn my tnh. N.u d. r.ng c.a Bus d.a ch. l k bits th my tnh d c kh. nang d.a ch. ha du.c 2k nh. v t.i da 2k c.ng vo v 2k c.ng ra. - Tn hi.u s. li.u: L tn hi.u 2 chi.u cho php CPU trao d.i thng tin v.i b. nh. hay c.ng vo v c.ng ra. Trn my tnh thu.ng xuyn di.n ra 2 qu trnh co b.n l qu trnh d.c v qu trnh ghi. . qu trnh d.c s. li.u s. xu.t pht t. b. nh. hay cc c.ng vo hu.ng d.n CPU. . qu trnh ghi, s. li.u s. xu.t pht t. CPU hu.ng d.n b. nh. hay cc c.ng ra. - Tn hi.u di.u khi.n: l cc tn hi.u cho php di.u khi.n khi no th CPU d.c hay ghi s. li.u, cho php my tnh th.c hi.n hay khng th.c hi.n cc ch.c nang nhu ng.t, DMA, bi.u di.n tr.ng thi c.a my tnh hay m ha cc qu trnh th.c hi.n l.nh trn my tnh. C 3 tn hi.u di.u khi.n xu.t pht t. CPU d. di.u khi.n qu trnh d.c/ghi trn my tnh: M/ IO, RD, WR . T. 3 tn hi.u ny my tnh c th. t.o du.c cc tn hi.u di.u khi.n d. d.c b. nh., ghi b. nh. hay d.c v ghi vo/ra. M/ IO RD WR Thao tc trn my tnh 1 0 1 MEMR .c b. nh. (s. li.u xu.t pht t. b. nh. hu.ng d.n CPU) 1 1 0 MEMW Ghi b. nh. (s. li.u xu.t pht t. CPU hu.ng d.n b. nh.) 0 0 1 IOR .c c.ng vo (s. li.u xu.t pht t. c.ng vo hu.ng d.n CPU) 0 1 0 IOW Ghi c.ng ra (s. li.u xu.t pht t. CPU hu.ng d.n c.ng ra) T.i m.t th.i di.m trn bus di.u khi.n ch. t.n t.i m.t trong s. 4 tn hi.u trn, d.ng th.i bus d.a ch. cung ch. t.n t.i 1 gi tr., do d t.i 1 th.i di.m my ch. c th. th.c hi.n 1 thao tc trong s. 4 thao tc co b.n c.a my tnh. Hay ni cch khc CPU ch. c th. th.c hi.n trao d.i thng tin v.i 1 nh., 1 c.ng vo ra hay 1 c.ng ra trn my tnh. Ni v. qu trnh th.c hi.n l.nh th CPU t.i m.t th.i di.m ch. c th. th.c hi.n du.c 1 l.nh m thi. Qu trnh ny g.i l qu trnh x.

l tu.n t. (step-by-step). y l nhu.c di.m l.n nh.t c.a my tnh ho.t d.ng theo nguyn l Voneumann. V trong cc bi ton x. l thng tin trong th.c t., t.i 1 th.i di.m, my tnh thu.ng xuyn c.n ph.i d.ng th.i trao d.i thng tin v.i nhi.u ngo.i vi, nguyn l Voneumann nhu d trnh by . trn khng cho php my tnh th.c hi.n du.c nhi.m v. ny. . kh.c ph.c nhu.c di.m ny ngu.i ta ph.i tang t.c d. lm vi.c c.a my tnh, xy d.ng cc m.ng my tnh x. l song song v dua ra m.t m hnh my tnh m.i ho.t d.ng theo nguyn l x. l song song my tnh m.ng noron (Neural network). 2. B. x. l trung tm c.a my tnh. My tnh c nhn d.u tin m IBM ch. t.o (IBM PC XT) s. d.ng B. VXL 8086/8088 c.a Intel. y l B. VXL 16 bits c c.u trc nhu sau: V.i c.u trc du.c chia thnh hai ph.n: on v. th.c hi.n (EU) v don v. giao ti.p (BIU) cho php CPU c th. d.ng th.i v.a th.c hi.n l.nh v v.a d.c nh.ng l.nh ti.p theo s. th.c hi.n vo hng d.i l.nh trong don v. giao ti.p, dy l m.t ti.n b. dng k. m. d.u cho c.u trc du.ng .ng du.c xy d.ng . cc BVXL tin ti.n c.a Intel. Cc thanh ghi da nang c.a BVXL 8086/88 . tuong thch v.i cc h. 8 bits du.c ch. t.o tru.c d v.n dang cn du.c s. d.ng r.ng ri cc thanh ghi da nang c.a don v. th.c hi.n c th. du.c s. d.ng nhu cc thanh ghi 8 bits, khi d thanh ghi 16 bits AX, BX, CX v DX du.c Bus d liu ALU Cc thanh ghi on BUS trong ca CPU B U S n go i n v thc hin EU (Execution Unit) n v ghp ni- BIU (Bus Interface U nit) H ng i l nh Cc thanh ghi a nng Thanh ghi con tr, ch s AX BX CX DX SP BP SI DI CS DS SS ES IP Ton h ng Khi iu khin ca EU . B to a ch iu khin BUS Thanh ghi c

chia thnh cc thanh ghi 8 bits tuong .ng l AH-AL, BH-BL, CH-CL v DHDL. Cc thanh ghi c.a CPU c cc ch.c nang ng.m d.nh du.c d.nh nghia nhu sau: Thanh ghi AX (AH AL): Thanh ghi tch luy (th.c hi.n cc php c.ng, tr., nhn chia v vo ra) . Thanh ghi BX: Thanh ghi co s. (Th.c hi.n cc php luu tr., chuy.n d.i s. li.u) Thanh ghi CX (CL): L thanh ghi d.m cho cc php tnh chu.i, l.p, d.ch chuy.n, quay vng . Thanh ghi DX: L thanh ghi t.m th.i cho cc php nhn, chia v l noi ch.a d.a ch. c.ng trong thao tc vo/ra v.i mode d.a ch. gin ti.p. .a ch. v.t l d.a ch. logic M.t khc, BVXL 8086/88 c 20 bits d.a ch. cho php d.a ch. ha t.i da du.c 220 tuong duong 1MB nh., trong khi d cc thanh ghi bn trong c.a BVXL ch. l 16 bits v v.y c hai phuong php xc d.nh d.a ch.: .a ch. v.t l: y l m.t d.a ch. du.c bi.u di.n b.i 1 s. 20 bits cho php bi.u di.n chnh xc v. tr c.a nh. trong t.ng s. 220 nh. m BVXL c kh. nang d.a ch. ha du.c. V d. d.a ch. 275BA H hay 90000 H. .a ch. v.t l du.c s. d.ng trong m.ch gi.i m d. xc d.nh nh. no hay c.ng vo/ra no s. trao d.i s. li.u v.i BVXL. .a ch. logic: Cc thanh ghi c.a BVXL c d. di ch. 16 bits nn khng th. bi.u di.n du.c m.t d.a ch. 20 bits. V v.y, d. bi.u di.n m.t d.a ch. 20 bits ngu.i ta s. d.ng cc thanh ghi do.n n.m trong thnh ph.n c.a don v. giao ti.p (BUI) k.t h.p v.i cc thanh ghi con tr. ch. s. trong don v. th.c hi.n (EU) theo quy t.c sau: Thanh ghi do.n Thanh ghi con tr. ch. s., con tr. l.nh (d. l.ch offset) Thao tc CS DS SS ES IP BX, SI, DI SP DI, BP Nh.n l.nh D. li.u Ngan x.p Noi g.i t.i Khi d 1 d.a ch. 20 bits s. du.c bi.u di.n nhu sau:

CS : IP, DS:BX, SS:SP .v.v. cch vi.t nhu th. du.c g.i l d.a ch. logic. T. 1 d.a ch. logic ngu.i ta xc d.nh d.a ch. v.t l b.ng cch: D.ch tri thanh ghi do.n 4 bits r.i c.ng s. h.c v.i gi tr. c.a thanh ghi d. l.ch gi. nguyn. V d.: Gi tr. c.a thanh ghi do.n DS = 22B8 H. Gi tr. c.a thanh ghi d. l.ch SI = 7820 H. .a ch. logic du.c bi.u di.n: DS:SI (22B8:7820) Ta xc d.nh du.c d.a ch. v.t l nhu sau: .a ch. do.n 22B8 D.ch tri 4 bits 2 2 B 8 0 .a ch. offset 7820 Gi. nguyn 7 8 2 0 .a ch. v.t l 20 bits 2 A 3 A 0 Vi.c d.ch tri thanh ghi do.n 4 bits tuong duong v.i vi.c nhn gi tr. thanh ghi do.n v.i 10H (16 D). Bi.u di.n d.a ch. logic cho php chia khng gian c.a b. nh. my tnh thnh 16 do.n c s. th. t. t. 0 H- F H (tuong duong v.i 4 bits cao nh.t c.a d.a ch. 20 bits thay d.i t. 0000 B 1111 B). V.i cch tnh d.a ch. v.t l t. d.a ch. logic ta th.y v.i 1 d.a ch. v.t l s. c th. c nhi.u d.a ch. logic (n.u tang gi tr. c.a thanh ghi do.n ln 1 don v. hexa v gi.m gi tr. c.a thanh ghi d. l.ch 10 don v. hexa ho.c ngu.c l.i th gi tr. c.a d.a ch. v.t l khng thay d.i). Gi tr. l.n nh.t c.a thanh ghi d. l.ch l FFFF H (216 gi tr.) m.i l.n thay d.i (24 gi tr.) nhu v.y v.i 1 d.a ch. v.t l ta c th. c t.i da 216:24 = 212 gi tr. d.a ch. logic. Tru.ng h.p d.a ch. v.t l l 00000 H ta ch. c 1 d.a ch. logic m thi. C.u trc du.ng .ng trong BVXL V.i c.u trc hng d.i l.nh . BVXL 8086/88 ta th.y khi EU dang th.c hi.n l.nh, th l.nh ti.p theo s. du.c th.c hi.n (c d.a ch. t.i CS:IP) s. du.c n.p vo hng d.i l.nh. C.u trc ny cho php qu trnh d.c b. nh. du.c th.c hi.n d.ng th.i v.i qu trnh x. l l.nh. Xu.t pht t. tu.ng d, ta th.y: n.u chia qu trnh th.c hi.n m.t l.nh thnh nhi.u giai do.n, c.u trc hng d.i l.nh s. cho php th.c hi.n d.ng th.i cc giai do.n khc nhau c.a cc l.nh k. ti.p nhau. chnh l b.n ch.t c.a c.u trc du.ng .ng. Gi. s. m.t l.nh my du.c chia thnh 5 giai do.n:

.c l.nh (IF: Intruction Fetch). Gi.i m l.nh (ID: Intruction Decode). Thi hnh l.nh (EX: Execute). Thm nh.p b. nh. trong ho.c nh.y (MEM: Memory access) Luu tr. k.t qu. (RS: Result Storing). M.i giai do.n c th. du.c th.c hi.n trong 1 hay nhi.u xung Clock. Chu.i l.nh Chu k. xung d.ng h. 1 2 3 4 5 6 7 8 9 L.nh th. i IF ID EX MEM RS L.nh th. i+1 IF ID EX MEM RS L.nh th. i+2 IF ID EX MEM RS L.nh th. i+3 I F ID EX MEM RS L.nh th. i+4 IF ID EX MEM RS Trong ti.n trnh trn ta th.y trong chu k. c.a 1 xung clock nhi.u giai do.n khc nhau c.a l.nh du.c th.c hi.n d.ng th.i trn cc ph.n t. khc nhau trong BVXL. V.i 5 l.nh k. ti.p nhau, n.u khng c c.u trc du.ng .ng s. c.n d.n 45 chu k. d. th.c hi.n. Nhung 5 l.nh d ch. th.c hi.n trong 9 chu k. n.u BVXL c c.u trc du.ng .ng d l uu di.m n.i b.t c.a c.u trc du.ng .ng. C.u trc du.ng .ng cung l kh.i d.u cho cc c.u trc v hu.ng, siu v hu.ng, phn lu.ng v siu phn lu.ng trn cc BVXL tin ti.n c.a Intel. CHUONG 2: B. NH. V H. TH.NG BUS. 1. B. nh. trn my tnh. B. nh. c.a my tnh l noi ch.a cc chuong trnh di.u hnh ho.t d.ng c.a my tnh . m.c d. co s. (ROM BIOS) v l mi tru.ng lm vi.c cho H. di.u hnh v cc chuong trnh .ng d.ng c.a my tnh (RAM). Can c. vo d.c di.m lm vi.c c.a b. nh. theo nguyn l Vonneumann c hai lo.i b. nh.: B. nh. vinh c.u (ROM) l lo.i b. nh. m thng tin ghi trong n khng b. m.t di khi c.t ngu.n lm vi.c c.a my tnh. Do d, cc chuong trnh di.u hnh

ho.t d.ng c.a my du.c ghi vo b. nh. ny v ngu.i ta thu.ng g.i l ROM BIOS (Rom Base Input-Output System). B. nh. lm vi.c (RAM). Khc v.i b. nh. ROM, thng tin ghi trong b. nh. RAM s. b. m.t khi ta c.t ngu.n lm vi.c hay kh.i d.ng l.i my tnh. B. nh. RAM l mi tru.ng lm vi.c c.a HH v cc chuong trnh .ng d.ng, d. lm vi.c du.c hi.u qu. th my tnh c.n c b. nh. RAM dung lu.ng l.n. . c b. nh. RAM dung lu.ng l.n, gi thnh h. ngu.i ta s. d.ng b. nh. RAM d.ng, tuy nhin do s. d.ng t. di.n lm ph.n t. nh. nn d. trnh vi.c b. m.t thng tin do hi.n tu.ng t. di.n t. phng di.n ph.i c qu trnh n.p l.i di.n p cho t. di.n du.c g.i qu trnh lm tuoi b. nh. RAM d.ng, qu trnh ny lm gi.m t.c d. lm vi.c c.a b. nh. RAM d.ng. B. nh. c.a my tnh du.c t. h.p t. cc vi m.ch nh. v c dung lu.ng du.c tnh b.ng don v. Byte, trong khi d dung lu.ng c.a vi m.ch nh. du.c tnh b.ng don v. bit. B. nh. c.a my tnh du.c k.t n.i v.i CPU thng qua h. th.ng BUS g.m cc tn hi.u sau: S. lu.ng cc tn hi.u d.a ch. c trn b. nh. c.a my tnh bi.u di.n dung lu.ng b. nh. my tnh (N.u b. nh. my tnh c k bits d.a ch. th dung lu.ng b. nh. s. l 2k nh.) m.i nh. trong b. nh. my tnh c chi.u di l 1, 2, 4, 8 ho.c 16 Byte s. li.u. Khi d dung lu.ng b. nh. my tnh s. l 2k * 1 (2,4,8,16) Byte. S. lu.ng cc tn hi.u d.a ch. c trn vi m.ch nh. bi.u di.n dung lu.ng c.a vi m.ch nh. (N.u vi m.ch nh. n bits d.a ch. th dung lu.ng c.a vi m.ch nh. s. l 2n nh.) m.i nh. c.a vi m.ch nh. c chi.u di l 1, 2, 4, 8 bits s. tn hi.u ghi/d.c Cho php m. thi.t b. Cc tn hi.u s. li.u B. nh./ Vi m.ch nh. Cc tn hi.u d.a ch.

li.u. Khi d ngu.i ta ni dung lu.ng c.a vi m.ch nh. s. du.c xc d.nh l 2n * 1(2,4,8) bit T. h.p nhi.u vi m.ch nh. s. t.o nn b. nh. my tnh, ty theo s. chn s. li.u c.a vi m.ch nh., ngu.i ta s. ph.i l.p song song cc vi m.ch nh. v.i nhau d. d.m b.o m.i l.n CPU truy c.p b. nh. th 1, 2, 4, 8 hay 16 Byte s. li.u s. du.c ghi ho.c d.c. Khi th.c hi.n truy c.p b. nh., t.i 1 th.i di.m CPU ch. c th. d.c hay ghi 1 nh. d. xc d.nh du.c nh. s. th.c hi.n trao d.i s. li.u v.i CPU ngu.i ta ph.i th.c hi.n gi.i m b. nh.. Tru.c tin l m.ch gi.i m b. nh. d. xc d.nh xem vi m.ch nh. no chua nh. s. trao d.i s. li.u v.i CPU v sau d l gi.i m trong n.i b. vi m.ch nh. d. xc d.nh du.c nh. s. trao d.i s. li.u v.i CPU. B. nh. c.a my tnh c k bits d.a ch. (my tnh c 2k nh.), vi m.ch nh. d. t. h.p nn b. nh. c n bits d.a ch. (ty theo s. chn s. li.u m vi m.ch nh. c du.c ta ghp song song cc vi m.ch nh. v.i nhau d.m b.o m.i l.n truy c.p th 1, 2, 4, ho.c 8 Byte s. li.u du.c ghi hay d.c) t.o du.c 2n nh. (n < k), qu trnh gi.i m ch.n nh. s. du.c ti.n hnh nhu sau: N.u (k - n = m) m dy d.a ch. ph.n cao du.c n.i d.n m.ch gi.i m: Ak.1Ak.2 Ak.3 ...An . n dy d.a ch. ph.n th.p du.c n.i d.n n chn d.a ch. c.a vi m.ch nh.: 1 2 3 1 0 A A A ...A A n. n. n. . V.i m tn hi.u d.a ch. d.u vo, m.ch gi.i m s. c 2m d.u ra du.c dng d. ch.n t.i da 2m vi m.ch nh. tuong .ng v.i 2m t. h.p c.a cc tn hi.u d.a ch. 1 2 3 A A A ...A k. k. k. n . T.i vi m.ch nh., v.i n tn hi.u d.a ch. s. c 2n nh. trong m.i vi m.ch. V.i t. h.p d.a ch. 1 2 3 1 0 A A A ...A A n. n. n. m.ch gi.i m trong vi m.ch nh. s. c 2n d.u ra, m.i d.u ra tuong .ng v.i 1 nh.. Cch t. ch.c nhu trn cho php ch.n du.c chnh xc nh. no trong t.ng s. 2k nh. c.a my tnh s. th.c hi.n trao d.i s. li.u v.i CPU. Trn cc my tnh hi.n d.i c dung lu.ng b. nh. RAM l.n, ngu.i ta thu.ng t. ch.c b. nh. RAM c.a my tnh t. cc Modul, m.i modul RAM l

t.p h.p c.a nhi.u vi m.ch nh.. Khi d phuong php gi.i m d. xc d.nh nh. s. trao d.i s. li.u v.i CPU v.n du.c th.c hi.n theo nguyn t.c trn. Cc modul b. nh. RAM c.a my tnh du.c chia thnh cc lo.i sau: SIMM RAM: DIMM RAM: SD RAM v DDR RAM RD RAM (RAM BUS) My tnh IBM PC XT du.c xy d.ng trn BVXL 8086/88 c 20 chn d.a ch. do d dung lu.ng b. nh. c.a my tnh ny l 220 nh. c d.a ch. t. 00000 h d.n FFFFF h du.c phn chia nhu sau: FFFFF FE000 8 K BIOS FDFFF F6000 32 K Chuong trnh d.ch BASIC F5FFF F4000 8K Dnh cho User F3FFF CA000 18 K ROM m. r.ng C9FFF C8000 8 K ROM di.u khi.n dia C7FFF C0000 32 K ROM m. r.ng BFFFF A0000 128 K Video RAM 9FFFF 00600 Dnh cho h. di.u hnh 005FF 00500 Dnh cho DOS v BASIC ch.a cc tham s. t.m th.i 004FF 00400 Vng d. li.u t.m th.i c.a BIOS 003FFF 000000 B.ng vector ng.t

Khi kh.i d.ng my tnh, b. nh. ROM BIOS s. ph.i du.c kh.i t.o d.u tin do d tr.ng thi cc thanh ghi khi kh.i d.ng my tnh s. nhu sau: CPU CS DS SS ES IP C. Hng d.i N.i dung FFFF 0000 0000 0000 0000 Xa Tr.ng L.nh d.u tin s. du.c d.c t. nh. c d.a ch. CS:IP l FFFF:0000 tuong .ng v.i d.a ch. v.t l l FFFF0 h. chnh l l do t.i sao ROM BIOS l.i du.c d.t t.i vng cao nh.t c.a khng gian b. nh. my tnh. Vng nh. tiu chu.n c.a my tnh c dung lu.ng 1 MB c d.a ch. t. 00000 h d.n FFFFF h du.c chia thnh 2 lo.i: B. nh. quy u.c c d.a ch. t. 00000h d.n 9FFFFh c dung lu.ng l 640KB, dy l vng nh. RAM du.c dng d. ch.a cc tham s. c.a HH, cc tham s. v. c.u hnh c.a my (nhu trn b.n d. b. nh. c.a my tnh), ph.n l.n nh.t c.a b. nh. quy u.c du.c dng lm mi tru.ng cho cc chuong trnh .ng d.ng ho.t d.ng. B. nh. trn c d.a ch. t. A0000h d.n FFFFFh du.c chia thnh 2 ph.n: b. nh. video RAM c dung lu.ng 128 KB t. d.a ch. A0000h d.n BFFFFh. B. nh. ROM c dung lu.ng 256 KB t. d.a ch. C0000h d.n FFFFFh trong d vng nh. ROM BIOS bao gi. cung du.c n.m t.i vng c d.a ch. cao nh.t, d l l do m khi kh.i d.ng my tnh gi tr. c.a thanh ghi CS v IP ph.i l FFFF:0000 d. ch. d.n nh. c d.a ch. v.t l l FFFF0h. Th.c t. khi my tnh ch.y cc chuong trnh .ng d.ng l.n th dung lu.ng b. nh. RAM t.i vng nh. quy u.c khng d. d. dp .ng di h.i c.a chuong trnh, m.t khc cc b. VXL t. 80286 tr. di, c.u trc BVXL c nhi.u hon 20 du.ng d.a ch. cho php d.a ch. ha du.c khng gian b. nh. nhi.u hon 1 MB theo quy d.nh. . d.m b.o c b. nh. RAM l.n hon 1MB theo yu c.u c.a cc chuong trnh .ng d.ng ngu.i ta c.n ph.i c cc tiu chu.n cho php HH qu.n l du.c khng gian b. nh. ny. Trn co s. d ngu.i ta dua ra 2 hnh th.c d. qu.n l b. nh. n.m ngoi khng gian tiu chu.n ny. B. nh. pht tri.n l b. nh. n.m ngoi khng gian 1 MB tiu chu.n, d. qu.n l b. nh. ny HH s. dng 1 segment b. nh. c d.a ch. t. E0000h d.n EFFFFh lm c.a s. cho php truy c.p d.n vng nh. ny, khi d m.t chuong trnh c tn l EMS.EXE s. du.c HH s. d.ng d. cho php qu.n l vng nh.

ny. Ban d.u EMS ch. cho php qu.n l du.c s. li.u n.m trn b. nh. m. r.ng, sau ny EMS cho php vng nh. m. r.ng ch.a du.c c. s. li.u v m l.nh. B. nh. pht tri.n, b. VXL t. 80286 tr. di c s. chn d.a ch. nhi.u hon 20, s. chn d.a ch. nhu v.y cho php my tnh c kh. nang d.a ch. ha du.c nhi.u hon 220 nh. nhu BVXL 80286 c 24 chn d.a ch. c th. d.a ch. ha du.c 224 nh., BVXL 80386 c 32 chn d.a ch. c th. d.a ch. ha du.c 232 nh..v.v. HH c.n ph.i c m.t chuong trnh ring d. qu.n l du.c cc nh. d, chuong trnh XMS.EXE du.c dng d. qu.n l b. nh. ny v n du.c g.i l b. nh. pht tri.n. Nhu v.y b. nh. pht tri.n l b. nh. n.m ngoi 1MB c d.a ch. b.t d.u t. 100000h. Vng nh. cao (High Memory area) . ch. d. th.c t.t c. cc BVXL t. 80286 tr. ln d.u c th. truy c.p 65520 bytes b. nh. c d.a ch. t. 100000 10FFEF (65520 nh.) m khng c.n h. di.u hnh lm vi.c . ch. d. b.o v.. Khng gian nh. ny du.c g.i l vng nh. cao (HMA). Khi k.t h.p gi.a d.a ch. do.n v offset d. t.o d.a ch. v.t l, d.a ch. do.n du.c d.ch tri 4 bits. BVXL 8086/88 khng c chn A20 nn khng c nh.. BVXL 80286 c chn A20 nn khi d.ch tri ph.n c nh. du.c chuy.n sang B. nh. m. r.ng B. nh. pht tri.n

chn A20. HH thu.ng s. d.ng vng nh. cao d. ch.a cc l.nh n.i tr nh.m tang khng gian cho cc chuong trnh .ng d.ng b.ng cc l.nh: DEVICE = HIMEM.SYS DOS = HIGH L.nh DOS = HIGH chuy.n cc l.nh n.i tr c.a HH ln vng nh. cao v gi.i phng ton b. vng nh. quy u.c cho cc chuong trnh .ng d.ng. 2. H. th.ng Bus trn my tnh. Bus trn my tnh l t.p h.p cc tn hi.u d.a ch., s. li.u, di.u khi.n cng v.i cc tn hi.u d.ng b., ngu.n du.c ch. t.o tun theo m.t tiu chu.n nh.t d.nh d.m b.o cho vi.c trao d.i s. li.u gi.a CPU v.i b. nh. v cc thi.t b. ngo.i vi. M.t h. Bus tin ti.n lun d.m b.o du.c t.c d. truy.n s. li.u gi.a CPU b. nh. v ngo.i vi l nhanh nh.t, d.ng th.i c kh. nang nh.n d.ng du.c s. thay d.i c.a thi.t b. ngo.i vi hay b. nh. d. d.m b.o cho vi.c truy.n s. li.u khng b. xung d.t. Trn co s. d ngu.i ta c cc khi ni.m: D.i thng Tc m bus c th truyn d liu t thit b ch ti thit b t gi l di thng hay rng di ca bus (bandwidth) hoc nng sut truyn ca bus Vng nh. cao v b. nh. pht tri.n

(throughput). n v o l MB/sec. Di thng ph thuc vo tc , rng v giao thc ca bus: D.i thng c.a Bus = t.n s. lm vi.c c.a bus * d. r.ng bus s. li.u. M.c dch pht tri.n c.a cc h. bus trn my tnh IBM PC v tuong thch l cc lo.i bus th. h. sau lun c d.i thng l.n hon th. h. tru.c d. d.m b.o truy.n s. li.u nhanh hon. Plug and play Microsoft v Intel cng tc vi nhau trang b bus ISA thm kh nng ca cu hnh t ng. c im ny cn gi l cm l chy (plug and play). PCI vi cu hnh t ng c th lm vic hon chnh ch sau khi card EISA v BIOS c trang b cu hnh t ng. ISA v MCA u c b sung c tnh quan trng ny t trc. C 3 trng hp lin quan ti Plug and Play nhsau: 1. C BIOS trn board m ln card b sung u khng phi l Plug and play. Trng hp ny i khi cn c gi cm xong l cu Cha (plug and pray), v bn s gp li. 2. BIOS trn board m c trang b Plug and play nhng card b sung th khng. Trng hp ny phn mm ci t s gip bn sp xp a ch I/O, IRQ v cc knh DMA. 3. C BIOS trn board m ln card b sung u trang b Plug and play. Trng hp ny, cu hnh t ng s thc hin mi cng vic. N s t sp xp a ch I/O, IRQ v cc knh DMA m khng cn ngi dng can thip. 4. Hot Plug and Play l kh. nang bus hon ton c th. nh.n bi.t s. thay d.i (ng.t v k.t n.i ngo.i vi d.n bus) v ci d.t di.u khi.n cho ngo.i vi ngay c. khi my tnh v.n dang lm vi.c. Kh. nang ny cho php my tnh c th. lm vi.c lin t.c khng ph.i d.ng khi thay th. cc ngo.i vi. My tnh s. s. d.ng vng nh. RAM khi th.c hi.n chuong trnh .ng d.ng. Cc file ch.y thu.ng c ph.n m. r.ng *.COM ho.c *.EXE.

File c ph.n m. r.ng *.COM c kch thu.c nh. hon 64KB, d. th.c hi.n m.t file *.com, h. di.u hnh ch. s. d.ng 1 segment (64KB) b. nh. d. th.c hi.n chuong trnh ny. Khi d HH s. kh.i t.i cc do.n trong segment d nhu sau: Cc thanh ghi do.n c cng 1 gi tr.: CS = DS = SS = ES Vng s. li.u s. du.c kh.i t.o t. gi tr. th.p nh.t c.a segment d v.i d.a ch. l 0000 h cho d.n 00FF h. Vng m l.nh s. du.c b.t d.u t. nh. 0100 h. Vng ngan x.p s. du.c b.t d.u t. nh. FFFE h. Nhu v.y di.m vo c.a m.t chuong trnh *.com s. b.t d.u t. d.a ch. CS:0100, vng s. li.u s. b.t d.u t. d.a ch. DS:0000, vng ngan x.p s. b.t d.u t. d.a ch. SS:FFFE. . th.c hi.n 1 file *.EXE HH s. d.ng nhi.u segment, khi d do.n m l.nh, do.n s. li.u, do.n ngan x.p v do.n s. li.u m. r.ng du.c n.m trn cc do.n khc nhau CS . DS . SS . ES. i.m vo c.a chuong trnh *.EXE c th. n.m . b.t c. di.m no trong do.n m l.nh. Vng s. li.u s. b.t d.u t. d.a ch. DS:0000, vng ngan x.p s. b.t d.u t. d.a ch. SS:FFFE. Khi th.c hi.n cc l.nh asm, ngu.i ta thu.ng dng 1 s. ng.t m.m d. th.c hi.n m.t s. yu c.u. V d. nhu ng.t int 21h (ng.t c.a DOS) v.i cc gi tr. ah = 01h, ah = 08h, ah =02h, ah = 4ch, ng.t int 10h (ng.t mn hnh) v ng.t int 16h (ng.t bn phm). . xem xt n.i dung bn trong cc thanh ghi c.a CPU, cc nh., cc sector hay cc file trn dia ngu.i ta thu.ng dng chuong trnh debug. Debug l m.t chuong trnh tuong du.ng v.i 1 l.nh ngo.i tr c.a HH ta c th. s. dung debug d. ch.y cc do.n chuong trnh ng.n, d. xem v thay d.i n.i dung c.a cc thanh ghi bn

trong CPU v nh. . V d. nhu d. ki.m tra s. c m.t c.a cc c.ng COM hay c.ng LPT c.a my tnh ta c th. xem n.i dung c.a vng nh. ch.a tham s. c.a HH t.i cc nh. t. 00400h d.n 0040f h b.ng l.nh D. D 0040:0000 l 10 Vo ra v qu.n l qu trnh vo ra. Vo/ ra l qu trnh trao d.i s. li.u gi.a CPU v cc thi.t b. ngo.i vi thng qua bus. Trong cc BVXL hi.n nay c lo.i c h. tr. cho qu trnh vo ra, c lo.i khng h. tr. cho qu trnh vo/ra. BVXL c h. tr. vo ra: Trong c.u trc c.a CPU v. ph.n m.m c cc l.nh h. tr. vo ra v v. ph.n c.ng c cc Modul d.m b.o cho qu trnh vo ra b.ng cc xung tr.ng thi M/ IO k.t h.p v.i 2 tn hi.u di.u khi.n l RD v RWd. t.o ra cc tn hi.u cho php my tnh c khng gian vo/ra ring bi.t. M/ IO RD WR Thao tc trn my tnh 1 0 1 MEMR .c b. nh. 1 1 0 MEMW Ghi b. nh. 0 0 1 IOR .c c.ng vo 0 1 0 IOW Ghi c.ng ra Khi tn hi.u tr.ng thi M/ IO c m.c logic 0 khi d CPU s. th.c hi.n trao d.i s. li.u v.i khng gian vo/ra c. th.: khi tn hi.u IOR c m.c logic 0 my tnh s. d.c s. li.u t. vng khng gian cc c.ng vo c d.a ch. du.c xc d.nh b.i s. lu.ng cc bits d.a ch. tuong .ng v.i ch. d. lm vi.c . ch. d. vo/ra ny. Khi tn hi.u IOWc m.c logic 0 my tnh s. ghi s. li.u d.n vng khng gian cc c.ng ra c d.a ch. du.c xc d.nh b.i s. lu.ng cc bits d.a ch. tuong .ng v.i ch. d. lm vi.c . ch. d. vo/ra ny. BVXL khng h. tr. vo ra: Trong c.u trc c.a khng c cc modul cho php h. tr. vo ra. C. th. qu trnh d.c/ghi c.a my tnh ch. t.n t.i hai tn hi.u di.u khi.n l MEMR v MEMW. Khi d ngu.i ta ph.i s. d.ng 1 ph.n khng gian

c.a b. nh. d. lm khng gian vo/ra cho cc thi.t b. ngo.i vi Khi s. d.ng khng gian vo ra ring bi.t, my tnh s. t.o ra 1 vng d.a ch. cho cc c.ng vo t. aaaa h d.n bbbb h v.i tn hi.u di.u khi.n l IOR , s. d.ng l.nh IN v 1 vng d.a ch. cho cc c.ng ra t. aaaa h d.n bbbb h v.i tn hi.u di.u khi.n l IOW , s. d.ng l.nh OUT. Cc l.nh h. tr. vo ra trn my tnh IBM PC c hai ch. d. d.a ch.: Ch. d. d.a ch. tr.c ti.p: khng gian d.a ch. vo/ra du.c d.a ch. ha b.i 8 bits d.a ch. t. A0 d.n A7 (28 = 256 c.ng vo v 28 = 256 c.ng ra tuong .ng v.i aaaa h = 0000h v bbbbh = 00FF h). Khi d d.a ch. c.ng du.c n.m tr.c ti.p ngay trong l.nh. C. th.: L.nh vo Khi trao d.i s. li.u 8 bits Thanh ghi AL l thanh ghi thao tc (giao ti.p trn ph.n 62 chn c.a bus ISA) IN AL, #d.a ch. c.ng - V d. IN AL, 55h Khi trao d.i s. li.u 16 bits Thanh ghi AX l thanh ghi thao tc (giao ti.p trn ph.n 36 chn c.a bus ISA) IN AX, #d.a ch. c.ng V d. IN AX, 2Fh L.nh ra Khi trao d.i s. li.u 8 bits Thanh ghi AL l thanh ghi thao tc (giao ti.p trn ph.n 62 chn c.a bus ISA) OUT #d.a ch. c.ng, AL - V d. IN 55h, AL Khng gian vo ring bi.t - IOR S. d.ng khng gian vo/ra ring bi.t Khng gian ra ring bi.t - IOW bbbb h aaaa h bbbb h aaaa h

Khi trao d.i s. li.u 16 bits Thanh ghi AX l thanh ghi thao tc (giao ti.p trn ph.n 36 chn c.a bus ISA) OUT #d.a ch. c.ng, AX V d. IN 2Fh, AX Ch. d. d.a ch. gin ti.p: khng gian d.a ch. vo/ra du.c d.a ch. ha b.i 16 bits d.a ch. t. A0 d.n A15 (216 = 65536 c.ng vo v 216 = 65536 c.ng ra tuong .ng v.i aaaa h = 0000h v bbbbh = FFFF h). Khi d thanh ghi DX du.c s. d.ng d. ch.a d.a ch. c.a c.ng vo/ra. C. th.: L.nh vo Khi trao d.i s. li.u 8 bits Thanh ghi AL l thanh ghi thao tc (giao ti.p trn ph.n 62 chn c.a bus ISA) MOV DX, #d.a ch. c.ng IN AL, DX V d. MOV DX,03F8h ; n.p d.a ch. c.ng vo ln thanh ghi DX IN AL, DX ; d.c s. li.u t. c.ng c d.a ch. 03F8h Khi trao d.i s. li.u 16 bits Thanh ghi AX l thanh ghi thao tc (giao ti.p trn ph.n 36 chn c.a bus ISA) MOV DX, #d.a ch. c.ng IN AX, DX V d. MOV DX, 012Ah ; n.p d.a ch. c.ng vo ln thanh ghi DX IN AX, DX ; d.c s. li.u t. c.ng c d.a ch. 012Ah L.nh ra Khi trao d.i s. li.u 8 bits Thanh ghi AL l thanh ghi thao tc (giao ti.p trn ph.n 62 chn c.a bus ISA) MOV DX, 03F8h ; n.p d.a ch. c.ng vo ln thanh ghi DX OUT DX, AL ; ghi s. li.u ra c.ng c d.a ch. 03F8h Khi trao d.i s. li.u 16 bits Thanh ghi AX l thanh ghi thao tc (giao ti.p trn ph.n 36 chn c.a bus ISA) MOV DX, 012Ah ; n.p d.a ch. c.ng vo ln thanh ghi DX OUT DX, AX ; ghi s. li.u ra c.ng c d.a ch. 012Ah

Khi s. d.ng 1 ph.n khng gian b. nh. lm khng gian vo ra, my tnh s. s. d.ng 1 vng khng gian b. nh. d. lm khng gian vo/ra v t.o ra vng khng gian vo c d.a ch. t. xxxxx h d.n yyyyy h v.i tn hi.u di.u khi.n l MEMR s. d.ng l.nh chuy.n s. li.u t. m.t c.ng vo c d.a ch. ghi trong l.nh t.i thanh ghi bn trong c.a BVXL. Vng khng gian ra cung c d.a ch. t. xxxxx h d.n yyyyy h v.i tn hi.u di.u khi.n l MEMW s. d.ng l.nh chuy.n s. li.u t. thanh ghi bn trong c.a BVXL d.n m.t c.ng ra c d.a ch. ghi trong l.nh. Vng khng gian d.a ch. vo/ra l m.t vng b. nh. du.c bi.u di.n b.i 20 bits d.a ch. do d c.n ph.i c th. t.c khai bo d.a ch. do.n cho cc l.nh vo/ra. V d.: C.n d.c s. li.u t. d.a ch. c.ng 35000h vo my tnh, ta c.n cc bu.c sau: .a ch. v.t l 35000h c th. du.c bi.u di.n b.ng 1 d.a chi logic l 3000:5000 (DS:offset) MOV AX, 3000h ; kh.i t.o thanh ghi do.n s. li.u MOV DS, AX MOV AL,[5000] ; d.c s. li.u t. c.ng c d.a ch. 35000h. C.n ghi s. li.u ra c.ng c d.a ch. 35000h MOV AX,3000h ; kh.i t.o thanh ghi do.n s. li.u Khng gian vo MEMW S. d.ng 1 ph.n khng gian b. nh. lm khng gian vo/ra Vng nh. lm khng gian vo/ra Khng gian ra MEMR yyyyy h xxxxx h yyyyy h xxxxx h yyyyy h xxxxx h 00000 h FFFFF h

MOV DS, AX MOV [5000], AL ; ghi s. li.u ra c.ng 35000h. Lc ny s. li.u d. ghi ra c.ng ra ho.c d.c t. c.ng vo khng nh.t thi.t ph.i n.m trong thanh ghi tch luy m c th. l 1 trong b.t k. cc thanh ghi da nang no c.a CPU nhu AL, BL, CL, DL (trao d.i s. li.u 8 bits) hay AX, BX, CX, DX (trao d.i s. li.u 16 bits) N.i ghp vo/ra . n.i ghp cc c.ng vo/ra v.i bus c th. dng cc vi m.ch don gi.n nhu vi m.ch 74LS244 cho cc c.ng vo, 74LS374 cho cc c.ng ra hay s. d.ng vi m.ch l.p trnh vo/ra song song nhu 8255A. N.i ghp c.ng vo s. d.ng vi m.ch 74LS244 Vi m.ch 74LS244 l b. d.m 8 c.ng 1 chi.u c 2 chn di.u khi.n 1 G , 2 G , tm d.u vo c.a b. d.m du.c n.i d.n cc c.ng vo v 8 d.u ra c.a b. d.m du.c n.i d.n cc chn D0 d.n D7 c.a bus s. li.u. M.ch gi.i m bao g.m cc tn hi.u d.a ch. t. A0 d.n A7 k.t h.p v.i tn hi.u IOR cho php d.c s. li.u t. c.ng qua b. d.m 74LS244 d.n BVXL thng qua bus s. li.u. N.i ghp c.ng ra s. d.ng vi m.ch 74LS374: Thc hin lnh IN AL, 5Fh Q0 A0 Q7 A7 IOR T cng vo BUS d.a ch. BUS s. li.u 74 LS 244 G1 G2 D0 D7

Vi m.ch 74LS374 l m.ch ch.t 8 c.ng c chn di.u khi.n OC , bao g.m 8 triger D, tm d.u vo c.a m.ch ch.t du.c n.i d.n cc chn D0 d.n D7 c.a bus s. li.u, 8 d.u ra c.a m.ch ch.t du.c n.i d.n cc c.ng ra. M.ch gi.i m bao g.m cc tn hi.u d.a ch. t. A0 d.n A7 k.t h.p v.i tn hi.u IOW cho php ghi s. li.u t. thanh ghi Al c.a CPU qua bus d.n cc d.u vo c.a m.ch ch.t 74LS374 d.n cc c.ng ra. Qu.n l vo/ra My tnh thng qun l cc thit b Vo/Ra theo cc ph ng php sau: X l tun t: My tnh thc hin hi ln lt trng thi ca cc cng Vo/Ra, khi mt thit b ngoi vi no c yu cu phc v, trng thi cng s thay i, my tnh s phc v qu trnh vo/Ra . X l theo ngt: Khi c mt ngoi vi yu cu c c phc v, n s pht tn hiu yu cu ngt (IRQ) n BVXL, BVXL s dng tt c mi cng vic phc v yu cu ny. Nu ng thi c nhiu ngoi vi cng yu cu c phc v. My tnh s phc v chng ln lt theo th t u tin. D Q D0 A0 D7 A7 IOW OC T BUS S liu BUS a ch Cng ra 74 LS 373 Thc hin lnh OUT 99h, Al

Trong my tnh IBM PC, t.t c. cc ngo.i vi tiu chu.n du.c qu.n l b.ng phuong php ng.t. Yu cu ngt trong my tnh bao g.m: Ngt cng, ngt mm. Ng.t m.m du.c sinh ra trong qu trnh th.c hi.n chuong trnh, khi m chuong trnh c.n th.c hi.n m.t ch.c nang no d lin quan d.n H. di.u hnh. Ng.t m.m tuong .ng v.i m.t l.nh ASM int #s. hi.u ng.t. Ng.t c.ng l dp .ng t.c th.i c.a my tnh v.i m.t yu c.u du.c ph.c v. c.a m.t thi.t b. ngo.i vi tiu chu.n g.n trn my tnh nhu bn phm, a, my in..... Cc ngt ny c linh kin 8259A qun l. My tnh IBM PC XT c 8 ngo.i vi tiu chu.n g.n v.i cc ngt cng l: IRQ0 Timer IRQ1 Keyboard IRQ2 Dng trong my AT IRQ3 Serial port 2 IRQ4 Serial port 1 IRQ5 Hardisk IRQ6 Floppy disk IRQ7 Parallel port 1 My tnh IBM PC cho php dp .ng du.c 256 ng.t trong d c 15 ng.t c.ng cn l.i l ng.t m.m v d. tr.. M.i ng.t c.ng c m.t chuong trnh km theo n g.i l chuong trnh ph.c v. ng.t (ISR). M.i ng.t trong 256 ng.t trn my tnh du.c dnh s. th. t. theo s. hexa t. 00 h FF h du.c g.i l s. hi.u ng.t, cc s. hi.u ng.t t. 00 h FF h c m.c uu tin gi.m d.n: Ng.t c s. hi.u l 00 h c m.c uu tin cao nh.t v ng.t c s. hi.u l FF h c m.c uu tin th.p nh.t. Qu trnh dp .ng c.a my tnh v.i 1 yu c.u ng.t: Khi c 1 hay m.t vi yu c.u ng.t du.c sinh ra. CPU s. th.c hi.n cc thao tc sau:

C.t ton b. tr.ng thi c.a my tnh t.i th.i di.m hi.n t.i vo 1 vng nh. g.i l ngan x.p. Tr.ng thi d s. l gi tr. c.a thanh ghi c. tr.ng thi (RF 2 bytes) v d.a ch. c.a l.nh ti.p theo s. du.c th.c hi.n du.c n.m trong CS:IP. Xc d.nh s. hi.u ng.t, qua d xc d.nh du.c di.m vo c.a chuong trnh ph.c v. ng.t, n.p di.m vo d vo thanh ghi CS v IP d. ti.n hnh th.c hi.n chuong trnh ph.c v. ng.t. Sau khi th.c hi.n xong chuong trnh ph.c v. ng.t, tr.ng thi c.a my tnh t.i th.i di.m di.n ra qu trnh ph.c v. ng.t du.c khi ph.c v my tnh l.i ti.p t.c th.c hi.n cng vi.c m tru.c d n dang lm. . xc d.nh di.m vo c.a m.t chuong trnh ph.c v. ng.t, my tnh s. d.ng b.ng vector ng.t, trong d ghi s.n di.m vo c.a 256 ng.t. i.m vo c.a chuong trnh ph.c v. ng.t l nh. c d.a ch. logic (o.n: . l.ch) l 2 thanh ghi 16 bits, nhu v.y d. luu tr. du.c d.a ch. di.m vo c.a m.t chuong trnh ph.c v. ng.t ta c.n 4 bytes g.i l 1 ph.n t. c.a vector ng.t. V.i 256 chuong trnh ta c.n 256 ph.n t. v chi.m 1024 bytes b. nh.. B.ng vetor ng.t c.a my tnh IBM PC du.c b. tr n.m trong vng nh. c d.a ch. t. 00000 h 003FF h t.i vng th.p nh.t trn b.n d. b. nh.. B.n nh. 00000 00003 ch.a di.m vo c.a chuong trnh ph.c v. ng.t c s. hi.u ng.t 00, b.n nh. ti.p 00004 00007 ch.a di.m vo c.a chuong trnh ph.c v. ng.t c s. hi.u ng.t 01, b.n nh. ti.p 00008 0000B ch.a di.m vo c.a chuong trnh ph.c v. ng.t c s. hi.u ng.t 02 .v.v. Nhu v.y nh. d.u tin ch.a di.m vo c.a 1 chuong trnh ph.c v. ng.t bao gi. Yu c.u ng.t A C B D ISR E Khi ph.c tr.ng thi t.i C Xc d.nh di.m vo c.a ISR t.i D

cung g.p 4 l.n s. hi.u ng.t, do d ch. c.n xc d.nh du.c s. hi.u ng.t l ta c th. xc d.nh du.c di.m vo c.a chuong trnh ph.c v. ng.t. .i v.i ng.t m.m, s. hi.u ng.t du.c n.m ngay trong l.nh INT, v d. ta c l.nh INT 21h, l.nh INT 10h th 21h v 10h chnh l s. hi.u ng.t c.a yu c.u ng.t. V.i ng.t c.ng d. gn s. hi.u ng.t cho cc tn hi.u yu c.u ng.t IRQ, ngu.i ta s. d.ng vi.c l.p trnh vo thanh ghi ICW2 c.a vi m.ch di.u khi.n ng.t 8259 d. qu.n l cc ng.t c.ng. nh. /c nh. Ch.a d.a ch. d.u c.a chuong trnh ph.c v. ng.t c s. hi.u ng.t FF 003FF 003FE 003FD 003FC = 0FF *4 .. . Ch.a d.a ch. di.m vo c.a chuong trnh ph.c v. ng.t c s. hi.u ng.t 02 0000B 0000A 00009 00008 = 02 *4 Ch.a d.a ch. d.u c.a chuong trnh ph.c v. ng.t c s. hi.u ng.t 01 00007 00006 00005 00004 = 01 *4 Ch.a d.a ch. d.u c.a chuong trnh ph.c v. ng.t c s. hi.u ng.t 00 00003 00002 00001 00000 . xc d.nh di.m k.t thc c.a m.t chuong trnh ph.c v. ng.t, ngu.i ta quy d.nh l.nh cu.i cng c.a chuong trnh ph.c v. ng.t ph.i l IRET. . c.t gi. v khi ph.c tr.ng thi c.a my tnh t.i th.i di.m di.n ra qu trnh ph.c v. ng.t, my tnh s. d.ng ngan x.p. Ngan x.p l 1 segment (do.n b. nh.) du.c s. d.ng d. c.t gi.a tr.ng thi c.a my tnh khi ph.c v. cc thao tc ng.t v cc l.nh PUSH, POP c.a ASM. .a ch. c.a nh. noi s. di.n ra qu trnh h.i ph.c v c.t gi. du.c g.i l d.nh c.a ngan x.p SP. .a ch. v.t l d.nh c.a ngan x.p l SS:SP. Khi my tnh b.t d.u kh.i d.ng H. di.u hnh s. l.a ch.n 1 segment d. lm ngan x.p v kh.i

d.ng gi tr. c.a SP = FFFE. Khi di.n ra qu trnh ng.t, tr.ng thi c.a my tnh s. du.c c.t vo ngan x.p v d.nh c.a ngan x.p s. lin t.c thay d.i d. ch. d.n nh. l noi s. b.t d.u di.n ra qu trnh c.t gi. v h.i ph.c nhu sau: Qu trnh c.t gi. nh. Qu trnh h.i ph.c .a ch. nh. FFFF Gi tr. ban d.u c.a SP C.t gi. gi tr. c.a RF SP = SP +2 FFFE FFED SP = SP -2 C.t gi. gi tr. c.a CS t.i lc ng.t SP = SP +2 FFFC FFFB SP = SP -2 C.t gi. gi tr. c.a IP t.i lc ng.t SP = SP +2 FFFA FFF9 SP = SP -2 FFF8 FFF7 FFF6 FFF5 Ta th.y trong qu trnh c.t gi., thanh ghi con tr. l.nh (IP) du.c c.t gi. sau cng nhung l.i du.c l.y ra d.u tin trong qu trnh khi ph.c. Thanh ghi RF du.c c.t d.u tin nhung l.i du.c l.y ra sau cng, do d nguyn t.c lm vi.c first out). c.a ngan x.p du.c g.i l qu trnh LIFO (last in Tm t.t qu trnh x. l ng.t: 1. Ct thanh ghi c (FR) vo ngn xp v gim SP i 2 v FR l thanh ghi 2 byte. 2. Xo c hai c cho php ngt IF v c by TF (IF=0 v TF=0). Khi s che cc yu cu ngt khc a n chn INTR v hu b ch chy tng lnh trong khi CPU ang thc hin ch ng trnh con phc v ngt ISR. Tu thuc vo th tc ngt m ngi lp trnh c th hu che chn INTR bng lnh STI. 3. Ct CS hin hnh vo ngn xp v gim SP i 2. 4. Ct IP hin hnh vo ngn xp v gim SP i 2. 5. Nhn s hiu INT vi 4 xc nh a ch vt l ca ngt trong bng vec t ngt, qua c c CS v IP ca ch ng trnh phc v ngt ISR. 6. Vi CS:IP mi, CPU bt u nhn v thc hin cc lnh ca ch ng trnh phc v ngt ISR.

7. Lnh cui cng ca ISR l lnh IRET. Lnh ny thng bo CPU ti li gi tr IP, CS v FR t ngn xp v nh vy CPU c th chy tip ch ng trnh ti ni n b ngt. Vi m.ch di.u khi.n ng.t c.ng 8259 Vi m.ch di.u khi.n ng.t c.ng dng trong my tnh IBM PC cho php qu.n l du.c 8 ng.t c.ng tuong .ng v.i 7 ngo.i vi tiu chu.n l: IRQ0 Timer IRQ1 Keyboard IRQ2 Dng trong my AT IRQ3 Serial port 2 IRQ4 Serial port 1 IRQ5 Hardisk IRQ6 Floppy disk IRQ7 Parallel port 1 Vi m.ch 8259 c 8 d.u vo yu c.u ng.t IRQ0 IRQ7 v.i IRQ0 c m.c uu tin cao nh.t v IRQ7 c m.c uu tin th.p nh.t. Vcc A0 INTA IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0 INT SP / EN CAS 2 CS WR RD D7 D6 D5 D4 D3 D2 D1 D0 CAS 0 CAS 1 GND 1 2 3 4 5 6 7 8 28 27 26 25 24 23

22 21 8 2 5 9 Vcc GND 8259A IRQ0 IRQ1 IRQ2 IRQ3 IRQ4 IRQ5 IRQ6 IRQ7 D0-D7 RD WR CS A0 INT INTA CS0 CS2 SP/EN

. l.p trnh cho 8259 A, c.n thi.t l.p cc t iu khin ca 8259 d. thi.t l.p cc ch. d. lm vi.c cho 8259 nhu ch. d. lm vi.c d.c l.p, ch. d. n.i t.ng v thi.t l.p cc m.c uu tin cho cc tn hi.u yu c.u ng.t IRQ. 8259 c 4 t iu khin l ICW1, ICW2, ICW3 v ICW4. Vic la chn mt trong 4 t iu khin l s dng CS kt hp vi A0. CS A0 T lnh khi to 0 0 ICW1 0 1 ICW2, ICW3 v ICW4 Trong d thanh ghi ICW2 l thanh ghi cho php xc d.nh s. hi.u ng.t A0 D7 D6 D5 D4 D3 D2 D1 D0 1 T7 T6 T5 T4 T3 T2 T1 T0 Chc nng ca ICW2 l gn cc s hiu ngt cho IRQ0 IRQ7. Cc bits D2 D1 D0 thay i t 000 111 cng vi D3 D0 to ra cc s dng INT nn gn cho IRQ0 IRQ7 t ng ng. Nhn vo bng Vector ngt ta thy IRQ0 IRQ7 s ln lt t ng ng vi cc s hiu ngt INT 08 H INT 0F H nhvy ta c: Vi IRQ0: ICW2 c gi tr t ng ng vi 08 H. A0 D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 0 0 1 0 0 0 Vi IRQ1: ICW2 c gi tr t ng ng vi 09 H A0 D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 0 0 1 0 0 1 V vi IRQ7: ICW2 c gi tr t ng ng vi 0F H A0 D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 0 0 1 1 1 1 Sau khi ICW1, ICW2 v ICW4 ln lt pht ra v khi to 8259, BVXL 80x86 cng sn sng nhn nhn cc ngt cng t cc chn IRQ0 IRQ7 ca 8259. C th lp trnh che hoc thay i mc u tin ca bt c mt chn IRQ no.

8259 c ba t lnh l OCW1, OCW2, v OCW3. Bnh thu.ng IRQ0 du.c thi.t l.p m.c uu tin cao nh.t v IRQ7 c m.c uu tin th.p nh.t. My tnh IBM PC XT s dng 1 vi mch iu khin c 8 ngt cng, t my tnh AT s dng thm 1 vi mch na m rng ngt cng ln 15. My IBM PC AT s dng 2 vi mch 8259, vi mch th nht lm vic ch ch v vi mch th 2 c cy thm lm vic ch t v c ghp vi vi mch ch qua chn IRQ2. Vi mch ch v t. trao i thng tin qua chn IRQ2, INT, CAS0, CAS1 v CAS2. Trn my XT tn hiu IRQ2 c a ra khe cm rnh ISA, trn my AT, IRQ2 c dng cho 8259 th hai. Lc ny khe cm trn rnh ISA c thay bng IRQ9 (trn 8259 th hai). Trn my AT mc u tin c th t nhsau: IRQ0, IRQ1, IRQ8 IRQ15, IRQ3 IRQ7. Mc kch pht ngt theo mc c s dng trn cc Bus EISA v MCA trn my AT trnh phi ngt nhm do nhiu tc ng vo cc ng IRQ khi my tnh lm vic tn s cao.

Truy c.p tr.c ti.p b. nh. (DMA) Khi my tnh cn phi chuyn mt s lng ln s liu gia thit b ngoi vi v b nh. Nu dng CPU thc hin th u tin CPU nhn thng tin ri sau mi chuyn n ni nhn. Qu trnh nhn v gii m lnh cn cn thm cc thng tin b xung do cng vic ny s rt chm. V vy Intel thit k b iu khin v truy cp trc tip 8237 vi chc nng b qua CPU v truyn s liu trc tip gia b nh v ngoi vi, nh vy m lm cho qu trnh s nhanh ln nhiu. V d: truyn byte s liu t ngoi vi v b nh, nu thng qua CPU th phi mt 39 chu k ng h, nhng dng 8237 th ch mt 4 chu k ng h S chu k ng h LAP: MOV AL, [SI] 10 OUT PORT,AL 10 INC SI 2 LOOP LAP 17 ; S chu k : 39 Nhvy khi s dng DMA th lc BUS h thng khng cn do CPU lm ch na m do b iu khin thm nhp trc tip 8237 lm ch. Khc vi qu trnh truyn s liu qua CPU, DMA ch truyn s liu m khng c qu trnh gii m v thc hin lnh v khi CPU nhn tn hiu HOLD n s kt thc chu k BUS hin hnh trao quyn iu hnh BUS cho 8237 khc vi ngt cng CPU cn kt thc lnh hin hnh trc khi pht tn hiu INTA. Vi mch Intel 8237 bao gm 4 knh DMA, hot ng c lp, mi knh c mt cp tn hiu l DREQ v DACK. Tn hiu HRQ c ni n chn HOLD ca CPU truyn tn hiu yu cu c iu khin BUS v chn HLDA c ni vi HLDA ca CPU nhn tn hiu cho php DMA t CPU.

Bn knh DMA c nh cc mc u tin khc nhau bng lp trnh. Mi knh DMA trc khi s dng phi c khi to xc nh a ch v kch trc ca khi s liu. Qu trnh khi to l ghi vo tng knh cc ni dung: a ch u ca khi s liu cn truyn i (a ch c s) S lng byte cn truyn (S t) t ch lm vic cho cc knh ca 8237 cn phi lp trnh bng cch ghi gi tr vo cc thanh ghi ca 8237 qua bn chn a ch A0 - A3. Mi knh DMA c a ch c s ring v c s t ring nn 8237 cn 8 cng. Sau y l a ch ni b ca 8237 trong qu trnh ghi a ch truyn v m. CH R/W CS IOR IOW A3 A2 A1 A0 0 a ch hin hnh v c s W 0 1 0 0 0 0 0 a ch hin hnh R 0 0 1 0 0 0 0 m t hin hnh v c s W 0 1 0 0 0 0 1 DB0-DB7 A0-A7 Data Address Control DMA0 DMA1 DMA2 DMA3 DREQ0 DACK0 DREQ1 DACK1 DREQ2 DACK2 DREQ3 DACK3 B m d liu B thi gian v /khin B m a ch nh quyn u tin S KHI n gin ca 8237

m t hin hnh R 0 0 1 0 0 0 1 1 a ch hin hnh v c s W 0 1 0 0 0 1 0 a ch hin hnh R 0 0 1 0 0 1 0 m t hin hnh v c s W 0 1 0 0 0 1 1 m t hin hnh R 0 0 1 0 0 1 1 2 a ch hin hnh v c s W 0 1 0 0 1 0 0 a ch hin hnh R 0 0 1 0 1 0 0 m t hin hnh v c s W 0 1 0 0 1 0 1 m t hin hnh R 0 0 1 0 1 0 1 3 a ch hin hnh v c s W 0 1 0 0 1 1 0 a ch hin hnh R 0 0 1 0 1 1 0 m t hin hnh v c s W 0 1 0 0 1 1 1 m t hin hnh R 0 0 1 0 1 1 1 lp trnh cho 8237 truyn s liu cn c: a ch byte u tin ca khi s liu cn truyn S lng byte s liu cn truyn. xc nh a ch byte u tin ca khi s liu cn truyn y l mt s 16 bits trong khi bus s liu l 8 bits cho nn cn phi gi 2 byte s liu cng mt a ch. xc nh s lng thng tin cn truyn, cn phi ghi thng tin vo thanh ghi m. S m cc i ca thanh ghi m l FFFF h do cng cn phi 2 ln ghi lin tip ra cng mt a ch. Ghp ni vi mch 8237 trn my tnh IBM PC/XT A7, bn ng Cc chn a ch ca 8237 t A0 t A0 A3 l cc ng hai chiu cng vi CS cho php 8237 chn mt trong s 16 thanh ghi. Trong cc a ch cng t x0H x7H c gn cho 4 knh DMA v cc a ch t x8H xFH c gn cho cc thanh ghi iu khin c tt c cc knh s dng. Khi thc hin DMA b iu khin 8237 s nm quyn iu hnh Bus do n cng cn phi c y Bus iu khin, Bus s liu v Bus a ch.

8237 c Bus s liu hai chiu 8 bits t D0 D7 c ni vo Bus h thng. 8237 cng cung cp 4 ng iu khin IOR , IOW, MEMR v MEMW. Vi Bus a ch ch c 8 bits t A0 A7 nn khi cn truyn khi s liu c kch thc ln phi cn thm cc ng a ch t A8 A15, 8237 s dng 8 bits s liu D0 D7 to phn cao ca a ch v dng mt mch cht 74LS373. Khi tn hiu ADSTB (Address strobe) c vai tr nhtn hiu ALE mch cht a ch khi ni ghp CPU vi Bus a ch.. CPU ch s dng BUS khi 8237 khng hot ng. Tn hiu AEN m bo iu kin ny: AEN = 0: CPU 80x86 iu khin bus h thng. AEN = 1: Vi mch 8237 iu khin bus h thng. Cc chn cn li ca 8237: RESET: L u vo c ni ti tn hiu RESET ca 8284. READY l chn vo t RYMA ca mch pht trng thi i vi mc ch ko di chu k b nh ca DMA CLK c ni n chn CLK ca 8284 v c tn s lm vic 4,7 Mhz. HOLD v HLDA c ni vi cc chn HOLD v HLDA ca 80x86. EOP c o pha thnh TC. Tn hiu ny c kch hat mi khi thanh ghi m ca mt trong 4 knh DMA bng 0. DREQ0 v DACK0 l cc tn hiu ca knh 0 c dng lm t i DRAM. DACK3 l cc tn hiu ca knh 1 n 3 c DREQ1 DREQ3 v DACK0 b tr trn rnh ISA. Trn my tnh IBM PC XT cc knh DMA c s dng nhsau: Knh 0 c dng lm t i DRAM. Trong cc my PC/AT khng cn chc nng ny. Knh 1 khng c s dng, ngi ta dng knh ny cho mng. Knh 2 dng cho b iu khin a mm. Knh 3 dng cho b iu khin a cng.

8237 DACK1 74LS244 . . . . . . . DMA HRQ RESET A0 CS RDY A3 CLK A4 HLDA IOR A7 IOW MEMR HRQ RESET T gii m T RDY n DMA ng h DMA HLDA m Bus iu khin DREQ0 DREQ1 DREQ2 DREQ3 . D0 D7 A0 A7 TC DACK BRP DACK0 DACK2 DACK3 DACK1 74LS244 . . . . . . . DMA HRQ RESET A0 CS RDY A3 CLK A4 HLDA IOR A7 IOW MEMR

HRQ RESET T gii m T RDY n DMA ng h DMA HLDA m Bus iu khin DREQ0 DREQ1 DREQ2 DREQ3 . D0 D7 A0 A7 TC DACK BRP DACK0 DACK2 DACK3 A0 A1 DMA AEN T cng 80H T m a ch D0 . . . . A8 A15 D0 RA D1 RB D2 D3 Q0 A16 A17 Q1 A18 WA Q2 A19 WB Q3 Read Write 74LS670

AEN= 1 DMA iu khin Ni ghp 8237 Trn my IBM PC-XT

DMA my tnh IBM PC AT 80x86 Trn my IBM PC XT c 3 knh DMA c a ra trn rnh ISA. Tt c cc knh ny l DMA 8 bits. T my IBM PC AT dng BVXL 08286 tr i c b xung thm vi mch 8237 th hai thc hin DAM truyn s liu 16 bits. Vi mch 8237 #1. DREQ1, DREQ2, DREQ3 ca 8237 th nht thc hin chc nng nhtr n my XT (Thc hin DMA 8 bits cho mch vo/ra v vi b nh 16 MB ca my AT). My tnh AT c mch lm t i DRAM ring m khng s dng knh 0 ca 8237#1. v DREQ0 v DACK0 c cung cp trn phn 36 chn m rng ca ISA Bus . Cc knh 0 ,1, 2, 3 c dng truyn s liu 8 bits gia I/O v b nh. Thanh ghi m c di 16 bits do cc knh 0 ,1, 2, 3 c th truyn c khi s liu c di n 64KB. Vi mch 8237#2 c dng lm mch ch v knh 0 c s dng ni tng DACK7 c vi 8237#1. Ba knh cn li DREQ5 - DREQ7 v DACK 5 b tr phn 36 chn ca Bus ISA. Ba knh ny c dng truyn s liu 16 bits. Cc knh DMA 5, 6, 7 ca 8237#2 c dng truyn s liu 16 bits gia b nh 16 MB v I/O. Vi thanh ghi m l thanh ghi 16 bits nn vi s liu 16 bits mi knh DMA c th truyn c 65536 t hay 128 KByte gia I/O v b nh. a ch b nh ca khi s liu truyn DMA l a ch chn. Cc knh 5, 6, 7 truyn s liu sang b nh h thng 16 Mb theo khi, cc khi ny c kch thc ti a l 128 KByte

Mch Vo/Ra song song. Vo ra song song l v.i m.i l.n th.c hi.n l.nh IN ho.c l.nh OUT th d.ng th.i c. 8 bits hay 16 bits s. li.u du.c chuy.n t. bus d.n ngo.i vi hay ngu.c l.i. Uu di.m c.a truy.n song song l d.m b.o t.c d. truy.n cao khi s. bits du.c truy.n trong 1 l.nh cng l.n (d.i thng c.a bus ph. thu.c vo d. r.ng c.a bus s. li.u). Nhu.c di.m c.a phuong php truy.n ny l khi truy.n v.i kho.ng cch xa s. g.p kh khan v s. lu.ng dy d.n l.n v nhi.u tc d.ng ln du.ng truy.n gy .nh hu.ng t.i ch.t lu.ng truy.n s. li.u. My tnh IBM s dng 2 vi mch iu khin Vo/Ra song song 8255-A thc hin: Ghp ni my tnh vi my in (nm trn Card Vo/Ra). Mt (nm trn Mother Board) thc hin ni ghp bn phm, mch iu khin thi gian v kim chn l RAM. S cu trc ca vi mch 8255 nhsau: Gii m a ch Cng A Cng C Cng B Thanh ghi iu khin Phn cao Phn thp A1 A0 Da ta D7 D0 Reset RD WR Ready IO/M Nhm 1 Nhm 2 CS

Vi m.ch 8255 trn my tnh IBM PC. Trn my tnh IBM PC s. d.ng 2 vi m.ch 8255, m.t n.m trn MotherBoard v.i d.a ch. gi.i m l 60H, c. 2 nhm d.u lm vi.c . Mode 0 c ch.c nang nhu sau: Vi m.ch 8255 th. 2 n.m trn Card I/O cho php n.i ra c.ng LPT v.i d.a ch. gi.i m l 0378 h. Do c.ng LPT c th. n.i du.c v.i r.t nhi.u ngo.i vi khc nhau nhu my in, scanner, disk box.v.v. do d v.i m.i lo.i ngo.i vi khc nhau, chuong trnh di.u khi.n s. thi.t l.p mode cho 8255 d. ph h.p v.i ngo.i vi d. Ch.ng h.n nhu khi k.t n.i v.i my in, hai nhm c.ng c.a 8255 du.c thi.t l.p ch. d. 1, v.i c.ng A l c.ng ra cho php truy.n s. li.u c.n in t. my tnh sang, 4 bits cao c.a c.ng C s. l tn hi.u b.t tay. C.ng B l c.ng vo cho php truy.n tr.ng thi c.a my in sang my tnh v 4 bits th.p c.a c.ng C l tn hi.u b.t tay. D0 = 0: Na thp Port C - Out D0 = 1: Na thp Port C - In 1 D6 D5 D4 D3 D2 D1 D0 D4 = 0: Port A - Out D1 = 0: Port B - Out D4 = 1: Port A - In D1 = 1: Port B - In D3 = 0: na cao Port C - Out D3 = 1: Na cao Port C - In Chn Mode - nhm 1 00 - Mode 0 01 - Mode 1 1x - Mode 2 Chn Mode - nhm 2 0 - Mode 0 1 - Mode 1 nh ngha thanh ghi iu khin ca 8255A PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 C.ng A (vo) d.a ch. 60H .c m qut bn phm PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 C.ng B (ra) d.a ch. 61H M. loa Time 2 M. d. li.u cho loa Khng s. d.ng Khng s. d.ng Ki.m tra ch.n l. DRAM Ki.m tra knh I/O Khng s. d.ng Khng s. d.ng

PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 Khng s. d.ng 1: c d.ng x. l 0: c dia Khng s. d.ng Khng s. d.ng Output knh time2 Ki.m tra knh I/O Ki.m tra ch.n l. DRAM C.ng C (vo) d.a ch. 62H

Trn my tnh IBM PC cho php c du.c 4 cng LPT l cc c.ng LPT1, LPT2, LPT3 v LPT4. Khi kh.i d.ng my tnh H. di.u hnh s. ki.m tra tr.ng thi c.a cc c.ng LPT v luu d.a ch. cc c.ng ny vo cc nh. c d.a ch. 00408 004f. Vo ra n.i ti.p Vo ra n.i ti.p l v.i m.t l.nh IN hay OUT th ch. 1 bits s. li.u du.c truy.n di m thi. Truy.n n.i ti.p c t.c d. ch.m hon so v.i truy.n song song nhung khi truy.n di v.i kho.ng cch xa th s. lu.ng dy d.n t hon nhi.u do d d. tri.n khai, gi thnh h. nn trn my tnh v.n s. d.ng d.ng th.i c. hai phuong php truy.n song song v truy.n n.i ti.p cho cc .ng d.ng khc nhau c.a truy.n s. li.u. Trong truy.n s. li.u thu.ng c hai giao th.c l truy.n d.ng b. v truy.n khng d.ng b.. . truy.n d.ng b., my thu v my pht du.c lm vi.c v.i cng 1 dao d.ng ch. v m.i l.n truy.n ngu.i ta th.c hi.n truy.n 1 kh.i s. li.u c dung lu.ng d.n hng ch.c KB. . truy.n khng d.ng b., my thu v my pht du.c lm vi.c v.i 2 ngu.n dao d.ng ch. khc nhau v m.i l.n truy.n s. li.u ngu.i ta ch. truy.n 1 byte. Th. t.c c.a m.i l.n truy.n bao g.m: Tn hi.u kh.i d.ng (start), kh.i s. li.u (data), tn hi.u ki.m tra ch.n, l. (parity), tn hi.u k.t thc (stop). Th. t.c ny bao gi. cung du.c thi.t l.p gi.ng nhau trn c. my thu v my pht g.i l d.nh khung truy.n s. li.u. Theo s. pht tri.n c.a cng ngh. truy.n s. li.u, ngu.i ta phn ra cc hnh th.c truy.n: don cng, bn song cng v song cng. (Tham kh.o thm trong ti li.u) Cc thi.t b. truy.n thng trong truy.n s. li.u cung du.c phn bi.t thnh: Thi.t b. d.u cu.i (Data Tecminal Equipmet - DTE) l ngu.n ho.c dch c.a s. li.u, v d. nhu my tnh, my di.n tho.i, my fax.v.v. Thi.t b. truy.n s. li.u (Data Comunication Equipment DCE) ch cc thit b truyn thng, v d nhu modem - chu trch nhim truyn d. liu. Truy.n s. li.u n.i ti.p trong my tnh theo tiu chu.n RS232

Chu.n RS 232 cho truy.n thng n.i ti.p du.c dua ra t.i M. t. nam 1961, khi cho ra d.i PC, IBM d s. d.ng chu.n ny cho truy.n thng n.i ti.p c.a IBM PC, RS 232 g.m cc tn hi.u sau: TxD (Transmitted Data)-d liu pht. RxD (Received Data)- d liu thu. DTR (data terminal ready) - thit b u cui sn sng. DSR (data set ready) - d liu sn sng. RTS (request to send) - yu cu gi d liu. CTS (clear to send) - tn hiu thng. DCD (data carrier detect) - d sng mang d liu. RI (ring indicator) - ch th chung. Cc tn hi.u trn d.m b.o d.m b.o cho RS 232 truy.n s. li.u n.i ti.p gi.a: DTE v.i DTE N.i tr.c ti.p 2 my tnh v.i nhau, TDE v.i DCE N.i my tnh v.i modem, DCE v.i DCE N.i hai modem v.i nhau. V l chu.n ra d.i tru.c my tnh nn RS 232 quy d.nh cc m.c tn hi.u 0 v 1 nhu sau: Mc 1 tuong ng t -3V n -25V, cn mc 0 tuong ng t +3V n +25V, t -3V n +3V khng xc nh. Trong khi d, my tnh s. d.ng di.n p tuong thch v.i m.c TTL quy d.nh m.c 1 tuong .ng v.i + 5V, m.c 0 tuong .ng v.i GND. Chnh v v.y khi n.i ghp my tnh v.i RS 232 c.n ph.i c chuy.n d.i m.c di.n p t. TTL sang RS 232 v ngu.c l.i. Ngu.i ta s. d.ng cc vi m.ch chuy.n d.i nhu sau: In Out 1489 CPU UART Chip (TTL) 2 3 7 Modem 1488 GND GND RS 232

. chuy.n d.i t. m.c TTL sang RS 232 (. m.ch pht) ngu.i ta s. d.ng vi m.ch 1488. . chuy.n d.i t. m.c RS 232 sng TTL (. m.ch thu) ngu.i ta s. d.ng vi m.ch 1489. Trn my tnh IBM PC, giao di.n RS232 cn du.c g.i l c.ng COM, thu.ng my tnh c 4 c.ng COM du.c dnh s. th. t. l COM1, COM2, COM3, COM4. Khi kh.i d.ng my tnh H. di.u hnh s. ki.m tra s. c m.t c.a cc c.ng COM v luu d.a ch. cc c.ng ny vo vng nh. c d.a ch. 00400 - 00407 N.i ghp gi.a DTE v.i DTE v DTE v.i DCE duoc bi.u di.n nhu hnh v. du.i dy: Vi m.ch l.p trnh vo/ra n.i ti.p 8250. Vi m.ch 8250 l vi m.ch l.p trnh c ch.c nang truy.n v nh.n s. li.u n.i ti.p t.i cc c.ng COM theo chu.n RS 232 trn cc my tnh IBM PC. Vi m.ch 8250 c cc chn s. li.u D0 D7 du.c n.i d.n cc chn D0 - D7 tuong .ng c.a bus s. li.u cho php c th. l.p trnh cho vi m.ch ny. C 3 chn d.a ch. A2A1A0 du.c n.i tr.c ti.p t. bus d.a ch. d.n vi m.ch cho php l.a ch.n 8 thanh ghi bn trong vi m.ch l. TT A2 A1 A0 Tn thanh ghi 0 0 0 Thanh ghi d.m s. li.u thu v luu s. li.u pht 0 0 1 Thangh ghi cho php ng.t 0 1 0 Thanh ghi nh.n bi.t ng.t (ch. d.c) 0 1 1 Thanh ghi di.u khi.n du.ng truy.n 1 0 0 Thanh ghi di.u khi.n modem 1 0 1 Thanh ghi tr.ng thi 1 1 0 Thanh ghi tr.ng thi modem 1 1 1 Thanh ghi xa (reset) 2 3 DTE 2 3 DCE TxD RxD GND 2 3 DTE 2 3 DTE TxD RxD GN

Trn my tnh IBM PC c.ng COM1 c d.a ch. gi.i m t. 03f8h d.n 03ffh. Khi xt truy.n n.i ti.p gi.a DTE v DTE trn cc c.ng COM ta s. xt cc thanh ghi d.m s. li.u thu v pht (03f8h), thanh ghi di.u khi.n du.ng truy.n (03fbh) v thanh ghi tr.ng thi du.ng truy.n (03fdh). Xt vi.c truy.n s. li.u gi.a DTE v DTE. Khi d cp k.t n.i theo quy d.nh nhu hnh v. d trnh by . trn. Ta c.n ph.i thi.t l.p c. . my thu v pht nh.ng tham s. sau: - .nh d.ng s. li.u truy.n, - T.c d. truy.n. . thi.t l.p d.nh d.ng s. li.u truy.n ta l.p trnh vo thanh ghi di.u khi.n du.ng truy.n (03fbh) c cc bits du.c d.nh nghia nhu sau: V d.: d. thi.t l.p ch. d. truy.n gi.a hai my tnh v.i nhau theo d.nh d.ng nhu sau: truy.n m ASCII (8 bits s. li.u), 2 bits stop, ki.m tra ch.n, ta ph.i ghi vo thanh ghi di.u khi.n du.ng truy.n gi tr. l 9Fh b.ng cc l.nh sau: MOV DX,03fbh ; N.p d.a ch. thanh ghi di.u khi.n du.ng truy.n MOV AL,09Fh ; .nh d.ng truy.n s. li.u OUT DX, AL ; N.p thanh ghi di.u khi.n du.ng truy.n Hay d. thi.t l.p ch. d. truy.n gi.a 2 my tnh v.i nhau theo d.nh d.ng, 8 bits s. li.u, khng ki.m tra ch.n l., 1 bit stop. Khi d ta ph.i ghi vo thanh ghi di.u khi.n du.ng truy.n gi tr. l 83h. MOV DX,03fbh ; N.p d.a ch. thanh ghi di.u khi.n du.ng truy.n MOV AL,83h ; .nh d.ng truy.n s. li.u OUT DX, AL ; N.p thanh ghi di.u khi.n du.ng truy.n D7 D6 D5 D4 D3 D2 D1 D0 DLAB Break Parity Stop bit 0 0 5 bits data 1 0 0 1 6 bits data 1 0 7 bits data 1 1 8 bits data 0 1 bit stop 1 2 bit stop 0 0 0 Khng ki.m tra ch.n l. 0 0 1 Ki.m tra l. 0 1 1 Ki.m tra ch.n

. thi.t l.p t.c d. truy.n s. li.u ta c.n ph.i d.t bit D7 c.a thanh ghi di.u khi.n du.ng truy.n ln 1 v s. n.p vo 2 thanh ghi c d.a ch. 03f8h v 03f9h m.t s. du.c tnh nhu sau: V d: Xc nh s chia ghi vo cc thanh ghi LSB v MSB c tc truyn 300 bps vi tn s dua vo chn Xin = 1,8432 Mhz: Lp trnh : mov al,80h ; t DLAB = 1 mov dx, 3fbh ; a ch thanh ghi iu khin du.ngtruyn out dx, al ; t DLAB = 1 ; gi s chia mov ax, 180 ; tc truyn la 300 bps mov dx, 3f8h ; a ch phn thp b chia out dx,al ; np phn thp s chia mov al, ah ; chuyn phn cao s chia sang al inc dx ; a ch phn cao s chia out dx, al ; np phn cao s chia . truy.n v nh.n s. li.u c.n ph.i h.i tr.ng thi c.a thanh ghi tr.ng thi du.ng truy.n, n.u du.c php lc d ta m.i du.c nh.n v truy.n s. li.u. Thanh ghi tr.ng thi du.ng truy.n c d.a ch. 03fdh c cc bits du.c d.nh nghia nhu sau: D7 D6 D5 D4 D3 D2 D1 D0 0 TEMT THRE BI PE PE OE DR S. chia = ------------------Xin T.c d.*16 384 = ------------------- = 1,8432*106 300*16 = 180h =1 s.n sng nh.n s. li.u =1 l.i trn s. li.u =1 l.i ch.n l. =1 l.i d.nh d.ng khung =1 c ng.t 1= Thanh ghi luu gi. v thanh ghi d.ch pht r.ng 1= Thanh ghi luu gi tr. pht r.ng

Nhu v.y ta ch. c th. nh.n s. li.u khi m bit Do c.a thanh ghi tr.ng thi du.ng truy.n c m.c logic 1, do.n chuong trnh ki.m tra tr.ng thi du.ng truy.n cho php nh.n s. li.u nhu sau: STATUS: MOV DX, 03fdh ; Thanh ghi tr.ng thi du.ng truy.n IN AL, DX : d.c thanh ghi tr.ng thi du.ng truy.n AND AL, 01 CMP AL,01 ; ki.m tra bit D0 c m.c logic 1 JNE STATUS ; n.u chua th ki.m tra ti.p RECEIVER: MOV DX, 03F8h ; nh.n n.u bit D0 c m.c logic 1 IN AL, DX Ta cung ch. c th. th.c hin truy.n s. li.u khi m D6 D5 c.a thanh ghi trang thi du.ng truy.n cng c m.c logic 1 . STATUS: MOV DX, 03fdh ; Thanh ghi tr.ng thi du.ng truy.n IN AL, DX : d.c thanh ghi tr.ng thi du.ng truy.n AND AL, 60h CMP AL,60 ; ki.m tra bit D6D5 c m.c logic 1 JNE STATUS ; n.u chua th ki.m tra ti.p TRANSMISSION: MOV DX, 03F8h ; truy.n n.u bit D6D5 c m.c logic 1 OUT DX, AL

Mn hnh v Card di.u khi.n mn hnh Mn hnh l m.t thi.t b. ra cho php hi.n th. k.t qu. c.a cc chuong trnh v gip cho giao ti.p ngu.i my l tr.c ti.p. Card di.u khi.n mn hnh th.c t. l m.t h. vi x. l du.c n.i ghp v.i my tnh theo m.t s. chu.n: CGA, EGA, VGA v SVGA. Khi c.n dua thng tin ln mn hnh BVXL c.a my tnh s. dua cc thng tin d vo vng nh. video RAM (A0000h BFFFFh) v BVXL c.a card di.u khi.n mn hnh s. l.y thng tin d, bi.n d.i v dua ra mn hnh. M.t s. khi ni.m c.n ph.i n.m du.c: - i.m .nh (Picxel), - . phn gi.i (resolution), - Kho.ng cch gi.a 2 di.m .nh (dot pich) Mn hnh v card di.u khi.n mn hnh c 2 ch. d. lm vi.c. Ch. d. Text (van b.n). Ch. d. graphic (d. h.a). Trong ch. d. van b.n, m.c dch l hi.n th. cc ch. ci Latinh ln mn hnh, m.t ma tr.n di.m .nh s. du.c dng d. hi.n th. m.t ch. ci latinh du.c m ha v g.i l m ASCII, ma tr.n di.m .nh d c th. l 9*14 ho.c 8*14 ty theo d. phn gi.i c.a mn hnh. Ngu.i ta tnh s. ch. ci la tinh (k t.) c th. hi.n ra trn mn hnh g.i l d. phn gi.i. . ch. d. van b.n c 2 d. phn gi.i thu.ng l 80*25 (2000 k t. trn mn hnh) v 40*25 (1000 k t. trn mn hnh). S. k t. trn mn hnh c s. th. t. b.t d.u t. 1 du.c tnh t. tri qua ph.i v t. trn xu.ng du.i. 1 k t. trn mn hnh c.n c cc thng tin sau: V. tr c.a n trn mn hnh (s. th. t.), K t. m n c.n hi.n th., Mu s.c, d. sng c.a k t. du.c hi.n th.. . xc d.nh v. tr c.a k t. ngu.i ta bi.u di.n thng qua v. tr theo hng v c.t c.a n trn mn hnh. V d. k t. du.c bi.u di.n t.i hng 12 c.t 30 s. c s. th. t. l (12*80) + 30. My tnh s. dng thanh ghi dl d. bi.u di.n v. tr c.t v thanh ghi dh d. bi.u di.n v. tr hng c.a k t.. N.i dung c.a k t. c.n hi.n th. chnh l m ASCII c.a n, dy l 1 s. 8 bits, do d my tnh s. s. d.ng 1 byte trong vng nh. video RAM d. luu gi tr. ny.

Mu s.c, d. sng c.a k t. cung du.c bi.u di.n b.ng 1 byte du.c g.i l byte thu.c tnh du.c d.nh nghia nhu sau: Xem n.i dung c.a byte thu.c tnh trong ti li.u. Nhu v.y, v.i 1 k t. c.n du.c hi.n th. ra mn hnh c.n 2 byte thng tin v. n: Byte ch.a m ASCII c.a k t. v byte thu.c tnh. V.i mn hnh c d. phn gi.i 2000 k t. s. c.n 4000 byte d. bi.u di.n cho mn hnh ny. Do v.y . ch. d. van b.n ngu.i ta thu.ng dng b. nh. video RAM b.t d.u t. d.a ch. B8000h. Khi d n.i dung cc nh. c.a b. nh. video RAM s. c n.i dung nhu sau: B800:0000 B8000 K t ca hng 1 ct 1 B800:0001 B8001 Thuc tnh ca k t hng 1 ct 1 B800:0002 B8002 K t ca hng 1 ct 2 B800:0003 B8003 Thuc tnh ca k t hng 1 ct 2 B800: 07CE B87CE K t hng 25 ct 80 B800: 07CF B87CF Thuc tnh ca k t hng 25 ct 80 Can c. quy lu.t trn, ngu.i ta rt ra quy lu.t: byte ch.n ch.a m ASCII c.a k t., byte l. ch.a thu.c tnh c.a k t.. Mn hnh CGA c 8 ch. d. lm vi.c (t. 0 7) Ch. d. im nh K t Hp k t Ch S mu Trang m /c u 00H 320 * 350 40 * 25 8 * 14 Vn bn 16 8 B8000H 01H 320 * 350 40 * 25 8 * 14 Vn bn 16 8 B8000H 02H 640 * 350 80 * 25 8 * 14 Vn bn 16 8 B8000H 03H 640 * 350 40 * 25 8 * 14 Vn bn 16 8 B8000H 04H 320 * 200 40 * 25 8 * 8 ha 4 1 B8000H 05H 320 * 200 40 * 25 8 * 8 ha 4 1 B8000H 06H 640 * 200 80 * 25 8 * 8 ha 2 1 B8000H 07H 720 * 200 80 * 25 9 * 14 Vn bn 1 4 B0000H Trong d ch. d. 4, 5,6 l ch. d. d. h.a cc ch. d. cn l.i l ch. d. van b.n. Mn hnh EGA c b. sung thm cc ch. d. d. h.a l 0D, 0E, 0F v 10h: D7 D6 D5 D4 D3 D2 D1 D0 B R G B I R G B B Nn Mu ch B = 0: Khng nhp nhy; I = 0: sng thng Byte thuc tnh trong ch TEXT

0DH 320 * 200 40 * 25 8 * 8 ha 16 2/4 A0000H 0EH 640 * 200 80 * 25 8 * 8 ha 16 1/2 A0000H 0FH 640 * 350 80 * 25 9 * 14 ha 1 1 A0000H 10H 640 * 350 80 * 25 8 * 14 ha 16 2 A0000H Mn hnh VGA c b. sung thm cc ch. d. d. h.a l 11h, 12h, v 13h: Ch. d. im nh K t Hp k t Ch S mu Trang m /c u 11H 640 * 480 80 * 30 8 * 16 ha 2 1 A0000H 12H 640 * 480 80 * 30 8 * 16 ha 16 1 A0000H 13H 320 * 200 40 * 25 8 * 8 ha 256 1 A0000H L.p trnh . ch. d. van b.n: . l.p trnh cho mn hnh . ch. d. van b.n, dng ng.t int 10h v.i cc gi tr. khc nhau c.a AH d. c cc ch.c nang khc nhau. Chi ti.t xem trong ti li.u Int 10h v.i ah =00h; thi.t l.p ch. d. - Gi tr. c.a AL l ch. d. mn hnh Int 10h v.i ah=02h; d.ch chuy.n con tr. d.n v. tr du.c ghi trong dh v dl Int 10h v.i ah =0eh; hi.n th. ra mn hnh t.i v tr c.a con tr. k t. c m ASCII n.m trong AL. Int 10h v.i ah=09h; hi.n th. ra mn hnh t.i v tr c.a con tr. k t. c m ASCII n.m trong AL, thu.c tnh n.m trong BL, CX s. l.n hi.n th.. Int 10h v.i ah=13h; hi.n th. ra mn hnh dy k t. .v.v. Ch. d. d. h.a c.a mn hnh v card mn hnh. . ch. d. d. h.a, Card di.u khi.n mn hnh s. di.u khi.n d.n t.ng di.m sng trn mn hnh. Thng tin v. 1 di.m sng trn mn hnh bao g.m: V. tr c.a di.m sng trn mn hnh. Mu s.c v d. sng c.a di.m sng d trn mn hnh. Do d. phn gi.i l.n nn lc ny khng th. dng thanh ghi 8 bits d. bi.u di.n v. tr c.a k t., ngu.i ta dng thanh ghi DX d. bi.u di.n v. tr hng v thanh ghi CX d. bi.u di.n v. tr c.t c.a k t.. Mu s.c c.a di.m .nh ph. thu.c vo s. bit m ha mu, n.u s. bit m ha mu cng l.n th mu s.c cng r rng v ch.t lu.ng c.a hnh .nh cng cao. N.u dng n bits m ha m ta c 2n mu. Nhu v.y . ch. d. d. h.a, v.i d. phn gi.i l.n s. bit m ha mu l.n nn b. nh. video RAM cng c.n r.t l.n, khng gian 128 KB video RAM c d.a ch. t.

A0000 h BFFFFh khng d. d. ch.a thng tin v. s. di.m .nh v mu s.c c.a n, v v.y m b. nh. video RAM trn Card mn hnh du.c b. sung r.t l.n t. 256 KB, 512KB, 1MB, 512 MB th.m ch d.n hng GB. L.p trnh mn hnh . ch. d. d. h.a: Ngu.i ta dng ng.t int 10h v.i ah=0ch, V. tr c.a di.m .nh du.c bi.u di.n b.ng n.i dung c.a DX (hng) v CX (c.t). Mu s.c c.a di.m .nh du.c bi.u di.n b.ng gi tr. c.a AL Xem thm v d. v. du.ng th.ng, du.ng ngang, du.ng cho trn mn hnh. Card tang t.c d. h.a AGP. . ch. d. d. h.a, d. bi.u di.n m.t trang mn hnh c d. phn gi.i cao, mu s.c r nt s. c.n m.t dung lu.ng nh. r.t l.n. Khi th.c hi.n s. l hnh .nh chuy.n d.ng th trong 1 giy c.n ph.i dua dn 30 trang ln mn hnh, lu.ng thng tin trao d.i gi.a my tnh v Card di.u khi.n mn hnh s. r.t l.n (d.i thng di h.i cao). Th.c t. bus PCI c.a my tnh khng d. d.i thng d. truy.n lu.ng thng tin ny , do v.y ngu.i ta thi.t k. 1 giao di.n truy.n s. li.u gi.a Card di.u khi.n mn hnh v CPU c.a my tnh trn co s. t.c d. truy.n s. li.u gi.a CPU v RAM Card mn hnh trn giao di.n d g.i l card tang t.c d. h.a AGP. Xem thm trong ti li.u. Trn co s. d.i thng c.a bus PCI l 266MBps, ngu.i ta thi.t k. Card AGP v.i cc t.c d. truy.n: 2X = 2 * 266MBps 4X = 4* 266MBps 8X = 8* 266MBps Ngoi vi.c tang d.i thng, d. tang t.c d. truy.n AGP cn c.i ti.n c. giao th.c truy.n s. li.u. Hi.n nay khi m PCI du.c nng c.p PCI Exp c d.i thng d.n 16X th ngu.i ta khng s. d.ng AGP n.a m s. d.ng chu.n PCI Exp cho cc my tnh.

Giao di.n tu.n t. da nang USB. Trn my tnh cho php c t.i da 4 c.ng COM v 4 c.ng LPT nhu v.y ch. c th. n.i t.i da 8 ngo.i vi d.n my tnh. M.t khc t.c d. truy.n c.a cc c.ng COM v LPT r.t h.n ch., khng d.m b.o du.c khi my tnh k.t n.i v.i cc thi.t b. x. l .nh nhu camera, scanner t.cd. cao.v.v. Xu.t pht t. th.c t. trn, d. theo k.p du.c cng ngh. c.a Machintosh (giao di.n 1394) Intel d d. xu.t 1 giao di.n tu.n t. da nang USB cho php n.i du.c nhi.u ngo.i vi v c t.c d. truy.n l.n. Giao di.n USB s. d.ng giao th.c IP (Internet Protocol) nn c th. qu.n l d.n 127 ngo.i vi nh. s. d.ng hub k.t n.i. V. m.t truy.n s. li.u, USB s. d.ng phuong php truy.n vi sai (dy truy.n tn hi.u c 2 dy D+ v D- k.t h.p v.i b. khuy.ch d.i vi sai d.m b.o truy.n s. li.u v.i t.c d. cao. Tn hi.u s. du.c truy.n trn hai dy tn hiu l U+ v U- du.c dua vo hai chn D+ v D- tuong .ng c.a b. khuy.ch d.i vi sai. V.i so d. trn tn hi.u trn d.u ra Ura s. l: .. .. . . . . . . . . . . V if D D V if D D Ura Vi.c s. d.ng b. khuy.ch d.i vi sai c uu di.m v.i hai tn hi.u U+ v U- du.c xo.n v.i nhau cho php tri.t tiu du.c nhi.u tc d.ng ln du.ng truy.n. N.u c m.t nhi.u lo.n Unh tc d.ng ln du.ng truy.n th tn hi.u d s. tc d.ng d.ng D+ D-R R Ur V+ VUU+ V- V+

th.i ln c. hai dy tn hi.u U+ v U-, khi d: Tn hi.u tc d.ng ln d.u vo D+ v D-: . . . . . . . . . . . nh nh D U U D U U . Khi truy.n qua khuy.ch d.i vi sai: D. . D. ..U . .U .. .U . U ..U . .U . nh . nh R rng tn hi.u nhi.u tc d.ng ln du.ng truy.n d b. tri.t tiu khi truy.n qua b. khuy.ch d.i vi sai. USB cho php my tnh n.i du.c r.t nhi.u thi.t b., v v.y v.i m.i lo.i thi.t b. khc nhau c.n c nh.ng phuong th.c truy.n s. li.u ph h.p, v v.y c r.t nhi.u phuong th.c truy.n s. li.u . giao th.c USB Truyn iu khin Truyn ngt Truyn ng b cch bit Truyn khi Xem thm trong ti li.u Khi s. d.ng c. th. ngo.i vi no, chuong trnh di.u khi.n s. s. d.ng giao th.c ph h.p v.i ngo.i vi d.

Bn phm my tnh. Bn phm my tnh l m.t thi.t b. ngo.i vi cho php giao ti.p ngu.i my l giao ti.p tr.c ti.p. B. di.u khi.n bn phm l m.t h. vi x. l s. th.c hi.n: Nh.n bi.t phm .n (qut bn phm). Gn cho phm du.c .n m.t m g.i l m bn phm. Truy.n m bn phm sang my tnh d. x. l. Xem thm chi ti.t ph.n v.a nu ra trong ti li.u. My tnh s. d.c m qut bn phm t. c.ng A c.a vi m.ch 8255 trn MotherBoard v.i d.a ch. l 60h. Ta th.y m.t phm du.c .n, ch. cung c.p 1 m bn phm, th.c t. 1 phm c d.n 2 m ASCII (V d. A c m ASCII l 41h, a c m ASCII l 61h). . lm du.c di.u ny chuong trnh ph.c v. ng.t bn phm s. ph.i c thm m.t thng tin n.a l byte tr.ng thi bn phm. a ch 0040:0017 lu tr byte trng thi bn phm th nht v a ch 0040:0018 lu tr byte trng thi bn phm th hai, Xem ngha ca tng bit trong ti li.u. Khi mt phm c n ch ng trnh con phc v ngt INT 09 nhn m qut v lu vo vng nh gi l b m bn phm th. nh.t. Giao ti.p bn phm s. d.ng 2 ng.t d. th.c hi.n, Ng.t c.ng int 09h d. nh.n m qut, gn m ASCII cho m qut v c.t c. m phm v m ASCII vo b. d.m bn phm th. nh.t. Ng.t m.m int 16h th.c hi.n d.c m phm v m ASCII t. b. d.m bn phm th. nh.t vo b. d.m bn phm th. 2. Khi int 09h v int 16h khng k.p x. l thng tin trong cc b. d.m s. d.n d.n hi.n tu.ng trn b. d.m bn phm th. nh.t v b. d.m bn phm th. 2. Xem chi ti.t cch nh.n bi.t trn b. d.m bn phm trong ti li.u. L.p trnh bn phm . l.p trnh bn phm, ngu.i ta thu.ng dng ng.t m.m int 16h, v.i bn phm m. r.ng. Int 16h v.i ah =10h, Int 16h v.i ah =11h, Int 16h v.i ah = 12h. Xem chi ti.t trong ti li.u.

. dia. . dia l m.t thi.t b. nh. ngoi dng d. luu tr. thng tin v. H. di.u hnh, cc chuong trnh .ng d.ng v cc k.t qu. c.a cc chuong trnh .ng d.ng. C th. phn chia dia thnh: ia m.m, - FDD ia c.ng HDD ia quang CD ROM, DVD ROM. ia l t.m nh.a hnh trn c du.ng knh 3,5 hay 2,5 v.i FDD v HDD th trn d du.c ph. 1 l.p xt s.t, qu trnh ghi v d.c thng tin ln dia l t. tnh v d.c t. tnh trn b. m.t dia. C. hai b. m.t dia d.u du.c s. d.ng, m.t trn g.i l m.t 0, m.t du.i g.i l m.t 1. Trn m.i m.t dia du.c chia thnh nhi.u vng trn d.ng tm du.c dnh s. t. ngoi vo trong g.i l cc rnh hay track, s. lu.ng track trn m.t m.t dia ph. thu.c vo ki.u dia v dung lu.ng c.a dia. Trn m.i track l.i du.c chia thnh nhi.u cung nh., m.i cung ny l 1 don v. ghi thng tin nh. nh.t c.a dia g.i l sector, m.i sector c kh. nang ghi 1 lu.ng thng tin nh.t d.nh ph. thu.c vo lo.i dia. S. lu.ng sector c trn 1 track cung ph. thu.c vo lo.i dia v dung lu.ng dia. Khi th.c hi.n ghi thng tin ln dia, H. di.u hnh ghi thng tin v c.t gi. du.i d.ng t.p tin (file) lc d n s. d.ng 1 don v. c.p pht dung lu.ng dia d. ghi cho file g.i l 1 lin cung (cluster). 1 cluster c th. l 1 hay 1 vi sector, s. lu.ng sector trong 1 cluster ph. thu.c vo dung lu.ng c.a dia v H. di.u hnh. . ghi du.c thng tin ln dia c.n ph.i c 1 th. t.c g.i l d.nh d.ng (format) dia, qu trnh format dia chia khng gian luu tr. thng tin trn dia thnh 4 vng: B.n ghi kh.i d.ng - Boot record, B.ng tm ki.m file FAT, Danh sch cc file c trn dia Directory, S. li.u du.c c.t gi. trn dia Data. Co ch. tm ki.m file du.c c.t gi. trn dia thng qua b.ng FAT Xem chi ti.t trong ti li.u

Bi t.p l.p trnh Ph.n bi t.p s. s. d.ng ch. y.u nh.ng ki.n th.c sau: Ng.t int 21h Ng.t int 10h Ng.t int 16h. L.p trnh cho c.ng truy.n thng n.i ti.p qua c.ng COM Cc v d. m gio vin d dua ra trn l.p h.c v cc bi t.p du.c giao v. nh.

You might also like