Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

Mt s hm ca ngt 21h (DOS)

AH = 01h. i mt phm c nhn v tr li m ASCII ca phm trong


thanh ghi AL, ng
thi hin th k t ln mn hnh. Nu y l phm khng c m ASCII m ch
c m m rng th AL
tr v 0. nhn c m m rng, cn phi gi hm ny mt ln na. Nu
Ctrl-Break c nhn
th ngt 23h s c gi.
AH = 08h. Hm ny ch khc hm 01h ch khng th hin ln mn hnh k
t ng vi phm
c nhn.
AH = 07h. Hm ny khc hm 08h ch khng kim tra Ctrl-Break.
AH = 0Ah. Nhp t bn phm mt xu k t c di khng qu N k t, kt
thc bi m 13h
(phm Enter). Vng b nh lu tr xu k t phi c chun b trc
a ch DS:DX. Byte u
tin a ch ny phi lu gi tr N. Khi tr v, byte th hai lu di xu
nhn c (khng k k
t kt thc 13h, mc d k t ny vn c lu vo vng nh).
AH = 0Ch. Xa sch b m bn phm v gi mt trong cc hm 01h, 07h,
08h, 0Ah. Trong AL
lu s hiu ca hm cn gi.

I. Gii thiu chung


Thng tin c lu gi trong cc thanh ghi bn trong b vi x l. Cc thanh ghi
c phn loi theo chc nng ca chng. B vi x l da vo cc thanh ghi thc
thi mt chng trnh. Cc thanh ghi gm c: Thanh ghi d liu cha d liu cho cc
thao tc, thanh ghi a ch cha a ch ca lnh hoc ca d liu v thanh ghi trng
thi lu trng thi hin thi ca b vi x l.
i vi vi x l 8086 c bn thanh ghi d liu cng dng chung, cc thanh ghi a ch
c chia ra lm cc thanh ghi on, thanh ghi con tr, thanh ghi ch mc, thanh ghi trng
thi cn c bit n l cc c. Cc bn khng nn hc thuc tt c cc thanh ghi cng
mt lc, chc chn l s khng nh ht c u, c ng n u tm hiu n th
s nh lu hn.

II. Chi tit v cc thanh ghi v chc nng


II.1 Cc thanh ghi con tr v ch s
1. Thanh ghi SP
Thanh ghi SP (con tr ngn xp - Stack Poiter): Thanh ghi ny lun tr n nh hin
thi ca stack - ngn xp. Cc bn xem hnh minh ha bn di.

Nh cc bn thy SP ang c gi tr hex l 0x0100 v quan st ti ca s stack ta


thy gi tr hin thi ca stack l 0x0100. Thanh ghi SP tr ti a ch vng nh ni
m thao tc stack tip theo s c thc hin.

2. Thanh ghi BP
Thanh ghi BP (con tr c s - Base Poiter): Thanh ghi ny c s dng truy
nhp d liu trong ngn xp. Tuy nhin khc vi thanh ghi SP, thanh ghi ny cn
c s dng truy nhp d liu trong on khc

3. Thanh ghi IP
Thanh ghi IP (con tr ch dn - Instruction Pointer): y l mt thanh ghi rt quan
trng, n c cp nht mi khi c mt lnh c thc hin, gi tr ca thanh ghi ny
lun tr n cu lnh tip theo s c thc hin. Khc vi cc thanh ghi khc, thanh
ghi IP khng th b tc ng trc tip bi cc lnh, do vy trong cc lnh chng ta s
khng thy s c mt ca thanh ghi IP nh mt ton hng. Quan st hnh di
hiu r hn v thanh ghi ny.

Nh ta thy trn hnh th gi tr ca IP ang l 0x0003, nh vy c ngha l cu lnh


MOV DS, AX ti a ch 0x0003 chun b c thc hin. Ta click single step v xem
kt qu nh hnh di:

Nh hnh trn ta thy cu lnh ti a ch 0x0003 c thc hin v gi tr ca


thanh ghi IP ang tr ti cu lnh tip theo s c thc hin ti a ch 0x0005 MOV
AH, 01h.

