Professional Documents
Culture Documents
MC630 05 2019 16 09
MC630 05 2019 16 09
HÖ lÖnh 80x86 71
PHô LôC
Phô lôc A. HÖ LÖNH 80x86
Chóng ta cã thÓ chia c¸c lÖnh cña 80x86 thµnh 6 nhãm
sau:
1. C¸c lÖnh chuyÓn d÷ liÖu
2. C¸c lÖnh sè häc
3. C¸c lÖnh thao t¸c bit
4. C¸c lÖnh lµm viÖc víi x©u ký tù
5. C¸c lÖnh rÏ nh¸nh
6. C¸c lÖnh cßn l¹i
Tríc khi xem xÐt cô thÓ chøc n¨ng vµ có ph¸p tõng lÖnh,
chóng ta h·y nãi qua vai trß c¸c bit cê, ý nghÜa vµ mét sè
quy ®Þnh.
a. VÞ trÝ c¸c bit cê ®îc bè trÝ nh sau trong thanh ghi
cê:
O D I T S Z A P C
trong ®ã:
O – cê trµn (Overflow flag) S – cê dÊu (Sign flag)
D – cê híng (Direction flag) Z – cê zero (Zero flag)
I – cê ng¾t (Interrupt flag) A – cê trµn phô (Auxiliary
flag)
T – cê bÉy (Trap flag) P – cê ch½n/lÎ (Parity flag)
C – cê carry (Carry flag)
C¸c ký hiÖu qui t¾c vÒ sù thay ®æi tr¹ng th¸i cña c¸c cê
sau mçi lÖnh:
? : kh«ng x¸c ®Þnh
* : cê thay ®æi tïy thuéc vµo kÕt qu¶ cña lÖnh
72 c¸c bµi tËp lËp tr×nh b»ng ng«n ng÷ assembly
0 : gi¸ trÞ cê lµ 0
1 : gi¸ trÞ cê lµ 1
b. Mét sè qui íc vÒ c¸c lo¹i to¸n h¹ng:
SRC to¸n h¹ng nguån
DST to¸n h¹ng ®Ých
reg to¸n h¹ng lµ thanh ghi
reg8/reg16 to¸n h¹ng lµ thanh ghi 8/16 bit
mem to¸n h¹ng lµ biÕn nhí
mem16 to¸n h¹ng lµ biÕn nhí 16 bit
data to¸n h¹ng lµ mét h»ng sè
segreg to¸n h¹ng lµ thanh ghi segment
c. Trong ng«n ng÷ Assembly kh«ng ph©n biÖt ch÷
hoa vµ ch÷ thêng
VÝ dô: MOV AX,BX vµ mov ax,bx ®Òu ®îc.
Chó ý:
data chØ n»m ë to¸n h¹ng nguån (SRC)
kh«ng ®îc chuyÓn gi¸ trÞ gi÷a c¸c biÕn
nhí (mem) cho nhau:
mov mem1, mem2
lµ kh«ng cho phÐp, song cã thÓ thùc hiÖn mét c¸ch
gi¸n tiÕp, vÝ dô:
mov reg, mem2
mov mem1,reg
kh«ng ®îc chuyÓn mét h»ng sè vµo
thanh ghi segment, cã nghÜa:
mov segreg, data
lµ kh«ng cho phÐp, song cã thÓ thùc hiÖn mét c¸ch
gi¸n tiÕp th«ng qua mét thanh ghi, vÝ dô:
mov reg16, data
mov segreg, reg16
khi to¸n h¹ng lµ c¸c thanh ghi BX, SI, DI
vµ BP ®øng trong dÊu ngoÆc vu«ng th× ®ã lµ biÕn
con trá, cã nghÜa lµ néi dung cña thanh ghi lµ ®Þa chØ
OFFSET cña mét « nhí.
VÝ dô: mov AX,[BX]
cã nghÜa lµ ®a néi dung « nhí (2 byte) ®îc trá bëi DS:
[BX] (DS chøa phÇn ®Þa chØ SEGMENT – mÆc ®Þnh,
BX chøa phÇn ®Þa chØ OFFSET) vµo thanh ghi AX.
74 c¸c bµi tËp lËp tr×nh b»ng ng«n ng÷ assembly
A.1.8 LÖnh IN
Chøc n¨ng: §äc gi¸ trÞ 8 hoÆc 16 bit tõ mét cæng vµo
thanh ghi AL (trêng hîp cæng 8 bit) hoÆc AX (trêng hîp
cæng 16 bit).
Có ph¸p: IN AL,®Þa chØ cæng (víi cæng 8 bit)
hoÆc IN AX,®Þa chØ cæng (víi cæng 16 bit)
Chó ý:
NÕu ®Þa chØ cæng nhá h¬n 256 (gi¸ trÞ n»m trong 1
byte) th× cã thÓ ®a ®Þa chØ ®ã trùc tiÕp vµo lÖnh IN,
ngîc l¹i nÕu ®Þa chØ trÞ cæng lín h¬n hoÆc b»ng 256 th×
®Þa chØ cæng ph¶i ®a vµo thanh ghi DX vµ DX sÏ thay
cho ®Þa chØ ®øng trong lÖnh IN.
VÝ dô:
IN AX,08h(v× ®Þa chØ cæng lµ 8H < 256)
MOV DX,4f01h (v× ®Þa chØ cæng 4F01H
≥ 256)
IN AX,DX
O D I T S Z A P C
* * * * * *
(tæng) ®îc ®a vµo to¸n h¹ng ®Ých. Gi¸ trÞ cña to¸n h¹ng
nguån kh«ng thay ®æi.
Có ph¸p: ADc DST, SRC
reg1, reg2 reg, data
reg, mem mem,data
mem, reg
Tr¹ng th¸i c¸c bit cê:
O D I T S Z A P C
* * * * * *
O D I T S Z A P C
* * * * *
A.2.4 LÖnh AAA
Chøc n¨ng: HiÖu chØnh kÕt qu¶ cã trong thanh ghi AL
ngay sau khi thùc hiÖn phÐp céng ra d¹ng ASCII. ViÖc
hiÖu chØnh ®îc tiÕn hµnh nh sau:
NÕu gi¸ trÞ 4 bit thÊp cña thanh ghi AL>9 hoÆc gi¸ trÞ
cña bit cê trµn phô AF=1 th× tiÕn hµnh céng 06h vµo
AL, sau ®ã céng 1 vµo gi¸ trÞ thanh ghi AH vµ dùng cê
trµn phô AF lªn 1. TiÕp ®Õn ®a 4 bit cao cña thanh ghi
AL xuèng 0,
Ngîc l¹i, nÕu gi¸ trÞ 4 bit thÊp cña thanh ghi AL≤9 hoÆc
gi¸ trÞ cña bit cê trµn phô AF=0 th× chØ cÇn ®a 4 bit
cao cña thanh ghi AL xuèng 0.
Có ph¸p: AAA
Tr¹ng th¸i c¸c bit cê:
Phô lôc A. HÖ lÖnh 80x86 79
O D I T S Z A P C
? ? ? * ? *
VÝ dô:
Gi¶ sö AX=0535h vµ BL=39h th× sau khi céng vµ hiÖu
chØnh, kÕt qu¶ nh sau:
ADD AL,BL 00000101|00110101
|00111001
----------------------------------
00000101|01101110
AH=05h AL=6Eh
Chóng ta nhËn thÊy sau khi thùc hiÖn phÐp céng th× 4 bit
thÊp cña AL>9, nªn nÕu dïng lÖnh AAA sau phÐp trõ trªn
th× phÐp hiÖu chØnh tiÕn hµnh nh sau:
Céng 06h vµo AL:
AL + 06h = 74h
Céng 1 vµo thanh ghi AH vµ nh vËy AH=06h
§Æt 4 bit cao cña thanh ghi AL xuèng 0, ta cã AL=04h
KÕt qu¶ sau khi hiÖu chØnh b»ng lÖnh AAA th× AX=0604h
O D I T S Z A P C
? * * * * *
VÝ dô:
Gi¶ sö AL=28h vµ BL=68h th× sau khi céng vµ hiÖu
chØnh, kÕt qu¶ nh sau:
ADD AL,BL 0010|1000
0110|1000
------------------
1001|0000 = 90h
vµ sau phÐp céng nµy cê AF lªn 1, do v©y nÕu sau lÖnh
céng nµy sö dông lÖnh DAA th× ph¶i céng néi dung thanh
ghi AL víi 06h, tøc lµ:
AL + 06h =10100000 + 00000110=10100110=96h
KÕt qu¶ AL = 96h chø kh«ng ph¶i 90h
O D I T S Z A P C
* * * * * *
A.2.7 LÖnh SBB
Chøc n¨ng: Trõ gi¸ trÞ cña to¸n h¹ng ®Ých cho tæng cña
to¸n h¹ng nguån vµ gi¸ trÞ bit cê Carry (CF). KÕt qu¶
(hiÖu) ®îc ®a vµo to¸n h¹ng ®Ých. Gi¸ trÞ cña to¸n h¹ng
nguån kh«ng thay ®æi.
Có ph¸p: SBB DST, SRC
reg1, reg2 reg, data
reg, mem mem,data
Phô lôc A. HÖ lÖnh 80x86 81
mem, reg
Tr¹ng th¸i c¸c bit cê:
O D I T S Z A P C
* * * * * *
O D I T S Z A P C
* * * * *
O D I T S Z A P C
* * * * *
O D I T S Z A P C
* * * * * *
O D I T S Z A P C
? ? ? * ? *
VÝ dô:
Gi¶ sö AX=0438h vµ tiÕn hµnh thùc hiÖn phÐp trõ AX cho
mét h»ng sè lµ 35h:
SUB AL,35h 00000100|00111000
|00110101
--------------------------------
Phô lôc A. HÖ lÖnh 80x86 83
00110011
NÕu thùc hiÖn lÖnh AAS ngay sau lÖnh trõ nµy th× phÐp
hiÖu chØnh sÏ nh sau:
V× sau khi thùc hiÖn phÐp trõ, 4 bit thÊp cña AL<9, nªn
phÐp hiÖu chØnh chØ tiÕn hµnh nh sau:
§a 4 bit cao cña AL xuèng 0, tøc lµ AL = 00000011=03h
O D I T S Z A P C
? * * * * *
VÝ dô:
Gi¶ sö AL=86h vµ BL=07h th× sau khi thùc hiÖn phÐp
tÝnh trõ gi¸ trÞ cã trong AL cho gi¸ trÞ cã trong BL
SUB AL,BL 0010|1000
0000|0111
------------------
0111|1111 = 7Fh
NÕu thùc hiÖn lÖnh DAS ngay sau lÖnh trõ nµy th× hiÖu
chØnh sÏ nh sau:
V× gi¸ trÞ 4 bit thÊp cña AL>9 do vËy trõ gi¸ trÞ AL cho
06h:
84 c¸c bµi tËp lËp tr×nh b»ng ng«n ng÷ assembly
AL 0111|1111
|0110
-------------------
1111|1001 = 79h
VËy kÕt qu¶ AL = 79h vµ bit cê AF = 1
O D I T S Z A P C
* ? ? ? ? *
O D I T S Z A P C
* ? ? ? ? *
O D I T S Z A P C
? * * ? * ?
VÝ dô:
Gi¶ sö AL = 07h vµ BL = 09h
Thùc hiÖn phÐp nh©n sau:
MUL BL ; KÕt qu¶ AX = 3Fh=63
NÕu sau lÖnh nh©n nµy sö dông lÖnh hiÖu chØnh
AAM
th× phÐp hiÖu chØnh sÏ tiÕn hµnh nh sau:
Chia AL cho 0ah (10), cã nghÜa:
AL=63 chia cho 10 th× th¬ng ®Æt vµo AH=6 vµ d ®Æt
vµo AL=3
VËy sau hiÖu chØnh kÕt qu¶ sÏ lµ AX=0603h.
86 c¸c bµi tËp lËp tr×nh b»ng ng«n ng÷ assembly
NÕu gi¸ trÞ cña to¸n h¹ng bÞ chia lµ 32 bit vµ gi¸ trÞ
cña to¸n h¹ng chia lµ 16 bit th× ph¶i ®Æt gi¸ trÞ sè bÞ
chia vµo ®«i thanh ghi DX:AX vµ gi¸ trÞ sè chia vµo to¸n
h¹ng nguån (SRC), sau ®ã míi tiÕn hµnh phÐp chia. KÕt
qu¶ nh sau: AX chøa th¬ng vµ DX chøa phÇn d, cô thÓ
lµ:
DX : AX
vµ kÕt qu¶ AX chøa th¬ng vµ DX chøa
SRC
phÇn d
O D I T S Z A P C
? ? ? ? ? ?
®Òu lµ d¹ng sè cã dÊu (bit cao nhÊt cña 2 to¸n h¹ng mang
ý nghÜa vÒ dÊu chø kh«ng mang gi¸ trÞ t¹i vÞ trÝ ®ã – bit
cao nhÊt lµ 1 th× ®ã lµ sè ©m vµ bit cao nhÊt lµ 0 th×
®ã lµ sè d¬ng). PhÐp chia ®îc thùc hiÖn nh sau:
NÕu gi¸ trÞ cña to¸n h¹ng bÞ chia lµ 16 bit vµ gi¸ trÞ
cña to¸n h¹ng chia lµ 8 bit th× ph¶i ®Æt gi¸ trÞ sè bÞ
chia vµo thanh ghi AX vµ gi¸ trÞ sè chia vµo to¸n h¹ng
nguån (SRC), sau ®ã míi tiÕn hµnh phÐp chia. KÕt qu¶
nh sau: AL chøa th¬ng vµ AH chøa phÇn d, cô thÓ lµ:
AX vµ kÕt qu¶ AL chøa th¬ng vµ AH chøa phÇn
d SRC
NÕu gi¸ trÞ cña to¸n h¹ng bÞ chia lµ 32 bit vµ gi¸ trÞ
cña to¸n h¹ng chia lµ 16 bit th× ph¶i ®Æt gi¸ trÞ sè bÞ
chia vµo ®«i thanh ghi DX:AX vµ gi¸ trÞ sè chia vµo to¸n
h¹ng nguån (SRC), sau ®ã míi tiÕn hµnh phÐp chia. KÕt
qu¶ nh sau: AX chøa th¬ng vµ DX chøa phÇn d, cô thÓ
lµ:
DX : AX vµ kÕt qu¶ AX chøa th¬ng vµ DX chøa
phÇn d
SRC
O D I T S Z A P C
? ? ? ? ? ?
A.2.18 LÖnh AAD
Chøc n¨ng: HiÖu chØnh néi dung d¹ng BINARY cã trong
thanh ghi AL vÒ 2 byte d¹ng BCD (n»m ë AH vµ AL) ngay
tríc khi thùc hiÖn phÐp chia. ThuËt to¸n hiÖu chØnh ®îc
tiÕn hµnh nh sau:
Nh©n néi dung cña thanh ghi AH víi 0ah,
Céng néi dung cña thanh ghi AH víi AL,
88 c¸c bµi tËp lËp tr×nh b»ng ng«n ng÷ assembly
Chó ý:
HÇu hÕt c¸c lÖnh trong nhãm nµy khi thùc hiÖn cã t¸c
®éng lµm thay ®æi gi¸ trÞ c¸c bit cê.
O D I T S Z A P C
0 * * ? * 0
Chó ý:
Trong lËp tr×nh b»ng ng«n ng÷ Assembly hay sö dông
lÖnh AND víi 2 môc ®Ých:
T¸ch bit:
Muèn xem xÐt tr¹ng th¸i (1 hay 0) mét bit nµo ®ã trong
mét to¸n h¹ng th× tèt nhÊt tiÕn hµnh t¸ch bit ®ã ra
b»ng lÖnh AND, vÝ dô:
Néi dung 8 bit cña AL lµ xxxx|xxxx
Muèn xem bit thø 4 cña AL lµ 1 hay 0, thêng lµm nh sau:
AND AL, 0000|1000B
Sau lÖnh nµy 8 bit cña AL sÏ lµ: 0000|x000
90 c¸c bµi tËp lËp tr×nh b»ng ng«n ng÷ assembly
A.3.3 LÖnh OR
Chøc n¨ng: Thùc hiÖn chøc n¨ng HOÆC L¤GIC gi÷a hai
to¸n h¹ng. KÕt qu¶ ®Æt ë to¸n h¹ng ®Ých.
Có ph¸p: OR DST, SRC
reg1, reg2 reg, data
reg, mem mem,data
mem, reg
Tr¹ng th¸i c¸c bit cê:
O D I T S Z A P C
0 * * ? * 0
O D I T S Z A P C
0 * * ? * 0
Chó ý:
Trong lËp tr×nh b»ng ng«n ng÷ Assembly hay sö dông
lÖnh XOR ®Ó cho to¸n h¹ng b»ng 0, vÝ dô:
XOR AX,AX
th× gi¸ trÞ cña AX=0.
O D I T S Z A P C
0 * * ? * 0
reg
mem
Chó ý vÒ COUNT:
NÕu COUNT=1 th× cã thÓ ®Æt sè 1 trùc tiÕp trong
lÖnh, vÝ dô:
SHL/SAL DST,1
ý nghÜa cña viÖc dÞch tr¸i to¸n h¹ng 1 lÇn lµ nh©n ®«i
gi¸ trÞ cña to¸n h¹ng nÕu to¸n h¹ng lµ nguyªn d¬ng.
Cßn nÕu COUNT≥2 th× ph¶i nhê ®Õn CL/CX, cã nghÜa:
SHL/SAL DST,4 lµ kh«ng ®îc mµ ph¶i thay b»ng 2
lÖnh:
MOV CL,4
SHL/SAL DST,CL
Tr¹ng th¸i c¸c bit cê:
O D I T S Z A P C
* * * ? * *
O D I T S Z A P C
* * * ? * *
O D I T S Z A P C
* * * ? * *
CF
O D I T S Z A P C
* *
CF
O D I T S Z A P C
* *
CF
Có ph¸p: RCL DST, COUNT
reg
Phô lôc A. HÖ lÖnh 80x86 95
mem
Chó ý vÒ COUNT: Gièng c¸c lÖnh trªn.
Tr¹ng th¸i c¸c bit cê:
O D I T S Z A P C
* *
CF
Có ph¸p: RCR DST, COUNT
reg
mem
Chó ý vÒ COUNT: Gièng c¸c lÖnh trªn.
Tr¹ng th¸i c¸c bit cê:
O D I T S Z A P C
* *
Chøc n¨ng: ChuyÓn mét ký tù cña mét x©u theo tõng byte
(MOVSB) hay theo 2 byte (MOVSW) cã trong vïng nhí ®îc
trá bëi DS:SI sang vïng nhí ®îc trá bëi ES:DI. Sau mçi lÇn
chuyÓn mét (hoÆc hai byte) th× gi¸ trÞ cña SI vµ DI tù
®éng t¨ng lªn 1 (hoÆc 2) khi gi¸ trÞ cê híng DF=0 (chuyÓn
theo chiÒu t¨ng ®Þa chØ) hoÆc gi¶m ®i 1 (hoÆc 2) khi
gi¸ trÞ cê híng DF=1 (chuyÓn theo chiÒu gi¶m ®Þa chØ).
Có ph¸p: MOVSB
hoÆc
MOVSW
Chó ý: Tríc khi thùc hiÖn lÖnh nµy cÇn ph¶i:
Trá DS:SI ®Õn ®Çu vïng nhí chøa x©u cÇn chuyÓn ®i,
Trá ES:DI ®Õn ®Çu vïng nhí mµ x©u sÏ chuyÓn ®Õn,
vµ
X¸c lËp DF=0 hay DF=1 ®Ó biÕt viÖc chuyÓn c¸c ký tù
®îc thùc hiÖn theo chiÒu t¨ng hay gi¶m ®Þa chØ.
O D I T S Z A P C
* * * * * *
Chó ý: Tríc khi thùc hiÖn lÖnh nµy cÇn ph¶i:
Trá DS:SI ®Õn ®Çu vïng nhí thø nhÊt,
Trá ES:DI ®Õn ®Çu vïng nhí thø hai, vµ
98 c¸c bµi tËp lËp tr×nh b»ng ng«n ng÷ assembly
X¸c lËp DF=0 hay DF=1 ®Ó biÕt viÖc so s¸nh ®îc thùc
hiÖn theo chiÒu t¨ng hay gi¶m ®Þa chØ.
O D I T S Z A P C
* * * * * *
Chó ý: Tríc khi thùc hiÖn lÖnh nµy cÇn ph¶i:
Trá ES:DI ®Õn ®Çu vïng nhí sÏ chøa x©u cÇn so s¸nh,
X¸c lËp DF=0 hay DF=1 ®Ó biÕt viÖc so s¸nh ®îc thùc
hiÖn theo chiÒu t¨ng hay gi¶m ®Þa chØ.
A.4.6 C¸c tiÒn tè lÆp REP
REPE/REPNE/REPNZ/REPZ
TiÒn tè REP
Chøc n¨ng: TiÒn tè REP thùc hiÖn lÖnh lµm viÖc víi x©u ký
tù ®øng sau nã mét sè lÇn cã trong thanh ghi CX cho ®Õn
khi CX=0. Sau mçi lÇn thùc hiÖn, néi dung thanh ghi CX tù
®éng gi¶m ®i 1.
Có ph¸p: REP lÖnh lµm viÖc víi x©u ký tù
VÝ dô:
MOV SI,OIBUF
MOV DI,ADDR
MOV CX,COUNT
CLD
Phô lôc A. HÖ lÖnh 80x86 99
REP MOVSB
LÖnh MOVSB sÏ ®îc thùc hiÖn COUNT lÇn
TiÒn tè REPE hoÆc REPZ
Chøc n¨ng: TiÒn tè REPE hoÆc REPZ thùc hiÖn lÖnh lµm
viÖc víi x©u ký tù ®øng sau nã mét sè lÇn cã trong thanh
ghi CX cho ®Õn khi CX=0 vµ cê ZF=0. Sau mçi lÇn thùc
hiÖn, néi dung thanh ghi CX tù ®éng gi¶m ®i 1.
Có ph¸p: REPE/REPZ lÖnh lµm viÖc víi x©u ký tù
TiÒn tè REPNE hoÆc REPNZ
Chøc n¨ng: TiÒn tè REPNE hoÆc REPNZ thùc hiÖn lÖnh
lµm viÖc víi x©u ký tù ®øng sau nã mét sè lÇn cã trong
thanh ghi CX cho ®Õn khi CX=0 vµ cê ZF=1. Sau mçi lÇn
thùc hiÖn, néi dung thanh ghi CX tù ®éng gi¶m ®i 1.
Có ph¸p: REPE/REPZ lÖnh lµm viÖc víi x©u ký tù
O D I T S Z A P C
0 0
O D I T S Z A P C
* * * * * *
nh·n:
khèi lÖnh ASM cÇn lÆp
LOOPZ/LOOPE nh·n
LÖnh LOOPnZ/LOOPnE
Chøc n¨ng: LÆp viÖc thùc hiÖn khèi lÖnh Assembly n»m
gi÷a nh·n vµ LOOPNZ/LOOPNE nh·n cho ®Õn khi gi¸ trÞ
thanh ghi CX=0 vµ bit cê Zero (ZF)=0. Mçi khi thùc hiÖn
xong mét vßng lÆp gi¸ trÞ thanh ghi CX tù ®éng gi¶m ®i
1.
Có ph¸p:
CX chøa sè lÇn lÆp (CX≥1)
nh·n:
khèi lÖnh ASM cÇn lÆp
LOOPNZ/LOOPNE nh·n
O D I T S Z A P C
0
O D I T S Z A P C
1
O D I T S Z A P C
*
O D I T S Z A P C
0
Chó ý:
Víi c¸c lÖnh lµm viÖc víi x©u ký tù (c¸c lÖnh trong nhãm
A.4) th× viÖc thùc hiÖn sÏ ®îc tiÕn hµnh theo chiÒu t¨ng
®Þa chØ nÕu DF=0.
O D I T S Z A P C
1
Phô lôc A. HÖ lÖnh 80x86 105
Chó ý:
Víi c¸c lÖnh lµm viÖc víi x©u ký tù (c¸c lÖnh trong nhãm
A.4) th× viÖc thùc hiÖn sÏ ®îc tiÕn hµnh theo chiÒu gi¶m
®Þa chØ nÕu DF=1.
Có ph¸p: CLI
Tr¹ng th¸i c¸c bit cê:
O D I T S Z A P C
0
O D I T S Z A P C
1
Tuy lÖnh NOP kh«ng thùc hiÖn mét thao t¸c nµo song nã
vÉn cã ý nghÜa, vÝ dô cã thÓ dïng lÖnh NOP ®Ó t¹o vßng
trÔ theo yªu cÇu hoÆc dïng lÖnh NOP ®Ó t¹o vßng lÆp v«
tËn chê tÝn hiÖu ng¾t tõ bªn ngoµi.
VÝ dô:
T¹o mét vßng lÆp v« tËn ®Ó chê ng¾t.
LAP:
NOP
JMP LAP