4. Thanh ghi ch s SI v DI
Hai thanh ghi SI (Ch s ngun - Source Index) v DI (Ch s ch - Destination Index)
thng c s dng trong cc thao tc lm vic vi chui hoc mng

II.2 Cc thanh ghi d liu cng dng chung (AX, BX, CX, DX)
y l 4 thanh ghi a nng 16 bit, c bit khi ta cn cha d liu 8 bit, cc thanh ghi ny
c th tch ra thnh 2 thanh ghi 8 bit cao v thp lm vic, l AX tch thnh
AH(cao) v AL(thp), BX tch thnh BH v BL, CX tch thnh CH v CL, DX tch thnh
DH v DL. D liu s c lu ht cc thanh ghi cha bit thp(bit 0 n bit 7) sau
mi n thanh ghi bit cao(bit 8 n bit 15).
Ngoi ngha l thanh ghi d liu cng dng chung th cc thanh ghi cn c chc nng
ring nh sau:
- Thanh ghi AX (thanh ghi cha - accumulator): Thng c s dng trong cc lnh s
hc, logic v chuyn d liu. Trong cc thao tc nhn chia thng s dng n thanh ghi
ny.
- Thanh ghi BX (thanh ghi c s - base): ng vai tr l thanh ghi a ch
- Thanh ghi CX (thanh ghi m - counter): Thanh ghi ny thng c s dng nh mt
bin m trong cc vng lp hoc cc lnh dch hoc quay cc bit.
- Thanh ghi DX (thanh ghi d liu - data): Thanh ghi thng c s dng lu d liu
v thanh ghi ny cng vi thanh ghi AX tham gia vo thao tc ca php nhn hoc php
chia, n cng thng c s dng trong cc thao tc vo ra.
Hnh di m t v cc thanh ghi 16 bit v 8 bit

II.3 Cc thanh ghi on


1. CS (on m lnh - Code Segment): Lu a ch phn on m lnh
2. DS (on d liu - Data Segment): Lu a ch phn on d liu
3. ES (on d liu b sung - Extra Data Segment): Lu a ch phn on d liu b
sung.
4. SS (on ngn xp - Stack Segment): Lu a ch phn on ngn xp
Cc a ch phn on ny s c kt hp vi a ch offset truy xut n nh.

II.4 Cc c (flags)
C tt c cc c nh hnh sau:

Nh chng ta thy cc c ny ch c 1 bit, vy gi tr ca n ch c th


l 0 hoc 1. C c bt khi gi tr bng 1.
CF (C nh - Carry Flag): C ny c bt khi php tnh c s dng bit nh
ZF (C 0 - Zero Flag): C ny c bt khi kt qu ca php tnh va thc hin l 0.
SF (C du - Sign Flag): C ny c bt khi kt qu ca php tnh va thc hin c
bit du c bt.
OF (C trn - Overflow Flag): C ny bt khi php tnh va thc hin gy ra trn s.
PF (C chn l - Parity Flag): C ny bt khi kt qu ca php tnh va thc hin c
chn bit 1.

AF (C nh ph - Auxilary Flag): C c bt khi php tnh va thc hin c s dng bit


nh ph.
IF (C ngt - Interrupt Flag): C ny bt cho php cc ngt xy ra.
DF (C hng - Direction Flag): C ny bt chn ch gim ch s t ng khi lm
vic vi mng or lm vic vi chui k t t phi sang tri.
Ta s xem th v d sau hiu thm v cc c:
Gn gi tr cho AX: MOV AX, 7FFFh
Cng thm 1 vo AX: ADD AX, 1
Quan st trng thi cc c hnh di lc gn gi tr AX = 7FFFh, ta thy ch c c IF
c bt.

Tip theo ta s quan st cc c sau khi cng thm 1 vo AX.

Ta thy c 4 c SF, OF, PF, AF c bt.


Nh vy l phn ny mnh gii thiu v cc thanh ghi c s dng trong qu
trnh hc. hiu su, k hn cc bn c th tm c thm cc ti liu khc. nh vit
thm t na m i qu ri, chn tay run khng vit c na ri. Hn gp li cc bn
phn sau.
Cho thn i v quyt thng!

You might also like