You are on page 1of 25

‡‡ 

 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η


  ‡

ΔΠϣήΒϠϟ ϲΑήόϟ΍ ϖϳήϔϟ΍ ϊϗϮϤϟ ΔόΑΎΘϟ΍ ϲϠΒϤγϷ΍ Δϐϟ αϭέΩ


http://www.arabteam2000.com
ΔΠϣήΒϠϟ ϲΑήόϟ΍ ϖϳήϔϠϟ ΔχϮϔΤϣ ϕϮϘΤϟ΍ ϊϴϤΟ

ΔΠϣήΒϠϟ ϲΑήόϟ΍ ϖϳήϔϟ΍ ϊϗϮϣ Γέ΍Ω· Ϧϣ ΢ϳήλ ϥΫΈΑ ϻ· αϭέΪϟ΍ ϩάϫ Ϧϣ ϒϟΆϤϟ΍ Ϣγ΍ ϭ΃ ϊϗϮϤϟ΍ ϥ΍ϮϨϋ ΢δϣ ΎΗΎΑ ΎόϨϣ ϊϨϤϳ

:ΔψΣϼϣ
ΐϠΣ ΔόϣΎΠΑ ΕΎΒγΎΤϟ΍ ΔγΪϨϫ Ϣδϗ ΔϴϧΎΜϟ΍ ΔϨδϟ΍ ΝΎϬϨϣ Ϧϣ ΔδΒΘϘϣ αΎγϷΎΑ ϲϫ αϭέΪϟ΍ ϩάϫ

ϲϧΎΜϟ΍ ˯ΰΠϟ΍
8086 ΞϟΎόϤϟ΍ ΕΎϤϴϠόΗ

21- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ϲϠΒϤγϷ΍ Δϐϟ ϲϓ ΔϣΪϘϣ


ΐѧѧΘϜ˵Η ˬήϐѧѧμϤϟ΍ ΞϟΎѧѧόϤϟ΍ Δτѧγ΍ϮΑ ΎѧѧϫίΎΠϧ· ϦѧѧϜϤϳ ϲѧѧΘϟ΍ ΔϴѧγΎγϷ΍ ΕΎѧѧϴϠϤόϟ΍ Ϧѧѧϣ Ϟѧѧϛ ϒѧλϮϟ ΓΩϭΰѧѧϣ ΔѧѧϐϠϟ΍ ϩάѧϫ
ϭ έΎϔѧѧѧλϷ΍ Ϧѧѧѧϣ ϻ ˱ ΪѧѧѧΑ ALPHANUMERIC ϰϋΪѧѧѧ˵ϳ Ύѧѧѧϣ ϭ΃ Δѧѧѧϴ΋ΎΠϬϟ΍ ίϮѧѧѧϣήϟ΍ ϝΎϤόΘѧѧѧγΎΑ ΔѧѧѧϐϠϟ΍ ϩάѧѧѧϫ ΕΎѧѧѧϤϴϠόΗ
:ϲϫ ϲϠΒϤγϷ΍ Δϐϟ ϲϓ (ΔϤϴϠόΘϟ΍) ήϣϷ΍ ΔΑΎΘϜϟ ΔϣΎόϟ΍ Δϐϴμϟ΍ ϥ· .ΞϟΎόϤϠϟ Δϟϵ΍ Γήϔϴη ϲϓ Ε΍ΪΣ΍Ϯϟ΍
ΔΘϓϻ : ΔϤϴϠόΗ ; ϖϴϠόΗ
ϖѧϴΛϮΘϟ΍ Ϧѧϣ ωϮѧϨϟ΍ ΍άѧϫ ϭ .ϦѧϤϳϷ΍ ϑήѧτϟ΍ ϰѧϠϋ ϊѧοϮΗ ήϣ΍ϭϷ΍ ϒμΗ ϲΘϟ΍ ΕΎψΣϼϤϟ΍ ϭ΃ ΕΎϘϴϠόΘϟ΍ ϥΈϓ ΓΩΎϋ
ΔѧѧϤϠϜΑ ΪѧѧμϘϧ ϭ .Γήϔϴѧѧθϟ΍ ΢ϴΤѧѧμΗ ϭ Γ˯΍ήѧѧϗ ϭ ΔѧѧΑΎΘϛ ΞϣήѧѧΒϤϟ΍ ϰѧѧϠϋ ϞϬѧѧδϟ΍ Ϧѧѧϣ ϞѧѧόΠϳ ϖѧѧϴϠόΘϟ΍ ϭ ΔѧѧϤϴϠόΘϟ΍ ϦϴѧѧΑ
ΞϣΎѧѧϧήΒϟ΍ Ύѧѧϣ΃ object code ϑΪѧѧϬϟ΍ ΓήϔϴѧѧθΑ ϑήѧѧό˵ϳ ϱάѧѧϟ΍ ϭ ΞϟΎѧѧόϤϠϟ Δѧѧϟϵ΍ ΔѧѧϐϠΑ ΏϮѧѧΘϜϣ ΞϣΎѧѧϧήΒϟ΍ ϥ΃ Γήϔϴѧѧθϟ΍
έΪѧѧμϤϟ΍ ΞϣΎѧѧϧήΑ ϲѧѧϓ ΔѧѧϤϴϠόΗ Ϟѧѧϛ ϥ· ϭ ΍άѧѧϫ . source code έΪѧѧμϤϟ΍ ΓήϔϴѧѧθΑ ϰϋΪѧѧϴϓ ϲϠΒϤѧѧγϷ΍ ΔѧѧϐϠΑ ΏϮѧѧΘϜϤϟ΍
ΕϻϮѧΤΘϣ ϲѧϫ Ύѧϣ ϭ ΎϫάѧϴϔϨΗ ϢΘϴѧγ ΔѧϴϠϤϋ ϱ΃ Ω͋ΪѧΤϳ ϥ΃ ΐΠϳ ήϣϷ΍ ϥ΃ ΚϴΣ ϲϠΒϤγϷ΍ Δϐϟ ϲϓ ΍˱ΪΣ΍ϭ ΍˱ήϣ΃ ϖΑΎτΗ
opcode = operation ΔѧϤϴϠόΘϟ΍ ΰѧϣέ : ϦϴϠѧμϔϨϣ ϦϴϤѧδϗ ϰѧϟ· ΔϤϴϠόΘϟ΍ ϢδϘ˵Η ΐΒδϟ΍ ΍άϬϟ .ΞϟΎό˵Θγ ϲΘϟ΍ ΕΎϴτόϤϟ΍
ϼ
˱ ΜѧѧϤϓ άϔϨ˵Θѧ γ ϲѧѧΘϟ΍ ΔѧѧϴϠϤόϟ΍ ΩΪѧѧΤϳ ϱάѧѧϟ΍ ϭ ΔѧѧϤϴϠόΘϟ΍ Ϧѧѧϣ ˯ΰѧѧΟ Ϯѧѧϫ ΔѧѧϴϠϤόϟ΍ ΰѧѧϣέ . operands ΕϻϮѧѧΤΘϤϟ΍ ϭ code
.ϞϘϨϟ΍ ϭ Ρήτϟ΍ ϭ ϊϤΠϟΎϛ ΔϴΟΫϮϤϨϟ΍ ΕΎϴϠϤόϟ΍ ξόΑ ήϛάϧ
8086 ΞϟΎѧѧόϤϠϟ ΔΒѧѧδϨϟΎΑ ϼ ˱ ΜѧѧϤϓ ΕΎѧѧϤϴϠόΘϟ΍ ϞѧѧΟ΃ Ϧѧѧϣ mnemonic ΔѧѧϟΰΘΨϤϟ΍ ΕΎѧѧϤϠϜϟ΍ ϡΪΨΘѧѧδΗ ϲϠΒϤѧѧγϷ΍ Δѧѧϐϟ ϲѧѧϓ
ϭ SUB ϭ ADD ΐѧѧϴΗήΘϟ΍ ϰѧѧϠϋ ϲѧѧϫ ϞѧѧϘϨϟ΍ ϭ Ρήѧѧτϟ΍ ϭ ϊѧѧϤΠϟ΍ ΕΎѧѧϴϠϤόϟ ϲϠΒϤѧѧγϷ΍ Δѧѧϐϟ ϲѧѧϓ ΔѧѧϟΰΘΨϤϟ΍ ΕΎѧѧϤϠϜϟΎϓ
ϲѧϓ ϼ ˱ ΜѧϤϓ ΔѧϤϴϠόΘϠϟ ΔѧϴϠϤόϟ΍ ΰѧϣέ Δτγ΍ϮΑ ΞϟΎόϤϟ΍ ϞΒ˶ϗ Ϧϣ ΞϟΎό˵Θγ ϲΘϟ΍ ΕΎϴτόϤϟ΍ ΩΪΤΘϓ ΕϻϮΤΘϤϟ΍ Ύϣ΃ . MOV
ΐѧΘϜ˵Η ϭ ΕϻϮѧΤΘϤϟ΍ ϲѧϫ AX ϭ BX ϥΈѧϓ Ϣϛ΍ήѧϤϟ΍ ΕΎѧϳϮΘΤϣ ϰϟ· ΓΪϋΎϘϟ΍ ϞΠδϣ ΕΎϳϮΘΤϣ ϒϴπΗ ϲΘϟ΍ ΔϤϴϠόΘϟ΍
ΞΗΎѧѧϧ ϊѧѧοϮϳ ϭ AX ϰѧѧϟ· BX ΕΎѧѧϳϮΘΤϣ ϑΎѧѧπ˵Η ϝΎѧѧΜϤϟ΍ ΍άѧѧϫ ϲѧѧϔϓ ADD AX,BX ϲϟΎѧѧΘϟ΍ ϞϜѧѧθϟ΍ ϰѧѧϠϋ ΔѧѧϤϴϠόΘϟ΍
.ϑΪϬϟ΍ ϝϮΤΘϣ AX ϭ έΪμϤϟ΍ ϝϮΤΘϣ BX ήΒ˴Θό˵ϳ Ϛϟάϟ ϭ AX ϲϓ ϊϤΠϟ΍

22- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

Î0Î ΞϟΎόϤϟ΍ ΕΎϤϴϠόΗ ϢϗΎσ


ΕϻϮѧΤΘϤϠϟ ϊѧγ΍Ϯϟ΍ ϝΎѧΠϤϟ΍ ϥ· Ϛϟάѧϛ ϭ ΔϴѧγΎγ΃ ΔѧϤϴϠόΗ 117 Ϧϣ ΔϔϟΆϣ ΕΎϤϴϠόΗ ΔϋϮϤΠϤΑ 8086 ΞϟΎόϤϟ΍ Ωϭΰ˵ϳ
ϼ
˱ ΜѧϤϓ ˬήѧΜϛ΃ ΕΎѧϤϴϠόΗ ϰѧϟ· ΕΎѧϤϴϠόΘϟ΍ ΔѧϋϮϤΠϣ ϊѧγϮϳ ΕΎѧϤϴϠόΘϟ΍ ϩάϫ ϊϣ ϝΎϤόΘγϼϟ ΔΣϮϤδϤϟ΍ ΔϧϮϨόϟ΍ ΔϤψϧ΃ ϭ
.Δϟϵ΍ Δϐϟ ϯϮΘδϣ ϰϠϋ άϴϔϨΘϠϟ ΔϠΑΎϗ ϭ ΔϔϠΘΨϣ ΔϤϴϠόΗ 28 ϰϟ· ΪΘϤΗ ΔϴγΎγϷ΍ Mov ΔϤϴϠόΗ
ΕΎϴτόϤϟ΍ ϞϘϧ ΕΎϤϴϠόΗ - ϻ
˱ ϭ΃
ϦϴѧѧΑ ϭ΃ ΔѧѧϴϠΧ΍Ϊϟ΍ ΞϟΎѧѧόϤϟ΍ ΕϼΠѧѧδϣ ϦϴѧѧΑ Ύѧѧϣ· ϚѧѧϟΫ ϭ ΕΎѧѧϴτόϤϟ΍ ϞѧѧϘϧ ΎѧѧϬΘϔϴχϭ ΕΎѧѧϤϴϠόΗ ΔѧѧϋϮϤΠϣ ΞϟΎѧѧόϤϟ΍ ϚѧѧϠϤϳ
:ϲϫ ϭ Γήϛ΍άϟ΍ ϲϓ ϦϳΰΨΗ ΓήΠΣ ϭ ϲϠΧ΍Ω ϞΠδϣ
Mov ΔϤϴϠόΗ (
:ϲϟΎΘϟ΍ ϞϜθϟ΍ ΎϬϟ ϭ ϑΪϬϟ΍ ϝϮΤΘϣ ϰϟ· έΪμϤϟ΍ ϝϮΤΘϣ Ϧϣ ΕΎϴτόϣ ΔϤϠϛ ϭ΃ ΖϳΎΑ ϞϘϨϟ ΔϤϴϠόΘϟ΍ ϩάϫ ϡΪΨΘδΗ
ΔϟΰΘΨϤϟ΍ ΔϤϠϜϟ΍ ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍ ΓήΛ΄ΘϤϟ΍ ϡϼϋϷ΍
MOV ϞϘϧ MOV D,S SĺD ΪΟϮϳ ϻ
ϲϟΎѧΘϟ΍ ϝϭΪѧΠϟ΍ ϦϴѧΒϳ ϭ Γήϛ΍άѧϟ΍ ϲѧϓ ϦϳΰѧΨΗ Ε΍ήѧΠΣ ϭ΃ ΔѧϴϠΧ΍Ω ΕϼΠѧδϣ ϥϮѧϜΗ ϥ΃ ϦѧϜϤϳ ΔϤϴϠόΘϟ΍ ϩάϬϟ S,D ϥ·
: ΎϬϨϣ ϞϜϟ ϝΎΜϣ ϊϣ ϑΪϬϟ΍ ϭ έΪμϤϟ΍ ΕϻϮΤΘϣ ω΍Ϯϧ΃ ϒϠΘΨϣ
Destination ϑΪϬϟ΍ Source έΪμϤϟ΍ ϰϨόϤϟ΍ ΰϣήϟ΍
Mem Acc Ϣϛ΍ήϤϟ΍ Acc
Acc Mem Γήϛ΍Ϋ ΓήΠΣ Mem
Reg Reg ϞΠδϣ Reg
Reg Mem ϱέϮϓ ϝϮΤΘϣ Imm
Mem Reg ϊτϘϣ ϝϮΤΘϣ Seg-reg
Reg Imm ΖΑ 16 ϭΫ ϞΠδϣ Reg16
Mem Imm Γήϛ΍Ϋ ϲΗήΠΣ Mem16
Seg-reg Reg16
Seg-reg Mem16
Reg16 Seg-reg
Mem16 Seg-reg MOV ΔϤϴϠόΗ Ϧϣ ΓΎϨΜΘδϤϟ΍ ΕϻΎΤϟ΍
ϝϭΪѧѧΠϟ΍ ϲѧѧϓ ϯήѧѧϧ ϻ Ϛϟάѧѧϟ Γήѧѧϛ΍Ϋ ϲѧѧΗήΠΣ ϦϴѧѧΑ ήѧѧηΎΒϣ ϞϜѧѧθΑ ΕΎѧѧϴτόϤϟ΍ ϞѧѧϘϨΗ ϥ΃ MOV ΔѧѧϤϴϠόΗ ϊϴτΘѧѧδΗ ϻ-1
ϻ
˱ ϭ΃ ΎѧϬϠϘϧ ΐѧΠϳ ΎѧϬϠϘϨΑ ΏϮѧϏήϤϟ΍ ΕΎѧϴτόϤϟ΍ ϥΈѧϓ ΔϠϜѧθϤϟ΍ ϩάѧϫ ϞѧΤϟ ϭ Mem ĺ Mem : ΔϴϟΎΘϟ΍ ΔϟΎΤϟ΍ έϭΎΠϤϟ΍
Γήϛ΍άѧϟ΍ ϲѧϓ ΓΪѧϳΪΟ ΓήѧΠΣ ϰѧϟ· ϞΠѧδϤϟ΍ ΍άϫ ΕΎϳϮΘΤϣ ϞϘϨΗ ϢΛ Ϧϣ ϭ ˬ MOV ΔϤϴϠόΗ Δτγ΍ϮΑ ϲϠΧ΍Ω ϞΠδϣ ϲϓ
.ϯήΧ΃ MOV ΔϤϴϠόΗ Δτγ΍ϮΑ
MOV ΎѧѧϬΑ ΡϮϤѧѧδϣ ήѧѧϴϏ ΔѧѧϴϟΎΘϟ΍ ΔѧѧϤϴϠόΘϟ΍ ϥ΃ ϱ΃ .ΓήѧѧηΎΒϣ ϊѧѧτϘϣ ϞΠѧѧδϣ ϲѧѧϓ ΔѧѧϳέϮϓ ΔѧѧϤϴϗ ϊѧѧοϭ ϦѧѧϜϤϳ ϻ-2
: ϦϴΘϴϟΎΘϟ΍ ϦϴΘϤϴϠόΘϟ΍ ϡΪΨΘδϧ ΔϠϜθϤϟ΍ ΍άϫ ϞΤϟ ϭ DS,1000
MOV AX,1000
MOV DS,AX
ήѧϴϏ ΔѧϴϟΎΘϟ΍ ΔѧϤϴϠόΘϟ΍ ϥ΃ ϱ΃ ˬΓήѧηΎΒϣ ήѧΧ΁ ϊѧτϘϣ ϞΠ˰ѧδϣ ϰѧϟ· ϊσΎѧϘϤϟ΍ ΕϼΠδϣ ΪΣ΃ ΕΎϳϮΘΤϣ ϞϘϧ ϦϜϤϳ ϻ-3
˰Α ϡϮϘϧ ΔϠϜθϤϟ΍ ϩάϫ ϞΤϟ ϭ MOV DS,ES ΎϬΑ ΡϮϤδϣ
MOV AX,ES
MOV DS,AX
SI ϞΠѧδϤϟ΍ Δτѧγ΍ϮΑ ΎѧϬϴϟ· έΎѧθϤϟ΍ Γήϛ΍άѧϟ΍ ΓήΠΣ ΕΎϳϮΘΤϣ ϞϘϧ ϲϨόΗ ΔϤϴϠόΘϟ΍ ϩάϫ MOV AL,[SI] : ϡΎϋ ϝΎΜϣ
έΪѧѧμϤϟ΍ ϝϮѧѧΤΘϣ ϭ ϞΠѧѧδϤϟΎΑ ΓήѧѧηΎΒϣ ήѧѧϴϏ ΔѧѧϧϮϨϋ Ϯѧѧϫ ΔѧѧϤϴϠόΘϟ΍ ϩάѧѧϫ ϲѧѧϓ ΔѧѧϧϮϨόϟ΍ ϡΎѧѧψϧ ϥ· ϭ AL ϞΠѧѧδϤϟ΍ ϰѧѧϟ·
. AL ϮϬϓ ϑΪϬϟ΍ ϝϮΤΘϣ Ύϣ΃ PA = DS x 10h + SI Ϯϫ ϲ΋Ύϳΰϴϔϟ΍ Ϫϧ΍ϮϨϋ
XCHG ϞϳΪΒΘϟ΍ ΔϤϴϠόΗ (2
.έΪμϤϟ΍ ϝϮΤΘϤΑ ϑΪϬϟ΍ ϝϮΤΘϣ ϝ΍ΪΒΘγϻ ϭ ϑΪϬϟ΍ ϝϮΤΘϤΑ έΪμϤϟ΍ ϝϮΤΘϣ ϝ΍ΪΒΘγϻ ΔϤϴϠόΘϟ΍ ϩάϫ ϡΪΨΘδ˵Η
ΔϟΰΘΨϤϟ΍ ΔϤϠϜϟ΍ ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍ ΓήΛ΄ΘϤϟ΍ ϡϼϋϷ΍
SĺD
XCHG ϞϳΪΒΗ XCHG D,S
DĺS
ΪΟϮϳ ϻ
23- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

D ϑΪϬϟ΍ S έΪμϤϟ΍ ϭ έΪѧѧμϤϟ΍ ΕϻϮѧѧΤΘϣ ω΍Ϯѧѧϧ΃ ϒѧѧϠΘΨϣ ϲϟΎѧѧΘϟ΍ ϝϭΪѧѧΠϟ΍ ϦϴѧѧΒϳ ϭ


Acc Reg16 . XCHG ΔϤϴϠόΘϟ ϑΪϬϟ΍
Mem Reg :ϝΎΜϣ
Reg Reg
XCHG AX,BX
.BX ϭ AX ΕΎϳϮΘΤϣ ϦϴΑ ϞϳΪΒΘϟ΍ ϢΘϳ ϝΎΜϤϟ΍ ΍άϫ ϲϓ
XCHG [SUM],BX
. BX ϞΠδϤϟ΍ ϦϴΑ ϭ Γήϛ΍άϟ΍ ϲϓ SUM ΓήΠΤϟ΍ ϯϮΘΤϣ ϦϴΑ ϞϳΪΒΘϟ΍ ϢΘϳ
XLAT ΔϤϴϠόΗ (¨
ΎϨόѧοϭ ϮѧϠϓ Γήϛ΍άѧϟ΍ ϲѧϓ ΔѧϧΰΨϤϟ΍ ϝϭ΍ΪѧΠϟ΍ ϊѧϣ ϢΘѧϳ ΔѧϤϴϠόΘϟ΍ ϩάѧϫ ϞѧϣΎόΗ ϥ· ˬ ςϘϓ AL ϊϣ ΔϤϴϠόΘϟ΍ ϩάϫ ϞϣΎόΘΗ
Δѧϳ΍ΪΑ ϰѧϟ· ϪΒѧδϧ ήѧμϨόϟ΍ ΔѧΣ΍ί· AL ϲѧϓ ΎϨόοϭ ϭ DS ΕΎϴτόϤϟ΍ ϊτϘϣ ϰϟ· ΔΒδϧ ϝϭΪΠϟ΍ Δϳ΍ΪΑ ΔΣ΍ί· BX ϲϓ
ΞΗΎѧϨϟ΍ ήѧΒΘόΗ ϭ BX ϞΠѧδϤϟ΍ ΕΎѧϳϮΘΤϣ ϊѧϣ AL ϞΠѧδϤϟ΍ ΕΎѧϳϮΘΤϣ ϊѧϤΠΑ XLAT ΔѧϤϴϠόΗ ϡϮϘΗ ΎϫΪϨϋ ˬϝϭΪΠϟ΍
. AL ϲϓ ΎϬΘΣ΍ί· ϰτόϤϟ΍ ΓήΠΤϟ΍ ΔϤϴϗ ϊοϮΑ ϡϮϘΗ ϢΛ ˬΕΎϴτόϤϟ΍ ϊτϘϣ ϰϟ· ΔΒδϨϟΎΑ ΔΣ΍ί·
ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
XLAT ϝϭΪΟ ( DS x 10h ) + [AL+BX]
XLAT ΔϤΟήΗ ĺ AL ΪΟϮϳ ϻ
έΪμϤϟ΍
:ϝΎΜϣ
Ϧѧѧϣ ΓήѧѧΠΣ ϝϭ΃ ϲѧѧϓ Ϫѧѧϧ΃ ϱ΃ 9 ϰѧѧϟ· 1 Ϧѧѧϣ Ω΍ΪѧѧϋϷ΍ ΕΎѧѧόΑήϣ ϰѧѧϠϋ ϱϮѧѧΘΤϳ Γήϛ΍άѧѧϟ΍ ϲѧѧϓ ϝϭΪѧѧΟ ΎϨϳΪѧѧϟ Ϫѧѧϧ΃ νήѧѧϔΑ
ϭ ˬ (4 ϱ΃) 2 ΩΪѧѧόϟ΍ ϊѧѧΑήϣ ϊѧѧοϮϳ ΔѧѧϴϧΎΜϟ΍ ΓήѧѧΠΤϟ΍ ϲѧѧϓ ϭ 1 ΩΪѧѧόϟ΍ ϊѧѧΑήϣ ϊѧѧοϮϳ ϝϭΪѧѧΠϟ΍
DS Δѧϳ΍ΪΑ Ϧѧϋ ϪѧΘϳ΍ΪΑ ΔѧΣ΍ί· ΕΎѧΘϳΎΑ ϊѧδΗ ϪϟϮσ ϝϭΪΠϟ΍ ϥ΃ ϯήϧ ΍άϫ Ϧϣϭ « ΍άϜϫ
. 100 ϲϫ DS ˰ϟ΍ ϊτϘϣ
100 ϥ΃ ϱ΃ 4 ΩΪѧόϟ΍ ϦϜϴѧϟ ϭ Ω΍ΪѧϋϷ΍ ϩάѧϫ ΪΣ΃ ϊΑήϣ ϰϠϋ ϝϮμΤϟ΍ ΎϨϣ ΐϠτϳ ΎϣΪϨϋ
1
4
:ϲϠϳ ΎϤΑ ϡϮϘϧ Ϛϟάϟ AL = 16 ΔϤϴϗ ΢ΒμΗ ϥ΃ Ϯϫ ΏϮϠτϤϟ΍
9 . BX = 100 ϭ AL = 3 ϊπϧ‡ (1
16 . XLAT ΔϤϴϠόΘϟ΍ ϲτόϧ‡ (2
.ΏϮϠτϤϟ΍ Ϯϫ ϭ AL = 16 ΢Βμϳ ΎϫάϴϔϨΗ ΪόΑ ϭ

109 LEA, LES, LDS ΕΎϤϴϠόΘϟ΍ (4


ϭ΃ ϊѧτϘϣ ϞΠѧδϣ ϞѧϴϤΤΘϟ ΕΎѧϴτόϤϟ΍ ϞϘϧ ΔϴϠϤϋ ϞΟ΃ Ϧϣ ΕΎϤϴϠόΘϟ΍ ϩάϫ ϞϤόΘδΗ
ϥ΍ϮѧѧϨόΑ ϞΠѧδϣ ϞѧϴϤΤΗ ϲѧϫ ΎѧѧϬΘϔϴχϭ LEA ΔѧϤϴϠόΘϟ΍ .Γήϛ΍άѧϟ΍ Ϧѧϣ ήѧηΎΒϣ ϞϜѧѧθΑ ϥ΍ϮѧϨόΑ ΔѧϣΎϋ ν΍ήѧϏ΃ ϞΠѧδϣ
ϞΠѧδϣ ϞѧϴϤΤΗ ΎѧϬΘϔϴχϭ LES ΔѧϤϴϠόΗ ϭ DS ΕΎѧϴτόϤϟ΍ ϊѧτϘϣ ϞΠѧδϣ ϭ Ύѧϣ ϞΠδϣ ϞϴϤΤΘϟ ϲϬϓ LDS Ύϣ΃ ϝΎόϓ
:ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ ϲϓ ΎϤϛ ΔϓϮλϮϣ ΕΎϤϴϠόΘϟ΍ ϩάϫϭ . ES ϲϓΎοϹ΍ ΕΎϴτόϤϟ΍ ϊτϘϣ ϞΠδϣ ϭ Ύϣ
ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
ϥ΍ϮϨϋ ϞϴϤΤΗ
LEA LEA reg16,mem16 Mem16 ĺ reg16 ΪΟϮϳ ϻ
ϝΎόϓ
ϞΠδϣ ϞϴϤΤΗ Mem32 ĺ reg16
LDS LDS reg16,mem32 ΪΟϮϳ ϻ
DS ϞΠδϤϟ΍ ϭ Mem32+2 ĺ DS
ϞΠδϣ ϞϴϤΤΗ Mem32 ĺ reg16
LES LES reg16,mem32
Mem32+2 ĺ ES ΪΟϮϳ ϻ
ES ϞΠδϤϟ΍ ϭ
:ΔϠΜϣ΃

24- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

100 00
LEA SI,[100] => SI = 1000
10

LDS SI,[200] => SI = 553F


DS = 1000 200 3F
55
LES DI,[300] => DI = 4030 00
ES = 3000 10

300 30
40
00
30

ΔϴοΎϳήϟ΍ ΕΎϤϴϠόΘϟ΍ - Ύ˱ϴϧΎΛ


.ΔϤδϘϟ΍ ϭ Ώήπϟ΍ ˬΡήτϟ΍ ˬϊϤΠϟ΍ ΕΎϴϠϤϋ ϞΟ΃ Ϧϣ ΕΎϤϴϠόΗ ϞϤθΗ ϲϫ ϭ
ϊϤΠϟ΍ ΕΎϤϴϠόΗ (
:ϲϟΎΘϟ΍ ϝϭΪΠϟΎΑ ΔϓϮλϮϣ ϲϫ ϭ
ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
S+DĺD
ADD ϊϤΟ ADD D,S
Carry ĺ CF
ΔϟΎΤϟ΍ ϡϼϋ΃
άΧ΃ ϊϣ ϊϤΟ
S + D + CF ĺ D
ADC ϦϴόΑ ΡΎϳΰϧϻ΍ ADC D,S
Carry ĺ CF ΔϟΎΤϟ΍ ϡϼϋ΃
έΎΒΘϋϻ΍
έ΍ΪϘϤΑ ΓΩΎϳΰϟ΍
INC INC D D+1 ĺ D ΔϟΎΤϟ΍ ϡϼϋ΃
ΪΣ΍ϭ
ϊϤΟ ΞΗΎϧ ΢ϴΤμΗ
AAA ΓήϔϴθΑ ϦϳΩΪϋ AAA Ύ˱ ϘΣϻ ΎϬΣήη ϢΘϴγ AF,CF
ϲϜγϵ΍
ϊϤΟ ΞΗΎϧ ΢ϴΤμΗ ϡϼϋ΃ Ϟϛ
DAA ΓήϔϴθΑ ϦϳΩΪϋ DAA Ύ˱ ϘΣϻ ΎϬΣήη ϢΘϴγ ΍ΪϋΎϣ ΔϟΎΤϟ΍
BCD OF

ADC ϭ ADD ϲΘϤϴϠόΗ


D ϑΪϬϟ΍ S έΪμϤϟ΍
ADD, ADC ϊѧϤΠϟ΍ ΕΎѧϤϴϠόΗ ϲѧϓ ΔΣϮϤѧδϤϟ΍ ΕϻϮΤΘϤϟ΍ ϥ·
Reg Reg :ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ ϲϓ ΔϨϴΒϣ
Reg Mem
Mem Reg
Reg Imm
Mem Imm
Acc D ϑΪϬϟ΍ Imm : ϲϬϓ INC ΔϤϴϠόΗ ϲϓ ΔΣϮϤδϤϟ΍ ΕϻϮΤΘϤϠϟ ΔΒδϨϟΎΑ ϭ
Reg8
Reg16 25- -
Mem
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ˮ ADC AX,BX ΔѧϤϴϠόΘϟ΍ άѧϴϔϨΗ ΔѧΠϴΘϧ ϲѧϫ ΎѧϤϓ CF = 1 ϭ BX = FD81h ϭ AX = 4F3Dh νήѧϔΑ :ϝΎѧΜϣ
. ϩάϫ ϊϤΠϟ΍ ΔϴϠϤϋ άϴϔϨΗ ΪόΑ ΔϟΎΤϟ΍ ϡϼϋ΃ ΔϟΎΣ Ύ˱ϨϴΒϣ
ϡϼϋϷ΍ ΔϟΎΣ ΢ϴοϮΗ ϞΟ΃ Ϧϣ ΕϻϮΤΘϤϠϟ Δϴ΋ΎϨΜϟ΍ Γήϔϴθϟ΍ ΐΘϜϨγ :ϞΤϟ΍
1111 111 1
AX = 0100 1111 0011 1101 b
BX = 1111 1101 1000 0001 b
CF = 0001 b +
1 0100 1100 1011 1111 b
CF
:ϲϫ ΔϟΎΤϟ΍ ϡϼϋ΃ ϥϵ΍ ϭ
ϊϤΠϟ΍ ΞΗΎϧ Ϧϣ ϝϭϷ΍ ΖϳΎΒϟ΍ ϲϓ ϱΩήϓ Ε΍ΪΣ΍Ϯϟ΍ ΩΪϋ ϥϷ PF = 0
ϢϴϗήѧΗ ϢΘѧϳ ΚѧϴΣ ) ϊѧϤΠϟ΍ ΞΗΎѧϧ Ϧѧϣ ϝϭϷ΍ ΖѧϳΎΒϟ΍ ϲѧϓ 4 ΔѧϧΎΨϟ΍ ϰѧϟ· 3 ΔѧϧΎΨϟ΍ Ϧѧϣ ΡΎϳΰϧ΍ ΪΟϮϳ ϻ ϪϧϷ AF = 0
( ήϔμϟ΍ Ϧϣ ΍˱˯ΪΑ ΕΎϧΎΨϟ΍
( ΐΟϮϣ ΞΗΎϨϟ΍ ) ϊϤΠϟ΍ ΔΠϴΘϧ Ϧϣ ΔϧΎΧ ήΧ΁ ϲϫ ϭ SF = 0
ϲΟέΎΧ ΡΎϳΰϧ΍ ΩϮΟϭ ΐΒδΑ CF = 1
ϲΟέΎΧ ΡΎϳΰϧ· ϭ ϲϠΧ΍Ω ΡΎϳΰϧ· ΪΟϮϳ ϪϧϷ OF = 0
MSB ϰϤψόϟ΍ ΔϴϤϫϷ΍ Ε΍Ϋ ΔϧΎΨϟ΍ ϰϟ· ϞΧ΍Ϊϟ΍ Ϯϫ ϲϠΧ΍Ϊϟ΍ ΡΎϳΰϧϻ΍ :ΔψΣϼϣ
ςϘϓ ϲΟέΎΧ ΡΎϳΰϧ΍ ΪΟϭ ϭ΃ ςϘϓ ϲϠΧ΍Ω ΡΎϳΰϧ΍ ΪΟϭ ΍Ϋ· OF = 1 :ΔψΣϼϣ
DAA ΢ϴΤμΘϟ΍ ΔϤϴϠόΗ
ΞΗΎѧѧϧ ϥϮѧѧϜϳ ϥ΃ ΐѧѧΠϳ ϭ ΍άѧϫ ) BCD ΓήϔϴѧѧθΑ ϦϳΩΪѧѧϋ ϊѧϤΟ ΞΗΎѧѧϨϟ ΢ϴΤѧѧμΗ ΔѧѧϴϠϤϋ ίΎѧΠϧϹ ΔѧѧϤϴϠόΘϟ΍ ϩάѧѧϫ ϡΪΨΘѧδΗ
ϊѧϤΠϟ ΔѧϨϜϤϤϟ΍ ΕϻΎѧΤϟ΍ ϦϴѧΒϳ ϲϟΎѧΘϟ΍ ϝϭΪѧΠϟ΍ ϭ ( AX Ϣϛ΍ήѧϤϟ΍ Ϧѧϣ ϲϠϔδϟ΍ ϒμϨϟ΍ ϲϓ ϱ΃ AL ϲϓ Ύ˱ϤΘΣ ϊϤΠϟ΍
: BCD ΓήϔϴθΑ ϦϳΩΪϋ
+ 0 1 2 3 4 5 6 7 8 9
0 9
1 9 10
2 9 10
3 9 10
4 9 10
5 9 10
6 9 10 15
7 9 10 15 16
8 9 10 15 16
9 9 10 15 16 18

Ζѧδϴϟ ϭ ΡΎѧϳΰϧ΍ ϰѧϠϋ ϱϮѧΘΤΗ ϻ ϭ ΔΤϴΤѧλ ϊѧϤΠϟ΍ ΔѧΠϴΘϧ ϥϮѧϜΗ ΎѧϬϴϓ ϭ 9 ϰѧϟ· 0 Ϧѧϣ ΎѧϬϣΎϗέ΃ ϰѧϟϭϷ΍ ΔϘτϨϤϟ΍
.ϰϟϭϷ΍ ΔϘτϨϤϟ΍ ϕΎτϧ ϦϤο Δόϗ΍ϭ ϡΎϗέ΃ ϲϫ ϭ 7+2=9 ϼ ˱ Μϣ ΢ϴΤμΗ ϰϟ· ΔΟΎΤΑ
ΔϓΎѧοΈΑ ΢ϴΤѧμΗ ϰѧϟ· ΔѧΟΎΤΑ ϭ ΔΤϴΤλ ήϴϏ ϊϤΠϟ΍ ΔΠϴΘϧ ϥϮϜΗ ΎϬϴϓ ϭ 15 ϰϟ· 10 Ϧϣ ΎϬϣΎϗέ΃ ΔϴϧΎΜϟ΍ ΔϘτϨϤϟ΍
ΞΗΎѧѧϨϟ΍ ϥϮѧѧϜϳ E ΩΪѧѧόϟ΍ ϰѧѧϟ· 6 ΔϓΎѧѧοΈΒϓ 9+5=E ϼ
˱ ΜѧѧϤϓ ϲϧΎѧѧΜϟ΍ ΩΪѧѧόϟ΍ ϰѧѧϟ· ϞѧѧϤΣ ϭ Ϣѧѧϗέ ϰѧѧϠϋ ϞѧѧμΤϨϓ 6 ΩΪѧѧόϟ΍
.ΔΤϴΤλ ΔΠϴΘϨϟ΍ ϥϮϜΗ ϚϟάΑ ϭ 6+E=14
26- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ϭ ΢ϴΤѧμΗ ϰѧϟ· ΔѧΟΎΤΑ ϭ ΔΤϴΤѧλ ήѧϴϏ ϊѧϤΠϟ΍ ΔѧΠϴΘϧ ϥϮѧϜΗ ΎѧϬϴϓ ϭ 18 ϰΘΣ ϭ 16 Ϧϣ ΎϬϣΎϗέ΃ ΔΜϟΎΜϟ΍ ΔϘτϨϤϟ΍
.ΡΎϳΰϧ΍ ϊϣ ϊϤΟ ϞλΎΣ Ϧϣ ΔΠϴΘϨϟ΍ Ô ΘΗ ΎϨϫ
AL = Bit7 « Bit0 ϞΜϤϧ ΚϴΣ AL ϲϓ ΩϮΟϮϣ ϊϤΠϟ΍ ΞΗΎϧ ϥ΃ ΎϤΑ
: ϲϫ ΔϤϴϠόΘϟ΍ ϩάϫ ϲϓ ΢ϴΤμΘϟ΍ ΓΪϋΎϗ ϥ·
1) if Bit3 Bit2 Bit1 Bit0 of AL > 9 or AF = 1
then AL = AL + 6 , AF = 1
2) if AL > 9Fh or CF = 1
then AL = AL + 60h , CF =1

BL = 68 BCD ϭ AL = 28 BCD ϥ΃ νήϔΑ :ϝΎΜϣ


:ϲϠϳ Ύϣ άϴϔϨΗ ΞΗΎϧ Ϯϫ Ύϣ
ADD AL,BL
DAA

ϲϫ ϦϴΘϤϴϠόΘϟ΍ ϦϴΗΎϫ άϴϔϨΗ ΔΠϴΘϧ ϥ· :ϞΤϟ΍


28 BCD = 00101 1000 b
68 BCD = 0110 1000 b + ΔΘγ Ϣϗήϟ΍ ϞΜϤΗ 0110 ΚϴΣ
1001 0000 ĺ AL
CF = 0 0110 +
1001‡ 0110 => AL = 96 BCD
AF = 1
AAA ΔϤϴϠόΗ
ϲѧϓ ϊѧϤΠϟ΍ ΞΗΎѧϧ ϥϮѧϜϳ ϥ΃ ΐѧΠϳ Ύ˱ѧπϳ΃ ΎѧϨϫ ϭ ) ϲϜѧγ΁ ΓήϔϴѧθΑ ϦϳΩΪѧϋ ϊѧϤΟ ΞΗΎϧ ΢ϴΤμΘϟ ΔϤϴϠόΘϟ΍ ϩάϫ ϡΪΨΘδΗ
:ϲϫ ΔϤϴϠόΘϟ΍ ϩάϫ ϲϓ ΢ϴΤμΘϟ΍ ΓΪϋΎϗ ϭ ( AL ϞΠδϤϟ΍
if Bit3 Bit2 Bit1 Bit0 of AL > 9 or AF =1
then AL = AL + 06
AL = AL and 0Fh
AH = AH + 1
AF = 1
CF = 1
Else AL = AL and 0Fh
AH = 00
:ϦϴΘϴϟΎΘϟ΍ ϦϴΘϤϴϠόΘϟ΍ άϴϔϨΗ ΞΗΎϧ Ϯϫ Ύϣ BL = 34h = 4 ASCII ϭ AL =32h = 2 ASCII ϥ΃ νήϔΑ :ϝΎΜϣ
ADD AL,BL
AAA

: ϲϟΎΘϟΎϛ Ϯϫ ϦϴΘϤϴϠόΘϟ΍ ϦϴΗΎϫ άϴϔϨΗ ΞΗΎϧ ϥ · :ϞΤϟ΍


AL = 0011 0010
BL = 0011 0100 +
0110 0110 ĺ AL = 66h
AL = 06h , AH = 00
( ήϔμϟ΍ Ϧϣ ΍˱έΎΒΘϋ΍ ϢϴϗήΘϟ΍ ΃ΪΒϳ ΚϴΣ ) 4 ΔϧΎΨϟ΍ ϰϟ· 3 ΔϧΎΨϟ΍ Ϧϣ ΡΎϳΰϧ΍ ΩϮΟϭ ϡΪϋ ΐΒδΑ AF = 0 ΎϨϫ ϭ
Ρήτϟ΍ ΕΎϤϴϠόΗ (2
:ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ Ϧϣ ΢ο΍ϭ Ϯϫ ΎϤϛ Ρήτϟ΍ ΕΎϤϴϠόΗ Ϧϣ Δόγ΍ϭ ΔϋϮϤΠϣ ϙΎϨϫ
ΔϤϠϜϟ΍ ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍ ϡϼϋϷ΍
27- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
D-SĺD
SUB Ρήσ SUB D,S
burrow ĺ CF
ΔϟΎΤϟ΍ ϡϼϋ΃
ϊϣ Ρήτϟ΍ D - S - CF ĺ D
SBB SBB D,S ΔϟΎΤϟ΍ ϡϼϋ΃
ΓέΎόΘγϻ΍ Carry ĺ CF
έ΍ΪϘϤΑ ιΎϘϧϹ΍
DEC DEC D D-1 ĺ D ΔϟΎΤϟ΍ ϡϼϋ΃
ΪΣ΍ϭ
0±DĺD
NEG ϲ΋ΎϨΜϟ΍ ϢϤΘϤϟ΍ NEG D
1 ĺ CF
ΔϟΎΤϟ΍ ϡϼϋ΃
Ρήσ ΞΗΎϧ ΢ϴΤμΗ ϡϼϋ΃ Ϟϛ
DAS ΓήϔϴθΑ ϦϳΩΪϋ DAS Ύ˱ ϘΣϻ ΎϬΣήη ϢΘϴγ ΍Ϊϋ ΔϟΎΤϟ΍
BCD OF
ϊϤΟ ΞΗΎϧ ΢ϴΤμΗ
AAS ΓήϔϴθΑ ϦϳΩΪϋ AAS Ύ˱ ϘΣϻ ΎϬΣήη ϢΘϴγ AF, CF
ϲϜγϵ΍
ΔΣϮϤѧδϤϟ΍ ΕϻϮѧΤΘϤϟ΍ ΎϬѧδϔϧ ϲѧϫ SUB, SBB Ρήѧτϟ΍ ϲѧΘϤϴϠόΗ ϞѧΟ΃ Ϧѧϣ ΔϣΪΨΘѧδϤϟ΍ ΕϻϮѧΤΘϤϟ΍ ϥ· :ΔψΣϼϣ
ϲѧѧϬϓ DEC ΔѧѧϤϴϠόΗ ϞѧѧΟ΃ Ϧѧѧϣ ΔϣΪΨΘѧѧδϤϟ΍ ΕϻϮѧѧΤΘϤϟ΍ ϰѧѧϟ· ΔΒѧѧδϨϟΎΑ Ύѧѧϣ΃ ADD,ADC ϊѧѧϤΠϟ΍ ϲѧѧΘϤϴϠόΗ ϞѧѧΟ΃ Ϧѧѧϣ
Reg, ϲѧϫ ΔΣϮϤѧδϤϟ΍ ΕϻϮΤΘϤϟΎѧϓ NEG ΔѧϤϴϠόΘϟ ΔΒѧδϨϟΎΑ ϭ INC ΔѧϤϴϠόΗ ϞΟ΃ Ϧϣ ΔΣϮϤδϤϟ΍ ΕϻϮΤΘϤϟ΍ ΎϬδϔϧ
. Reg16, Mem, Mem16
νήѧѧϔΑ ϭ 2F018h Ϯѧϫ ΎѧѧϤϬϨϋ ΪѧϟϮΘϤϟ΍ ϲ΋Ύѧѧϳΰϴϔϟ΍ ϥ΍ϮѧϨόϟ΍ ϭ DS = 2F00h ϭ SI = 0018h ϥ΃ νήѧϔΑ :ϝΎѧΜϣ
ΔѧϤϴϠόΘϟ΍ άѧϴϔϨΗ ΞΗΎѧϧ Ϯѧϫ Ύѧϣ ˬ [2F018] = 0400h ϲ΋Ύѧϳΰϴϔϟ΍ ϥ΍ϮѧϨόϟ΍ ΎѧϬϴϟ· ήϴѧθϳ ϲѧΘϟ΍ ΓήѧΠΤϟ΍ ΕΎѧϳϮΘΤϣ ΖѧϧΎϛ
. SUB [SI],03F8h
:ϞΤϟ΍
) ϑΪѧѧϬϟ΍ ϝϮѧѧΤΘϣ ΕΎѧѧϳϮΘΤϣ Ϧѧѧϣ ( ΎѧѧϨϫ ϱέϮѧѧϓ ϝϮѧѧΤΘϣ ) έΪѧѧμϤϟ΍ ϝϮѧѧΤΘϣ ΕΎѧѧϳϮΘΤϣ Ρήѧ τΑ ΔѧѧϤϴϠόΘϟ΍ ϩάѧѧϫ ϡϮѧϘΗ
ϢѧѧΛ Ϧѧϣ ϭ έΪѧѧμϤϟ΍ ϝϮѧΤΘϤϟ ϲ΋ΎѧϨΜϟ΍ ϢϤΘѧѧϤϟ΍ ΩΎѧΠϳΈΑ ϢΘѧѧΗ Ρήѧτϟ΍ ΔѧϤϴϠόΗ ϥ΃ ΚѧѧϴΣ ( ΎѧϨϫ Γήѧѧϛ΍Ϋ ΓήѧΠΣ ΕΎѧϳϮΘΤϣ
.ϑΪϬϟ΍ ϝϮΤΘϣ ϊϣ ϪόϤΟ

Destination = 0400h = 0000 0100 0000 0000 b


Source = 03F8h = 1111 1100 0000 1000 b +
1‡ 0000 0000 0000 1000 b

: ( Ϫϟ ϲ΋ΎϨΜϟ΍ ϢϤΘϤϟ΍ ΩΎΠϳ· Ϊϳήϧ ϱάϟ΍ ΩΪόϟ΍ ϕϮϓ ϦϴτΧ ϊοϮΑ Ϫϴϟ· έΎθϳ ϱάϟ΍ ϭ ) ϲ΋ΎϨΜϟ΍ ϢϤΘϤϟΎΑ ΓήϛάΗ
:ϲϠϳ Ύϣ ϞϤϋΎϓ 03F8h ΩΪόϠϟ ϲ΋ΎϨΜϟ΍ ϢϤΘϤϟ΍ ϰϠϋ ϝϮμΤϟ΍ ΕΩέ΃ ΍Ϋ·
0000 0011 1111 1000 ΢Βμϴϓ ϲ΋ΎϨΜϟ΍ ϡΎψϨϟ΍ ϰϟ· ΩΪόϟ΍ ΍άϫ ϞϳϮΤΗ ‡ (1
1111 1100 0000 0111 ΞΘϨϴϓ ΍˱έΎϔλ΃ Ε΍ΪΣ΍Ϯϟ΍ ϭ Ε΍ΪΣ΍ϭ έΎϔλϷ΍ ΐϠϗ΃ ‡ (2
± 03F8h = 1111 1100 0000 1000 ϲ΋ΎϨΜϟ΍ ϢϤΘϤϟ΍ ϰϠϋ ϞμΤΘϓ ΞΗΎϨϟ΍ Ϣϗήϟ΍ ϰϟ· ΪΣ΍ϭ ϒο΃ ‡ (3

. ΞΗΎϨϟ΍ Ϧϣ ϝϭϷ΍ ΖϳΎΒϟ΍ ϲϓ ϱΩήϓ Ε΍ΪΣ΍Ϯϟ΍ ΩΪϋ ϥϷ PF = 0 : ϥ΃ φΣϻ


ΔѧѧόΑ΍ήϟ΍ ΔѧѧϧΎΨϟ΍ ϰѧѧϟ· ΔѧѧΜϟΎΜϟ΍ ΔѧѧϧΎΨϟ΍ Ϧѧѧϣ ϝΎѧѧϘΘϧϻ΍ ΪѧѧϨϋ ( ΡΎѧѧϳΰϧ΍ ) ϞѧѧϤΣ ΎѧѧϨόϣ ΪѧѧΟϮϳ ϻ ϪѧѧϧϷ AF =1
.(ϊϤΠϟ΍ ΔϟΎΣ βϜϋ)
.Δϳήϔλ Ζδϴϟ ΔΠϴΘϨϟ΍ ϥϷ ZF = 0
.MSB ΞΗΎϨϟ΍ Ϧϣ ΔϧΎΧ ήΧ΁ ΔϤϴϗ ϲϫ ϭ SF = 0
.(ϊϤΠϟ΍ ΔϟΎΣ βϜϋ) ϲΟέΎΧ ΡΎϳΰϧ΍ ϙΎϨϫ ϥϷ CF = 0

28- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

.ΪΣ΍ϭ ϥ΂Α ϲΟέΎΧ ΡΎϳΰϧ΍ ϭ ϲϠΧ΍Ω ΡΎϳΰϧ΍ ϝϮμΤϟ OF = 0


DAS ΔϤϴϠόΗ
ϲѧѧϓ ϦϳΩΪѧѧόϟ΍ Ϧϳάѧѧϫ Ρήѧѧσ ΞΗΎѧѧϧ ϦѧѧϤϜϳ ΚѧѧϴΣ BCD ΓήϔϴѧѧθΑ ϦϳΩΪѧѧϋ Ρήѧѧσ ΞΗΎѧѧϧ ΢ϴΤѧѧμΘϟ ΔѧѧϤϴϠόΘϟ΍ ϩάѧѧϫ ϡΪΨΘѧѧδΗ
: ϲϫ ΢ϴΤμΘϟ΍ ΓΪϋΎϗ ϭ AL ϞΠδϤϟ΍
1) if Bit3 Bit2 Bit1 Bit0 of AL > 9 or AF = 1
then AL = AL ± 06 , AF = 1
2) if AL > 9Fh or CF=1
then AL = AL ± 60h , CF = 1
:ϦϴΘϴϟΎΘϟ΍ ϦϴΘϤϴϠόΘϟ΍ ΔΠϴΘϧ ϦϴΑ ˬ AH = 07 BCD ϭ AL = 86 BCD ϥ΃ νήϔΑ :ϝΎΜϣ
SUB AL,AH
DAS
:ϞΤϟ΍

AL = 1000 0110 b
AH = 1111 1001 b +
1 0111 1111 b => AL = 7Fh
: ϥϵ΍ ϭ
.ΔόΑ΍ήϟ΍ ΔϧΎΨϟ΍ ϰϟ· ΔΜϟΎΜϟ΍ ΔϧΎΨϟ΍ Ϧϣ ΡΎϳΰϧ΍ ΩϮΟϭ ϡΪϋ ΐΒδΑ AF = 1
ϲΟέΎΧ ΡΎϳΰϧ΍ ΩϮΟϮϟ CF = 0
AL = 79h , AF = 1 ϥ΃ ΪΠϧ ΢ϴΤμΘϟ΍ ΓΪϋΎϗ Ϧϣ 1 ρήθϟ΍ ϖϴΒτΘΑ ϭ
AAS ΔϤϴϠόΗ
ΓΪѧϋΎϗ ϭ ˬ AL ϲѧϓ Ρήѧτϟ΍ ΞΗΎѧϧ ϦѧϤϜϳ ΚѧϴΣ ASCII ΓήϔϴѧθϟΎΑ ϦϳΩΪϋ Ρήσ ΞΗΎϧ ΢ϴΤμΘϟ ΔϤϴϠόΘϟ΍ ϩάϫ ϡΪΨΘδΗ
:ϲϫ ΢ϴΤμΘϟ΍
if Bit3 Bit2 Bit1 Bit0 of AL > 9 or AF = 1
then AL = AL ± 06h , AL = AL and 0Fh
AH = AH ± 01 , AF = 1 , CF = 1
Else AL = AL and 0Fh , AH = 00
:ϝΎΜϣ
:ϦϴΘϴϟΎΘϟ΍ ϦϴΘϤϴϠόΘϟ΍ άϴϔϨΗ ΞΗΎϧ Ϯϫ Ύϣ ˬ BL = 35h = 5 ASCII ϭ AL = 38h = 8 ASCII ϥ΃ νήϔΑ
SUB AL,BL
AAS
:ϞΤϟ΍
AL = 0011 1000 b
BL = 1100 1011 b +
1 0000 0011 b => AL = 03h
ΔόΑ΍ήϟ΍ ΔϧΎΨϟ΍ ϰϟ· ΔΜϟΎΜϟ΍ ΔϧΎΨϟ΍ Ϧϣ ΡΎϳΰϧ΍ ΩϮΟϭ ΐΒδΑ AF = 0
ϲΟέΎΧ ΡΎϳΰϧ΍ ΩϮΟϭ ΐΒδΑ CF = 0
AL = 03h , AH = 00 ΪΠϧ ΢ϴΤμΘϟ΍ ΓΪϋΎϗ ϖϴΒτΗ ΪόΑ ϭ

ΔϤδϘϟ΍ ϭ Ώήπϟ΍ ΕΎϤϴϠόΗ (¨


ϭ ΓέΎѧѧηϹ΍ Ε΍Ϋ Ω΍ΪѧѧϋϷ΍ ΔѧѧΠϟΎόϣ ϲѧѧϓ ϱ΃ BCD ΓήϔϴѧѧθϟΎΑ ϭ΃ Δѧѧϴ΋ΎϨΜϟ΍ Ω΍ΪѧѧϋϷ΍ ϰѧѧϠϋ ΕΎѧѧϤϴϠόΘϟ΍ ϩάѧѧϫ ϖѧѧϴΒτΗ ϢΘѧѧϳ
:ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ ϲϓ ΔϨϴΒϣ ΕΎϤϴϠόΘϟ΍ ϩάϫ ϭ .ΓέΎη· ϥϭΪΑ Ω΍ΪϋϷ΍
ΔϤϠϜϟ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍ ΓήΛ΄ΘϤϟ΍ ϡϼϋϷ΍
ΔϟΰΘΨϤϟ΍
AL.S8 ĺ AX
MUL ϥΪΑ Ώήο MUL S
AX.S16 ĺ DX,AX
ΔϟΎΤϟ΍ ϡϼϋ΃
29- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ΓέΎη·
Q[AX/S8] ĺ AL

ΖϳΎΑ
ΔϟΎΣ
ϥϭΪΑ ϢϴδϘΗ R[AX/S8] ĺ AH
DIV DIV S ΔϟΎΤϟ΍ ϡϼϋ΃

ΔϤϠϛ ΔϟΎΣ
ΓέΎη· Q[(DX,AX)/S16] ĺ AX
R[(DX,AX)/S16] ĺ DX

R ΰѧϣήϟ΍ Ύѧϣ΃ ΖѧϳΎΑ Ϧѧϋ ΓέΎѧΒϋ έΪμϣ ϝϮΤΘϣ ϲϨόϳ S8 ΰϣήϟ΍ ϭ ˬΔϳΩΎόϟ΍ Ώήπϟ΍ ΔϴϠϤϋ ϰϨόΗ ΔτϘϨϟ΍ : ΔσΎδΒΑ
.ΔϤδϗ ϞλΎΣ ϻ· Ϯϫ Ύϣ Q ΰϣήϟ΍ ϭ ΔϤδϘϟ΍ ϲϗΎΑ ϲϨόϴϓ
) ΔѧϴϧΎΜϟ΍ ΔѧϟΎΤϟ΍ ϲѧϓ Q ΔѧϤϴϗ ΖѧϧΎϛ ϭ΃ FF˰ѧϟ ΔϳϭΎѧδϣ ( ΖѧϳΎΑ ΔϟΎΣ ) ϰϟϭϷ΍ ΔϟΎΤϟ΍ ϲϓ Q ΔϤϴϗ ΖϧΎϛ ΍Ϋ· :ΔψΣϼϣ
.ϢϴδϘΘϟ΍ ΄τΨΑ ΔόσΎϘϤϟ΍ ϩάϫ ϑήό˵Η ϭ ˬήϔλ ωϮϨϟ΍ Ϧϣ ΔόσΎϘϣ ΙΪΤΘϓ FFFFh ϰϟ· ΔϳϭΎδϣ ( ΔϤϠϛ ΔϟΎΣ
ϭ ΔϘΑΎѧѧδϟ΍ ΕΎѧѧϤϴϠόΘϠϟ Ύ˱ѧ ϣΎϤΗ ΔϬΑΎѧѧθϣ ϲѧѧϬϓ ΓέΎѧѧηϹ΍ Ε΍Ϋ Ω΍Ϊѧѧϋϸϟ ϢϴѧѧδϘΘϟ΍ ϭ Ώήѧѧπϟ΍ ΕΎѧѧϤϴϠόΘϟ ΔΒѧѧδϨϟΎΑ :ΔѧѧψΣϼϣ
:ϲϠϳ ΎϤϛ ϑήό˵Η
.έΎΒΘϋϻ΍ ϦϴόΑ ΓέΎηϹ΍ άΧ΃ ϊϣ Ώήπϟ΍ ΔϤϴϠόΗ ϲϫ IMUL
.έΎΒΘϋϻ΍ ϦϴόΑ ΓέΎηϹ΍ άΧ΃ ϊϣ ϢϴδϘΘϟ΍ ΔϤϴϠόΗ ϲϫ IDIV
. MSB ˰ϟ΍ ΔϧΎΧ ϱ΃ ϪϨϣ ΔϧΎΧ ήΧ΁ ϦϴΘϤϴϠόΘϟ΍ ΎΘϠϛ ϲϓ ΞΗΎϨϟ΍ ΓέΎη· ϥϮϜΗ ϭ
:(ΔϤδϘϟ΍ ϭ Ώήπϟ΍ ϝϭΪΠϟ ϊΑΎΗ ) ΔϴϟΎΘϟ΍ ΕΎϤϴϠόΘϟ΍ ϙΎϨϫ ϚϟΫ ϰϟ· ΔϓΎοϹΎΑ ϭ
ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
Ϧϣ AL ϲϓ ΞΗΎϨϟ΍ ΢ϴΤμΗ Q[AL/10d] ĺ AH
AAM ϭ΃ BCD ϦϳΩΪϋ Ώήο AAM R[AL/10d] ĺ AL ΔϟΎΤϟ΍ ϡϼϋ΃
Ϧϴϴ΋ΎϨΛ ϦϳΩΪϋ
ΔϤδϘϟ΍ ϞΟ΃ Ϧϣ AX ΢ϴΤμΗ
ϭ ΔϤδϘϟ΍ ΞΗΎϧ βϴϟ AX ΚϴΣ
ϲϓ ϑΪϬϟ΍ ϝϮΤΘϣ Ϯϫ ΎϤϧ·
AH.10d + AL ĺ AL
AAD ϩάϫ ϖΒτϧ Ϛϟάϟ .ΔϤδϘϟ΍ ΔϴϠϤϋ AAD 00 ĺ AH
SF, ZF, PF
ΔϤδϘϟ΍ ΔϤϴϠόΗ ϞΒϗ ΔϤϴϠόΘϟ΍
ΕΎϤϴϠόΗ ϲϗΎΑ βϜϋ ϰϠϋ
΢ϴΤμΘϟ΍
MSB of AL ĺ
CBW ΔϤϠϛ ϰϟ· ΖϳΎΑ ϞϳϮΤΗ CBW
All bits of AH
ΪΟϮϳ ϻ
MSB of AX ĺ
CWD ΔϔϋΎπϣ ΔϤϠϛ ϰϟ· ΔϤϠϛ ϞϳϮΤΗ CBW
All bits of DX
ΪΟϮϳ ϻ

: S έΪμϤϠϟ ΔΒδϨϟΎΑ ϲϫ ΔϤδϘϟ΍ ϭ Ώήπϟ΍ ΕΎϤϴϠόΗ ϲϓ ΔΣϮϤδϤϟ΍ ΕϻϮΤΘϤϟ΍ ϥ·


.Ύ˱ϣϭΩ Ϣϛ΍ήϤϟ΍ Ϯϫ ΡϮϤδϤϟ΍ ΪϴΣϮϟ΍ ϝϮΤΘϤϟΎϓ D ϑΪϬϠϟ ϰϟ· ΔΒδϨϟΎΑ ϭ Mem16, Mem8, Reg16, Reg8
ΕΎѧΘΑ 8 ˰ѧΑ ϪѧϴϠϋ ϡϮѧδϘϣ ϰѧϠϋ AL ϲѧϓ ΕΎѧΘΑ 8 ˰ѧΑ ϡϮѧδϘϤϟ΍ ϢϴδϘΘϟ ΎϬϣ΍ΪΨΘγ΍ ϦϜϤϳ ΔϤδϘϟ΍ ΕΎϤϴϠόΗ ϥ· :ΔψΣϼϣ
ϥΎѧϛ ΍Ϋ· έΎϔѧλ΄Α AH ˯Ϟѧϣ ϲѧϨόϳ ΍άѧϫ ϭ AX ϞΠδϤϟ΍ ˯ϞϤϟ ϡϮδϘϤϟ΍ ΓέΎη· ΪϳΪϤΗ ϻ ˱ ϭ΃ ΐΠϳ ΍άϫ ίΎΠϧϹ ϭ .Ύ˱πϳ΃
ΔѧϤϴϠόΘϟ΍ Δτѧγ΍ϮΑ ΔѧϴϠϤόϟ΍ ϩάѧϫ ϢΘѧΗ ϭ ( ΓέΎѧηϹ΍ ΔѧϧΎΧ ΐѧδΣ ϱ΃ ) Ύ˱ΒϟΎѧγ ΩΪѧόϟ΍ ϥΎѧϛ ΍Ϋ· Ε΍ΪѧΣ΍ϮΑ ϭ΃ Ύ˱ΒΟϮϣ ΩΪόϟ΍
ΖѧΑ 16 ϱΫ ϡϮѧδϘϣ ϢϴѧδϘΘϟ ΎϬϣ΍ΪΨΘѧγ΍ ϦѧϜϤϳ ΖѧΑ 16 ϰϠϋ ΖΑ 32 ϢϴδϘΘϟ΍ ΕΎϤϴϠόΗ ϥΈϓ ϪΑΎθϣ ϞϜθΑ ϭ . CBW
ΔѧϤϴϠόΘϟ΍ Δτѧγ΍ϮΑ ΍άѧϫ ϢΘѧϳ ϭ ΔϔϋΎѧπϣ ΔѧϤϠϛ ϰѧϟ· ΔѧϤϠϜϟ΍ ϞѧϳϮΤΘΑ ϚѧϟΫ ϭ ΖѧΑ 16 ϱΫ ϪѧϴϠϋ ϡϮѧδϘϣ ϰѧϠϋ AX ϲϓ
.CWD
:ϲϟΎΘϟΎϛ ΎϬψϔΣ ϢΘϳ ΔόϤΠϤϟ΍ ήϴϏ Ω΍ΪϋϷ΍ ϥΈϓ Ύ˱ϘΑΎγ ΎϧήϛΫ ΎϤϛ
15 0 ϥ΃ ΐѧΠϳ ϊѧϤΠϤϟ΍ ήѧϴϏ ΩΪѧόϟ΍ ϰϠϋ ϱϮΘΤϳ ϱάϟ΍ ΖϳΎΒϟ΍ Ϧϣ ϱϮϠόϟ΍ ϢδϘϟ΍
0 0 .ήϔμϟ΍ ϰϟ· ΔϳϭΎδϣ ϪΘϤϴϗ ϥϮϜΗ
30- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ϦϴѧόϤΠϣ ήѧϴϏ ϦϳΩΪѧϋ Ώήѧο ΪѧϨϋ ϪѧϧϷ ϦϴѧόϤΠϣ ήѧϴϏ ϦϳΩΪϋ Ώήο ΞΗΎϧ ΢ϴΤμΘϟ ϡΪΨΘδΗ AAM ΔϤϴϠόΘϟ΍ ϥ·
. AAM ΔϤϴϠόΘϟ΍ Δτγ΍ϮΑ ΎϬΤΤμϧ Ϛϟάϟ ˬΔόϤΠϣ ήϴϏ ϥϮϜΗ ϥ΃ ΐΠϳ ΔΠϴΘϨϟ΍ ϭ ΔόϤΠϣ ΔΠϴΘϧ ϰϠϋ ϞμΤϧ
: ΔϴϟΎΘϟ΍ ΕΎϤϴϠόΘϟ΍ άϴϔϨΗ ΔΠϴΘϧ ϲϫ ΎϤϓ AL = 07 ϭ BL = 09 ϥ΃ νήϔΑ :ϝΎΜϣ
MUL BL
AAM
:ϞΤϟ΍
AX = 00 07
BX = 00 09
MUL 00 3F AX
AAM 06 03 AX
: ϲϫ AAD ΔϤϴϠόΗ ϲϓ ΢ϴΤμΘϟ΍ ΓΪϋΎϗ
ϊѧѧϴϤΠΗ ΐѧѧΠϳ Ϛϟάѧѧϟ ϭ ΔѧѧΌσΎΧ Ξ΋ΎѧѧΘϧ ϰѧѧϠϋ ϝϮѧѧμΤϟ΍ ϰѧѧϟ· ϱΩΆѧѧϳ ΔѧѧόϤΠϤϟ΍ ήѧѧϴϏ Ω΍ΪѧѧϋϷ΍ ϰѧѧϟ· ΔΒѧѧδϨϟΎΑ ϢϴѧѧδϘΘϟ΍ ϥ·
΢ϴΤѧμΘϟ΍ ΔѧϤϴϠόΗ ϖѧϴΒτΗ ΔѧΠϴΘϨϓ ( ΔѧόϤΠϣ ήѧϴϏ Ω΍Ϊѧϋ΃ ϲϫ ϭ ) AX = 0604h ϥ΃ νήϔΑ ϭ .ΎϬΘϤδϗ ϞΒϗ Ω΍ΪϋϷ΍
:ϲϫ ( ϢϴδϘΘϟ΍ ΔϴϠϤϋ ϞΒϗ ΎϬϘϴΒτΗ ϢΘϳ ϲΘϟ΍ ϭ ) AAD
AL = 06 x 10d + 04h = 64d = 40h
AH = 00h => AX = 0040h

ΔϴϘτϨϤϟ΍ ΕΎϤϴϠόΘϟ΍ - Ύ˱ΜϟΎΛ


:ΔϴϘτϨϤϟ΍ ΕΎϤϴϠόΘϟ΍ ϦϴΒϳ ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ ϭ .ΎϬΗϻϮΤΘϣ ϰϠϋ ΔϧΎΨΑ ΔϧΎΧ ΔϴϘτϨϤϟ΍ ΎϬΗΎϴϠϤϋ ΰΠϨΗ
ΔϟΰΘΨϤϟ΍ ΔϤϠϜϟ΍ ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍ ΓήΛ΄ΘϤϟ΍ ϡϼϋϷ΍
AND ϲϘτϨϤϟ΍ AND AND D,S S.D ĺ D ΔϟΎΤϟ΍ ϡϼϋ΃
OR ϲϘτϨϤϟ΍ OR OR D,S S+DĺD ΔϟΎΤϟ΍ ϡϼϋ΃
XOR ϲϘτϨϤϟ΍ XOR XOR D,S S+DĺD ΔϟΎΤϟ΍ ϡϼϋ΃
NOT ϲϘτϨϤϟ΍ NOT NOT D D ĺ D ΪΟϮϳ ϻ
ϲѧѧϓ ΔѧѧϨϴΒϣ XOR, OR, AND ΔѧѧϤϴϠόΗ ϞѧѧΟ΃ Ϧѧѧϣ ΔΣϮϤѧѧδϤϟ΍ ΕϻϮѧѧΤΘϤϟ΍ ϥ·
D S
:Ύ˱ΒϧΎΟ ϝϭΪΠϟ΍
Reg Reg
Reg Mem
Mem Reg
Reg Imm
Mem Imm
AX Imm
ΔΣ΍ίϹ΍ ΕΎϤϴϠόΗ - Ύ˱όΑ΍έ
ϝϭΪѧѧΠϟ΍ ϲѧѧϓ ΢ѧѧο΍ϭ Ϯѧѧϫ ΎѧѧϤϛ ΔϴѧѧοΎϳήϟ΍ ΔѧѧΣ΍ίϹ΍ ϭ ΔѧѧϴϘτϨϤϟ΍ ΔѧѧΣ΍ίϹ΍ ΎѧѧϤϫ ΔѧѧΣ΍ίϹ΍ ΕΎѧѧϤϴϠόΗ Ϧѧѧϣ ϥΎѧѧϋϮϧ ϙΎѧѧϨϫ
:ϲϟΎΘϟ΍

ΔϤϠϜϟ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍ ΓήΛ΄ΘϤϟ΍ ϡϼϋϷ΍
ΔϟΰΘΨϤϟ΍
ΔΣ΍ί· SAL/SHL D,count
ΔΣ΍ί·/ΔϴοΎϳέ OF,CF
SAL/SHL
ΎϤϫϼϛ ϭ ΔϴϘτϨϣ
έΎδϴϟ΍ ϮΤϧ CF 0

31- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ϊѧϴϤΟ ˯Ϟѧϣ ϭ count ΔѧϤϴϘϟ Ύ˱ϳϭΎѧδϣ ΕΎѧϧΎΨϟ΍ Ϧϣ ΍˱ΩΪϋ CF ϩΎΠΗΎΑ έΎδϴϟ΍ ϮΤϧ D ΕΎϳϮΘΤϣ ΔΣ΍ί· ϲϫ ΎϨϫ ΔϴϠϤόϟ΍
.έΎϔλ΄Α ΔϏήϔϤϟ΍ ϰϨϤϴϟ΍ ΕΎϧΎΨϟ΍
. OF = 1 ϥΈϓ ΔΣ΍ίϹ΍ ΔΠϴΘϧ ΓέΎηϹ΍ ΔϧΎΧ ΖϟΪΒΗ ΍Ϋ· : OF ϢϠϋ ϰϠϋ ΔϤϴϠόΘϟ΍ ϩάϫ ήϴΛ΄Θϟ ΔΒδϨϟΎΑ ϭ
ΔϤϠϜϟ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍ ΓήΛ΄ΘϤϟ΍ ϡϼϋϷ΍
ΔϟΰΘΨϤϟ΍
ΔϴϘτϨϣ ΔΣ΍ί· SHR D,count OF,CF
SHR
ϦϴϤϴϟ΍ ϮΤϧ
0 CF

ϊѧϴϤΟ ˯Ϟѧϣ ϭ count ΔѧϤϴϘϟ Ύ˱ϳϭΎѧδϣ ΕΎѧϧΎΨϟ΍ Ϧϣ ΍˱ΩΪϋ CF ϩΎΠΗΎΑ ϦϴϤϴϟ΍ ϮΤϧ D ΕΎϳϮΘΤϣ ΔΣ΍ί· ϲϫ ΎϨϫ ΔϴϠϤόϟ΍
.έΎϔλ΄Α ΔϏήϔϤϟ΍ ϯήδϴϟ΍ ΕΎϧΎΨϟ΍
OF = 1 ϥΈϓ ΔΣ΍ίϹ΍ ΔΠϴΘϧ ΓέΎηϹ΍ ΔϧΎΧ ΖϟΪΒΗ ΍Ϋ· : OF ϢϠόϟ΍ ϰϠϋ ΔϤϴϠόΘϟ΍ ϩάϫ ήϴΛ΄Θϟ ΔΒδϨϟΎΑ ϭ

ΔϤϠϜϟ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍ ΓήΛ΄ΘϤϟ΍ ϡϼϋϷ΍
ΔϟΰΘΨϤϟ΍
ΔϴοΎϳέ ΔΣ΍ί·
SAR SAR D,count ΔϟΎΤϟ΍ ϡϼϋ΃
ϦϴϤϴϟ΍ ϮΤϧ
CF

˯Ϟѧѧϣ ϭ count ΔѧѧϤϴϘϟ Ύ˱ϳϭΎѧѧδϣ Ε΍ήѧѧϤϟ΍ Ϧѧѧϣ ΍˱ΩΪѧѧϋ CF ϩΎѧѧΠΗΎΑ ϦϴѧѧϤϴϟ΍ ϮѧѧΤϧ D ΕΎѧѧϳϮΘΤϣ ΔѧѧΣ΍ί· ϲѧѧϫ ΎѧѧϨϫ ΔѧѧϴϠϤόϟ΍
.( ΔϧΎΧ ήΧ΁ ϭ΃ ΓέΎηϹ΍ ΔϧΎΧ ) MSB ΔϧΎΨϟ΍ ΔϤϴϘΑ ϯήδϴϟ΍ ΕΎϧΎΨϟ΍ ϊϴϤΟ ΕΎϧΎΨϟ΍
ΕΎѧѧϧΎΨϟ΍ Ϧѧѧϣ ΩΪѧѧόΑ ΔѧѧΣ΍ίϹ΍ ϞѧѧΟ΃ Ϧѧѧϣ ϦϴѧѧΘϤϴϠόΘϟ΍ ϦϴΗΎѧѧϫ ΎѧѧϨϘΒσ ΍Ϋ· : SHL, SAL ϦϴѧѧΘϤϴϠόΘϠϟ ΔΒѧѧδϨϟΎΑ :ΔѧѧψΣϼϣ
. 2 ΩΪόϟ΍ ΕΎϔϋΎπϣ Ϯϫ ϱάϟ΍ ϭ 2  ˰Α ϑΪϬϟ΍ ϝϮΤΘϣ Ώήο ϲϨόϳ ΍άϬϓ count = N
ϭ Γήѧϣ Ϟѧϛ LSB = 0 ϥϮѧϛ ΖѧΤΗ 2  ΩΪѧόϟ΍ ϰѧϠϋ ϑΪѧϬϟ΍ ϝϮѧΤΘϣ ϢϴѧδϘΗ ϲϨόΗ SHR ΔϤϴϠόΘϟ΍ ϥ· :ΔψΣϼϣ
. CF ϢϠόϟ΍ ϲϓ ωϮοϮϣ ϲϗΎΑ ΎϨϳΪϟ ϥϮϜϳ ΎϫΪϨόϓ LSB = 1 ΔϟΎ˰Σ ϲϓ
: ΔϴοΎϳήϟ΍ ΕΎϤϴϠόΘϟ΍ ϭ ΔΣ΍ίϹ΍ ΕΎϤϴϠόΗ Ύ˱ϣΪΨΘδϣ ΔϴϟΎΘϟ΍ ΔϴοΎϳήϟ΍ Δϗϼόϟ΍ ΏΎδΤΑ ϡϮϘϳ Ύ˱ΠϣΎϧήΑ ΐΘϛ΍ :ϝΎΜϣ
3.(AX) + 7.(BX) ĺ DX
MOV SI,AX ; copy AX into SI
SAL SI,1 ; 2 AX
ADD SI,AX ; 3 AX
MOV DX,BX ; copy BX into DX
MOV CL,03H ; load shift count
SAL DX,CL ; 8 BX
SUB DX,BX ; 7 BX
ADD DX,SI ; result
:ϲϫ ΔΣ΍ίϹ΍ ΕΎϤϴϠόΘϟ ΔΒδϨϟΎΑ ΔΣϮϤδϤϟ΍ ΕϻϮΤΘϤϟ΍ ϥ·
D Count
ΔѧѧѧϤϴϗ ϞѧѧѧϴϤΤΗ ΐѧѧѧΠϳ άѧѧѧ΋ΪϨόϓ ΪѧѧѧΣ΍Ϯϟ΍ ϱϭΎѧѧѧδϳ ϻ Count ΎϣΪѧѧѧϨϋ ϱ΃
Reg 1
Reg CL ΎϣΪѧѧѧϨϋ :ϱ΃ ΔѧѧѧΣ΍ίϹ΍ ΕΎѧѧѧϤϴϠόΗ ΔѧѧѧΑΎΘϛ ϢѧѧѧΛ CL ϞΠѧѧѧδϤϟ΍ ϲѧѧѧϓ count
Mem 1 : ΐΘϜϧ ϥ΃ ϦϜϤϴϓ ΪΣ΍Ϯϟ΍ ϱϭΎδϳ count
Mem CL SAL AX,1
: ΐΘϜϧ ϥ΃ ΐΠϳ <=   1 ΎϣΪϨϋ ϭ
32- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

MOV CL,count
SAL AX,CL
.Ύ˱όΒσ ΔΣ΍ίϹ΍ ϡϮϬϔϤΑ Δϗϼϋ ΎϬϟ βϴϟ ΔϴτϴΤϤϟ΍ α΍ϮϗϷ΍ ϭ [1,FF] ϝΎΠϤϟΎΑ ΓΩΪΤϣ count ΔϤϴϗ ϥ· ϭ ΍άϫ
ήϳϭΪΘϟ΍ ΕΎϤϴϠόΗ - Ύ˱δϣΎΧ
:ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ ϲϓ ΔϨϴΒϣ ϲϫ ϭ
ΔϤϠϜϟ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍ ΓήΛ΄ΘϤϟ΍ ϡϼϋϷ΍
ΔϟΰΘΨϤϟ΍
ROL ϦϴϤϴϟ΍ ϮΤϧ ήϳϭΪΗ ROL D,count OF,CF

CF

Ρ΍ΰѧѧΗ˵ ΔѧѧϧΎΧ Ϟѧѧϛ ϭ . count ΔѧѧϤϴϘϟ Ύ˱ϳϭΎѧѧδϣ Ε΍ήѧѧϤϟ΍ Ϧѧѧϣ ΍˱ΩΪѧѧϋ έΎѧѧδϴϟ΍ ϮѧѧΤϧ D ΕΎѧѧϳϮΘΤϣ ήϳϭΪѧѧΗ ϲѧѧϫ ΎѧѧϨϫ ΔѧѧϴϠϤόϟ΍
. CF ϲϓ ϭ LSB ΔϧΎΨϟ΍ ϲϓ ϊοϮΗ MSB ˰ϟ΍ ΝέΎΧ
.ΔϘΑΎδϟ΍ ΕΎϤϴϠόΘϟ΍ ϲϓ ΔθϗΎϨϤϟ΍ βϔϧ ϮϬϓ OF ϢϠόϟ΍ ϰϠϋ ΔϤϴϠόΘϟ΍ ϩάϫ ήϴΛ΄Θϟ ΔΒδϨϟΎΑ ϭ
ΔϤϠϜϟ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍ ΓήΛ΄ΘϤϟ΍ ϡϼϋϷ΍
ΔϟΰΘΨϤϟ΍
ϮΤϧ ήϳϭΪΗ
ROR ROR D,count OF,CF
έΎδϴϟ΍

CF

ΝέΎѧΧ Ρ΍ΰѧ˵Η ΔѧϧΎΧ Ϟѧϛ ϭ . count ΔѧϤϴϘϟ Ύ˱ϳϭΎδϣ Ε΍ήϤϟ΍ Ϧϣ ΍˱ΩΪϋ ϦϴϤϴϟ΍ ϮΤϧ D ΕΎϳϮΘΤϣ ήϳϭΪΗ ϲϫ ΎϨϫ ΔϴϠϤόϟ΍
. CF ϲϓ ϭ MSB ΔϧΎΨϟ΍ ϲϓ ϊοϮΗ LSB ˰ϟ΍
.ΔϘΑΎδϟ΍ ΕΎϤϴϠόΘϟ΍ ϲϓ ΔθϗΎϨϤϟ΍ βϔϧ ϮϬϓ OF ˰ϟ ΔΒδϨϟΎΑ ϭ
ΔϤϠϜϟ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍ ΓήΛ΄ΘϤϟ΍ ϡϼϋϷ΍
ΔϟΰΘΨϤϟ΍
ϮΤϧ ήϳϭΪΗ
RCL ˰ϟ΍ ήΒϋ έΎδϴϟ΍ RCL D,count OF,CF
CF

CF

ΔѧѧϧΎΨϟ΍ Ύѧѧϣ΃ LSB ΔѧѧϧΎΨϟ΍ ϲѧѧϓ ϊѧѧοϮϳ CF ˰ѧѧϟ ϲϠѧѧλϷ΍ ϯϮѧѧΘΤϤϟ΍ ϥ΃ ΍Ϊѧѧϋ Ύѧѧϣ ROL ΔѧѧϤϴϠόΘϟ ΔϬΑΎѧѧθϣ ΎѧѧϨϫ ΔѧѧϴϠϤόϟ΍
. CF ϲϓ ϊοϮΘϓ MSB ˰ϟ΍ ΝέΎΧ ΔΣ΍ΰϤϟ΍
.ΔϘΑΎδϟ΍ ΔθϗΎϨϤϟ΍ βϔϧ OF ˰ϟ ΔΒδϨϟΎΑ ϭ

ΔϤϠϜϟ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍ ΓήΛ΄ΘϤϟ΍ ϡϼϋϷ΍
ΔϟΰΘΨϤϟ΍

33- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ϦϴϤϴϟ΍ ϮΤϧ ήϳϭΪΗ


RCR RCR D,count OF,CF
CF ˰ϟ΍ ήΒϋ

CF
ΔѧѧϧΎΨϟ΍ Ύѧѧϣ΃ MSB ΔѧѧϧΎΨϟ΍ ϲѧѧϓ ϊѧѧοϮϳ CF ˰ѧѧϟ ϲϠѧѧλϷ΍ ϯϮѧѧΘΤϤϟ΍ ϥ΃ ΍Ϊѧѧϋ Ύѧѧϣ ROR ΔѧѧϤϴϠόΘϟ ΔϬΑΎѧѧθϣ ΎѧѧϨϫ ΔѧѧϴϠϤόϟ΍
. CF ϲϓ ϊοϮΘϓ LSB ˰ϟ΍ ΝέΎΧ ΔΣ΍ΰϤϟ΍
.ΔϘΑΎδϟ΍ ΔθϗΎϨϤϟ΍ βϔϧ OF ˰ϟ ΔΒδϨϟΎΑ ϭ
ϡϼϋϷ΍ ΕϼΠδϣ ΕΎϤϴϠόΗ - Ύ˱γΩΎγ
: ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ ϲϓ ΔϨϴΒϣ ϲϫ ϭ
ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
Flags ĺ AH
Ϧϣ AH ϞϴϤΤΗ ϡϼϋϷ΍ ϞΠδϣ Ϧϣ ϝϭϷ΍ ϒμϨϟ΍
LAHF LAHF ΪΟϮϳ ϻ
ϡϼϋϷ΍ ϞΠδϣ AH ϲϓ ϊοϮϳ
AH ΔϤϴϗ ϦϳΰΨΗ AH ĺ Flags
Ϧϣ ϝϭϷ΍ ϒμϨϟ΍ ϲϓ AH ϊοϮϳ ΔϟΎΤϟ΍ ϡϼϋ΃
SAHF ϞΠδϣ ϲϓ SAHF
OF ΍Ϊϋ
ϡϼϋϷ΍ ϡϼϋϷ΍ ϞΠδϣ
CLC CF ˰ϟ΍ ϒϴψϨΗ CLC 0 ĺ CF CF
STC CF ˰ϟ΍ ϊϴοϮΗ STC 1 ĺ CF CF
CMC
˰ϟ ϱΩΎΣ΃ ϢϤΘϣ CMC CF ĺ CF CF
CF
CLI IF ϒϴψϨΗ CLI 0 ĺ IF IF
STI IF ˰ϟ΍ ϊϴοϮΗ STI 1 ĺ IF IF

ΔϧέΎϘϤϟ΍ ΕΎϤϴϠόΗ - Ύ˱όΑΎγ


:ϲϟΎΘϟ΍ ϝϭΪΠϟΎΑ ΔΣϭήθϣ ϲϫ ϭ ΖΑ 16 ϭ΃ ΖΑ 8 ˰Α ϦϳΩΪϋ ΔϧέΎϘϤΑ CMP ΔϧέΎϘϤϟ΍ ΔϤϴϠόΗ ΢ϤδΗ
ΔϤϠϜϟ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍ ΓήΛ΄ΘϤϟ΍ ϡϼϋϷ΍
ΔϟΰΘΨϤϟ΍
D±S
CMP ϦϳΩΪϋ ΔϧέΎϘϣ CMP D,S
ϡϼϋϷ΍ ήΛ΄ΘΗ ΔϟΎΤϟ΍ ϡϼϋ΃
έΪѧμϤϟ΍ ΕΎѧϳϮΘΤϣ Ϧѧϣ ϼ ˱ ѧϛ ϰѧϘΒΗ ϱ΃ ) D ϑΪѧϬϟ΍ ϝϮѧΤΘϣ ϲѧϓ ΎϬΘΠϴΘϧ ϦϳΰΨΗ ϥϭΩ Ύ˱ϴϨϤο Ρήτϟ΍ ΔϴϠϤϋ ϱήΠΗ
ϭ΃ ϲѧϘτϨϣ ΪѧΣ΍ϭ ΔѧϤϴϗ άѧΧ΄Η ΔѧϟΎΤϟ΍ ϡϼѧϋ΃ ϞѧόΠϟ ΔѧϤϴϠόΘϟ΍ ϩάѧϫ ϞϤόΘѧδΗ ϭ ( ΎѧϬϟΎΣ ϰϠϋ D ϑΪϬϟ΍ ΕΎϳϮΘΤϣ ϭ S
:ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ ϲϓ ΔϨϴΒϣ ΔϤϴϠόΘϟ΍ ϩάϬϟ ΔΣϮϤδϤϟ΍ ΕϻϮΤΘϤϟ΍ ϥ· .ϲϘτϨϣ ήϔλ
D S
Reg Reg
Reg Mem
Mem
Reg
Reg
Imm
ΰϔϘϟ΍ ΕΎϤϴϠόΗ - Ύ˱ϨϣΎΛ
Mem Imm ϲѧѧѧϓ ΕΎѧѧѧϤϴϠόΘϟ΍ άѧѧѧϴϔϨΗ ϖѧѧѧϳήσ ϞϳΪѧѧѧόΗ ϲѧѧѧϫ ΰѧѧѧϔϘϟ΍ ΔѧѧѧϤϴϠόΗ Ϧѧѧѧϣ ΔѧѧѧϳΎϐϟ΍
Acc Imm ρϭήѧθϤϟ΍ ΰѧϔϘϟ΍ : ϲѧϫϭ ˬΰϔϘϟ΍ ΕΎϤϴϠόΗ Ϧϣ ϥΎϋϮϧ ϙΎϨϫ ϭ .ΞϣΎϧήΒϟ΍
ρϭήѧη ϱ΃ ΪѧΟϮϳ ϻ ρϭήѧθϤϟ΍ ήϴϏ ΰϔϘϟ΍ ϲϓ .ρϭήθϤϟ΍ ήϴϏ ΰϔϘϟ΍ ϭ
34- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ΰѧϔϘϟ΍ ΔѧϤϴϠόΗ άѧϴϔϨΗ ΔѧψΤϟ ϲѧϓ ΓΩϮѧΟϮϤϟ΍ Δϴσήѧθϟ΍ ΕϻΎѧΤϟ΍ ϥΈѧϓ ρϭήѧθϤϟ΍ ΰѧϔϘϟ΍ ϲѧϓ Ύѧϣ΃ ΰѧϔϘϟ΍ ΙϭΪѧΣ ϞΟ΃ Ϧϣ
άѧϴϔϨΘϟ΍ ϊΑΎѧΘ˵ϳ ϻ· ϭ ˬΰѧϔϘϟ΍ ϢΘѧϳ ϪѧϧΈϓ Δϴσήѧθϟ΍ ΕϻΎѧΤϟ΍ ϖѧϘΤΗ ϝΎѧΣ ϲѧϔϓ ˬϻ ϡ΃ ΰѧϔϘϟ΍ ΙΪΤϴγ ΍Ϋ· ΎϤϴϓ έ΍ήϘϟ΍ άΨΘΗ
.ΞϣΎϧήΒϟ΍ ϲϓ ΰϔϘϟ΍ ΔϤϴϠόΗ ϲϠΗ ϲΘϟ΍ ΔϤϴϠόΘϟΎΑ
ρϭήθϤϟ΍ ήϴϏ ΰϔϘϟ΍ ΔϤϴϠόΗ (
:ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ ϲϓ ΔΣϭήθϣ ϲϫ ϭ
ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
ϥ΍ϮϨόϟ΍ ϰϟ· ΰϔϘϟ΍
ήϴϏ ΰϔϗ
JMP JMP operand Δτγ΍ϮΑ ΩΪΤϤϟ΍ ΪΟϮϳ ϻ
ρϭήθϣ
operand ϝϮΤΘϤϟ΍
ΰѧϔϘϟ΍ Ϯѧϫ ϲϧΎѧΜϟ΍ ϭ ˬϲѧ΋ΰΠϟ΍ ϊѧτϘϤϟ΍ ϦϤѧο ΰϔϘϟΎѧΑ ϰϋΪѧϳ ϝϭϷ΍ ρϭήѧθϤϟ΍ ήѧϴϏ ΰϔϘϟ΍ Ϧϣ ϥΎϴγΎγ΃ ϥΎϋϮϧ ϙΎϨϫ
Ϧѧϣ ωϮѧϨϟ΍ ΍άѧϫ ϖѧϴϘΤΗ ϥ· ϭ ήѧΧ΁ ϊѧτϘϣ ϰѧϟ· Γήϔϴѧθϟ΍ ϊσΎѧϘϣ ΪѧΣ΃ Ϧѧϣ ΰѧϔϘϟ΍ Ϧѧϣ ΎϨ˵ϨϜ˶ Ϥ˴ ϳ˵ ϱ΃ Δϴ΋ΰΠϟ΍ ϊσΎϘϤϟ΍ ϦϴΑ
ϊѧτϘϤϟ΍ ϦϤѧο ΰѧϔϘϟ΍ Ύѧϣ΃ ˬ IP ΔѧϤϴϠόΘϟ΍ ήѧηΆϣ ϞΠѧδϣ ϭ CSϝ΍ ϊѧτϘϣ Ϧѧϣ Ϟѧϛ ΕΎϳϮΘΤϣ ϞϳΪόΗ ΎϨϣ ΐϠτΘϳ ΰϔϘϟ΍
.ςϘϓ IPϝ΍ ΔϤϴϗ ϞϳΪόΗ ΎϨϣ ΐϠτΘϳ ϪϧΈϓ ϲ΋ΰΠϟ΍
: ϲϫ ρϭήθϤϟ΍ ήϴϏ ΰϔϘϟ΍ ΔϤϴϠόΘϟ ΔΣϮϤδϤϟ΍ ΕϻϮΤΘϤϟ΍ ϥ·

Operand
ΓήϴμϘϟ΍ ΔΘϓϼϟ΍ ϝϮΤΘϣ
Short_Label
ΔΒϳήϘϟ΍ ΔΘϓϼϟ΍ ϝϮΤΘϣ
Near_Label ϊτϘϤϟ΍ ϦϤο ΰϔϘϠϟ
ΖΑ 16 ϱήϛ΍Ϋ ήηΆϣ ϝϮΤΘϣ
Memptr16 ϲ΋ΰΠϟ΍
ΖΑ 16 ϲϠΠδϣ ήηΆϣ ϝϮΤΘϣ
Regptr16 Δϴ΋ΰΠϟ΍ ϊσΎϘϤϟ΍ ϦϴΑ ΰϔϘϠϟ
ΓΪϴόΒϟ΍ ΔΘϓϼϟ΍ ϝϮΤΘϣ
Far_Labrl
ΖΑ 32 ϱήϛ΍Ϋ ήηΆϣ ϝϮΤΘϣ
Memptr32 ϲ΋ΰΠϟ΍ ϊτϘϤϟ΍ ϦϤο ΰϔϘϟ΍
ϲѧѧϓ ϼ
˵ ΜѧѧϤϓ ΎϬѧѧδϔϧ ΰѧѧϔϘϟ΍ ΔѧѧϤϴϠόΗ ϥ΍ϮѧѧϨόϟ ϲΒѧѧδϨϟ΍ ΰѧѧϔϘϟ΍ ΩΪѧѧΤΗ ΔѧѧΒϳήϘϟ΍ ΔѧѧΘϓϼϟ΍ ϭ ΓήϴѧѧμϘϟ΍ ΔѧѧΘϓϼϟ΍ ΕϻϮѧѧΤΘϣ ϥ· ( ΃
ΓέΎѧηϹ΍ Ε΍Ϋ (Disp) ΔѧΣ΍ίϹ΍ ΪѧϳΪΤΘϟ ϱέϮѧϓ ϝϮѧΤΘϤϛ ΖѧΑ 8 ϱΫ ΩΪόϟ΍ ήϴϔθΗ ϢΘϳ ΓήϴμϘϟ΍ ΔΘϓϼϟΎΑ ΰϔϘϟ΍ ΔϤϴϠόΗ
ϦΤѧη ΩΎѧόϳ ΰѧϔϘϟ΍ ΔѧϤϴϠόΗ άѧϔϨΗ ΎϣΪѧϨϋ ϭ ˬΰѧϔϘϟ΍ ΔѧϤϴϠόΗ ΓήΠΣ Ϧϣ ΎϫάϴϔϨΗ ϢΘϴγ ϲΘϟ΍ ΔϴϟΎ Θϟ΍ ΔϤϴϠόΘϟ΍ ϰϟ· ήϴθΗ ϲΘϟ΍
:ϲϠϳ ΎϤϛ ΔΤοϮϣ ΓΪϳΪΟ ΔϤϴϘΑ IPϝ΍
ϞѧόΠΑ ΎϫΪѧϳΪϤΗ ΪѧόΑ ΓέΎѧηϹ΍ Ε΍Ϋ ΔΣ΍ίϹ΍ έ΍ΪϘϣ + ( ΰϔϘϟ΍ ΔϤϴϠόΗ Γήϔϴη ϝϮσ + IP ΔϤϴϗ )] = ΓΪϳΪΠϟ΍ IP ΔϤϴϗ
[ ΖΑ 16 ϞϜθϟΎΑ ΕΎΘΑ 8 ϝϮΤΘϣ
.άϔϨΗ ϭ ΐϠΠΘγ ϲΘϟ΍ ΔϴϟΎΘϟ΍ ΔϤϴϠόΘϠϟ ϲ΋Ύϳΰϴϔϟ΍ ϥ΍ϮϨόϟ΍ ϲτόΗ ΔϴϟΎΤϟ΍ CS ΔϤϴϗ ϊϣ IP ˰ϟ ΓΪϳΪΠϟ΍ ΔϤϴϘϟ΍ ϥ·
:ϝΎΜϣ
ΎϨϳΪϟ ϦϜϴϟ
IP = 0112h
JMP disp ; disp = 0F2h
ϥ΍ϮѧϨόϟ΍ Ε΍Ϋ ΔѧϤϴϠόΘϟ΍ ϰѧϟ· ΰѧϔϘϟ΍ ϢΘϴѧγ ϥΫ· ˬ ( IP ϲѧϓ ϥΰѧΨϤϟ΍ ϥ΍ϮѧϨόϟ΍ ΖѧΤΗ ΩϮѧΟϮϣ ) ΰѧϔϘϟ΍ ΔϤϴϠόΗ ϥ΍ϮϨϋ ϥ·
:ϲϟΎΘϟ΍
address ϲѧϘτϨϤϟ΍ ϥ΍ϮѧϨόϟ΍ = IP + 2 + disp ( ΎϬΗέΎѧη· ΪѧϳΪϤΗ ΪѧόΑ ) = 0112 + 2 + FFF2 = 0106h ( ΎѧϨϠϤϫ΃
ϞϤΤϟ΍ ΔϧΎΧ)
ϱ΃ ΰѧϔϘϟ΍ ΔѧϤϴϠόΗ ϖΒѧδΗ ΔѧϤϴϠόΗ ϰѧϟ· ΰѧϔϘϧ ΎѧϨϧ΃ ϲѧϨόϳ ΍άѧϬϓ ΰѧϔϘϟ΍ ΔѧϤϴϠόΗ ϥ΍ϮѧϨϋ Ϧѧϣ ήϐѧλ΃ ΞΗΎѧϨϟ΍ ϥ΍ϮϨόϟ΍ ϥ΃ ΎϤΑ
. 0106 < 0112 ˯΍έϮ˰˰ϟ΍ ϮΤϧ ΰϔϘϟ΍
:ήΧ΁ ϝΎΜϣ
IP = 0112h
JMP 04
Address = 0112 + 2 + 0004 = 0118h
.ϡΎϣϷ΍ ϮΤϧ ΰϔϘϟ΍ ϥ΃ ϲϨόϳ ΍άϬϓ 0118 > 0112 ϥ΃ φΣϼϧ
35- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

. address ΔϤϴϘϟ CSϝ΍ έ΍ΪϘϣ ΔϓΎο· ΐΠϳ ϲ΋Ύϳΰϴϔϟ΍ ϥ΍ϮϨόϟ΍ ϰϠϋ ϝϮμΤϠϟ ϭ
ϭ +129 ϰѧѧϟ· -126 Ϧѧϣ ϝΎѧΠϤϟ΍ ϲѧϓ ΰϔϘϟΎѧѧΑ ΢Ϥѧδϳ ϮѧϬϓ ΕΎѧΘΑ 8 ϭΫ ΓήϴѧѧμϘϟ΍ ΔѧΘϓϼϟ΍ ϝϮѧΤΘϣ ϥ΃ ΎѧϤΑ :ΔѧψΣϼϣ
+127 ϰѧѧϟ· -128 Ϧѧѧϣ ϲϟΎѧѧΘϟ΍ ϝΎѧѧΠϤϟ΍ ϰѧѧϟ· ΖѧѧϳΎΑ 2 Ϯѧѧϫ ϭ ΰѧѧϔϘϟ΍ ΔѧѧϤϴϠόΗ Γήϔϴѧѧη ϝϮѧѧσ ΎϨϔѧѧο΃ ΍Ϋ· Ϫѧѧϧ΃ ϚѧѧϟΫ ΐΒѧѧγ
ΰϔϘϟΎѧΑ ΢Ϥѧδϳ Ϛϟάѧϟ ϭ ΖѧΑ 16 ϭΫ ϱέϮѧϓ ϝϮѧΤΘϣ ϮѧϬϓ ΔѧΒϳήϘϟ΍ ΔѧΘϓϼϟ΍ ϝϮΤΘϣ Ύϣ΃ .ϖΑΎδϟ΍ ϝΎΠϤϟ΍ ϰϠϋ ϞμΤϨγ
.ΰϔϘϟ΍ ΔϤϴϠόΗ ϥ΍ϮϨϋ Ϧϣ ϡΎϣϷ΍ ϮΤϧ ϭ΃ ϒϠΨϟ΍ ϮΤϧ 32KB ϱϭΎδϳ ϝΎΠϣ ϦϤο
:ϝΎΜϣ
JMP label
ΖѧΑ 16 ΔѧΣ΍ίϹ΍ ) ϝϮѧΤΘϤϟ΍ ΍άѧϫ ΔϓΎѧο· ϢΘѧΗ ΚѧϴΣ label ϝϮΤΘϤϠϟ ΔϠΑΎϘϣ ΞϣΎϧήΒϟ΍ ϲϓ ΔτϘϧ ϰϟ· ΰϔϘϟ΍ ϲϨόϳ ΍άϫ
. άϔϨΘγ ϲΘϟ΍ ΔϤϴϠόΘϠϟ ϲ΋Ύϳΰϴϔϟ΍ ϥ΍ϮϨόϟ΍ ϲτόΗ CS ϲϓ ΔϴϟΎΤϟ΍ ΔϤϴϘϟ΍ ϭ IP ˰ϟ ΓΪϳΪΠϟ΍ ΔϤϴϘϟ΍ ϭ IPϝ΍ ΔϤϴϗ ϰϟ· (
ϱ΃ ϞΠѧδϣ ΕΎѧϳϮΘΤϣ ϭ΃ Γήѧϛ΍Ϋ ΓήѧΠΣ ΕΎѧϳϮΘΤϣ Δτѧγ΍ϮΑ ήѧηΎΒϣ ήѧϴϏ ϞϜθΑ ϥ΍ϮϨϋ ϰϟ· ΰϔϘϟ΍ ΪϳΪΤΗ ϦϜϤϳ (Ώ
ϝΎѧΠϣ ϦϤѧο ΰѧϔϘϟ΍ ϢΘѧϳ Ύ˱ѧπϳ΃ ΎѧϨϫ ϭ ΖѧΑ 16 ϲϠΠδϣ ήηΆϣ ϝϮΤΘϣ ϭ΃ ΖΑ 16 ϱήϛ΍Ϋ ήηΆϣ ϝϮΤΘϣ ϡ΍ΪΨΘγΎΑ
. € 32 …
:ϝΎΜϣ
JMP BX
IP ϲѧϓ ΎѧϬϠϴϤΤΗ ϢΘѧϳ BX ΔѧϤϴϗ ϥ΃ ϲѧϨόϳ ΍άѧϫ ϭ ΔΣ΍ίϹ΍ ϞΟ΃ Ϧϣ BX ϞΠδϤϟ΍ ϥϮϤπϣ ϞϤόΘδ˵ϳ ΔϤϴϠόΘϟ΍ ϩάϫ ϲϓ
ΓΪѧϳΪΠϟ΍ ΔѧϤϴϘϟ΍ ϭ CS ˰ѧϟ ΔѧϴϟΎΤϟ΍ ΕΎѧϳϮΘΤϤϟ΍ ϝΎϤόΘγΎΑ ΎϬϴϟ· ΰϔϘϟ΍ ϢΘϴγ ϲΘϟ΍ ΔϤϴϠόΘϠϟ ϲ΋Ύϳΰϴϔϟ΍ ϥ΍ϮϨόϟ΍ ΐδΤϳ ϢΛ
. IP ˰ϟ
: ϥ΃ νήϔΑ
BX = 0200h ΎϬϴϟ· ΰϔϘϟ΍ ϢΘϴγ ϲΘϟ΍ ΔϤϴϠόΘϠϟ ϲ΋Ύϳΰϴϔϟ΍ ϥ΍ϮϨόϟ΍
CS = 0100h
PA = ( CS x 10h ) + BX = 01000 + 0200 = 01200h
JMP ϼ ˱ ΜѧϤϓ ϱήѧϛ΍Ϋ ήѧηΆϤϛ ϞϤόΘѧδϤϟ΍ ϝϮѧΤΘϤϟ΍ ΪѧϳΪΤΘϟ ΔϧϮϨόϟ΍ ΔϤψϧ΃ ω΍Ϯϧ΃ ϒϠΘΨϣ ϡ΍ΪΨΘγ΍ ϦϜϤϳ : ΔψΣϼϣ
΍άѧѧϫ ˬϝΎѧѧόϔϟ΍ ϥ΍ϮѧѧϨόϟ΍ ϰѧѧϠϋ ϱϮѧѧΘΤΗ ϲѧѧΘϟ΍ Γήϛ΍άѧϟ΍ ΓήѧѧΠΣ ϥ΍ϮѧѧϨόϛ SI ΕΎѧѧϳϮΘΤϣ ϞϤόΘѧѧδΗ ΔѧѧϤϴϠόΘϟ΍ ϩάѧѧϫ ϲѧϔϓ [SI]
ϲѧΘϟ΍ ΔѧϤϴϠόΘϠϟ ϲ΋Ύѧϳΰϴϔϟ΍ ϥ΍ϮѧϨόϟ΍ ΏΎѧδΤϟ ΔѧϴϟΎΤϟ΍ CS ΕΎѧϳϮΘΤϣ ϊѧϣ ϞϤόΘѧδ˵ϳ ϱάѧϟ΍ ϭ IP ϲϓ ϪϠϴϤΤΗ ϢΘϳ ϥ΍ϮϨόϟ΍
. DI, SI, BX: ΔϴϟΎΘϟ΍ ΕϼΠδϤϟ΍ ϡΪΨΘδΗ ΔϟΎΤϟ΍ ϩάϫ ϲϓ ΓΩΎϋ ϭ ΎϬϴϟ· ΰϔ Ϙϟ΍ ϢΘϴγ
Δϴ΋ΰΠϟ΍ ϊτϘϤϟ΍ ΝέΎΧ ΰϔϘϟ΍ ϭ΃ Δϴ΋ΰΠϟ΍ ϊσΎϘϤϟ΍ ϦϴΑ ΰϔϘϟ΍
ΖѧΑ 16 ˰ѧϟ΍ ϞѧϴϤΤΗ ϢΘѧϳ ΚѧϴΣ .Ύѧϣ ϥ΍ϮѧϨϋ ϰѧϟ· ΰѧϔϘϟ΍ ΪѧϳΪΤΘϟ ΖѧΑ 32 ΍Ϋ Ύ˱ѧϳέϮϓ ϻ
˱ ϮѧΤΘϣ ΓΪϴόΒϟ΍ ΔΘϓϼϟ΍ Ϟ˶ϤόΘδ˴Η (΃
ΔѧϴϧΎΜϟ΍ ΖѧΑ 16 ˰ѧϟ΍ Ύѧϣ΃ CS ϞΠѧδϤϟ΍ ΕΎϳϮΘΤϤϟ ΔΒδϧ ϝΎόϔϟ΍ ϥ΍ϮϨόϟ΍ ϲϫ ϥϮϜΗ ϭ IP ϲϓ ϝϮΤΘϤϟ΍ ΍άϫ Ϧϣ ϰϟϭϷ΍
.ΪϳΪΠϟ΍ Γήϔϴθϟ΍ ϊτϘϣ ΩΪΤΗ ϲΘϟ΍ ϭ CS ϞΠδϤϟ΍ ϲϓ ΎϬϠϴϤΤΗ ϢΘϴϓ
:ϝΎΜϣ
JMP farlabel
.( CS ˰ϟ΍ ϲϓ ϦΤθΗ ΔϴϧΎΜϟ΍ ΔϤϠϜϟ΍ ϭ IP ϲϓ ϦΤθΗ ϝϭϷ΍ ΔϤϠϜϟ΍ ) ΖΑ 32 ˰Α ϝϮΤΘϣ Ϯϫ farlabel ΚϴΣ
ϊσΎѧѧϘϤϟ΍ ϦϴѧѧΑ ΰѧѧϔϘϟ΍ ϞѧѧΟ΃ Ϧѧѧϣ Γήϔϴѧѧθϟ΍ ϊѧѧτϘϣ ϥ΍ϮѧѧϨϋ ϭ ϝΎѧѧόϔϟ΍ ϥ΍ϮѧѧϨόϟ΍ ΪѧѧϳΪΤΘϟ ΓήѧѧηΎΒϤϟ΍ ήѧѧϴϏ ΔѧѧϘϳήτϟ΍ ϥ· (Ώ
ΔѧόΑΎΘΘϣ Γήϛ΍άѧϟ΍ Ϧѧϣ ΕΎѧΘϳΎΑ ϊѧΑέ΃ ϥΈϓ ΔϟΎΤϟ΍ ϩάϫ ϲϓ ϭ .ΖΑ 32 ˰Α ϱήϛ΍Ϋ ήηΆϣ ϝϮΤΘϣ ϝΎϤόΘγΎΑ ϲϫ Δϴ΋ΰΠϟ΍
ΎѧϨϫ ϭ .ΐѧϴΗήΘϟ΍ ϰѧϠϋ ΪѧϳΪΠϟ΍ Γήϔϴѧθϟ΍ ϊѧτϘϣ ϥ΍ϮѧϨϋ ϭ ϝΎѧόϔϟ΍ ϥ΍ϮѧϨόϟ΍ ϰѧϠϋ ϱϮѧΘΤΗ ΩΪΤϤϟ΍ ϥ΍ϮϨόϟ΍ Ϧϣ ΍˱έΎΒΘϋ΍
:ϝΎΜϣ ˬΔϔϠΘΨϤϟ΍ ΔϧϮϨόϟ΍ ΔϤψϧ΃ ω΍Ϯϧ΃ Ϧϣ ωϮϧ ϱ΃ ϡ΍ΪΨΘγ΍ ϦϜϤϳ Ύ˱πϳ΃
ϦϤѧπΘΗ ϲѧΘϟ΍ Γήϛ΍άѧϟ΍ ΓήѧΠΣ ϥ΍ϮѧϨϋ ΏΎѧδΤϟ DS, DI ΕΎѧϳϮΘΤϣ ϞϤόΘѧδ˵Η ΔϤϴϠόΘϟ΍ ϩάϫ ϲϔϓ JMP farseg [DI]
: ϥΎϛ ΍ΫΈϓ ˬΎϬϴϟ· ΰϔϘϟ΍ ϢΘϴγ ϲΘϟ΍ ΓήΠΤϟ΍ ϑ͋ήό˵ϳ ϱάϟ΍ ήηΆϤϠϟ ϰϟϭϷ΍ ΔϤϠϜϟ΍
: Ϯϫ ήηΆϤϠϟ ϲ΋Ύϳΰϴϔϟ΍ ϥ΍ϮϨόϟ΍ ϥ· DI = 0200h
PA = DS x 10h + DI = 01000 + 0200 = 01200h DS = 0100h
:ϲϟΎΘϟ΍ ϞϜθϟ΍ ϲϓ ΢ο΍ϭ Ϯϫ ΎϤϛ ΎϬϴϠΗ ϲΘϟ΍ Ε΍ήΠΤϟ΍ ϭ ΓήΠΤϟ΍ ϩάϫ ΕΎϳϮΘΤϣ ϦϜΘϟ ϭ
Address ( h ) Content IP = 3010h ϲϫ ΓΪϳΪΠϟ΍ IP ΔϤϴϗ
01200 10 CS = 0400h ϲϫ ΓΪϳΪΠϟ΍ CS ΔϤϴϗ

36- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ΰѧѧϔϘϟ΍ ϢΘϴѧѧγ ϲѧѧΘϟ΍ ΔѧѧϤϴϠόΘϠϟ ϲ΋Ύѧѧϳΰϴϔϟ΍ ϥ΍ϮѧѧϨόϟ΍ ϥΫ·


01201 30
:Ϯϫ ΎϬϴϟ·
01202 00 PA = CS x 10h + IP = 07010h
01203 04
ρϭήθϤϟ΍ ΰϔϘϟ΍ ΔϤϴϠόΗ (2
:ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ ϲϓ ΔΣϭήθϣ ϲϫ ϭ
ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
ΰϔϗ ϥ΍ϮϨόϟ΍ ϰϟ· ΰϔϘϟ΍ ϢΘϳ ϪϧΈϓ cc ρήθϟ΍ ϖϘΤΗ ΍Ϋ·
Jcc ϭήθϣ Jcc ϝϮΤΘϣ ΔϤϴϠόΘϟ΍ άϴϔϨΗ ϢΘϴϓ ϻ· ϭ ϝϮΤΘϤϟ΍ Δτγ΍ϮΑ ΩΪΤϤϟ΍ ΪΟϮϳ ϻ
ρ ΰϔϘϟ΍ ΔϤϴϠόΘϟ ΔϴϟΎΘϟ΍
:ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ ϲϓ ΔΣϭήθϣ ϲϫ ϭ ρϭήθϤϟ΍ ΰϔϘϟ΍ ΕΎϤϴϠόΗ Ϧϣ 18 ϙΎϨϫ
ΔѧѧѧѧѧѧѧѧѧѧѧѧѧѧѧѧѧѧϤϠϜϟ΍
ϰϨόϤϟ΍
ΔϟΰΘΨϤϟ΍
JC CF = 1 ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JNC CF = 0 ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JO OF = 1 ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JNO OF = 0 ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JS SF = 1 ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JNS SF = 0 ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JCXZ CX = 0000 ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JE/JZ ήϔμϟ΍ ϱϭΎδϳ ΞΗΎϨϟ΍ ϥΎϛ ΍Ϋ· ϭ΃ /ϱϭΎδΘϟ΍ ΔϟΎΣ ϲϓ ΰϔϘϟ΍
JGE/JNL ήϐλ΃ ϦϜϳ Ϣϟ ΍Ϋ· ΰϔϘϟ΍/ϱϭΎδϳ ϭ΃ ήΒϛ΃ ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JA/JNBE ϱϭΎδϳ ϭ΃ ΖΤΗ ϦϜϳ Ϣϟ ΍Ϋ· ΰϔϘϟ΍/ϕϮϓ ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JAE/JNB ΖΤΗ ϦϜϳ Ϣϟ ΍Ϋ· ΰϔϘϟ΍/ϱϭΎδϳ ϭ΃ ϕϮϓ ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JB/JNAE ϱϭΎδϳ ϭ΃ ϕϮϓ ϦϜϳ Ϣϟ ΍Ϋ· ΰϔϘϟ΍/ΖΤΗ ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JBE/JNA ϕϮϓ ϦϜϳ Ϣϟ ΍Ϋ· ΰϔϘϟ΍/ϱϭΎδϳ ϭ΃ ΖΤΗ ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JG/JNLE ϱϭΎδϳ ϭ΃ ήϐλ΃ ϦϜϳ Ϣϟ ΍Ϋ· ΰϔϘϟ΍/ήΒϛ΃ ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JLE/JNG ήΒϛ΃ ϦϜϳ Ϣϟ ΍Ϋ· ΰϔϘϟ΍/ϱϭΎδϳ ϭ΃ ήϐλ΃ ϥΎϛ ΍Ϋ· ΰϔϘϟ΍
JNE/JNZ Δϳήϔλ ήϴϏ ΔϤϴϗ ϱϭΎδϳ ΞΗΎϨϟ΍ ϥΎϛ ΍Ϋ· ΰϔϘϟ΍ /ϱϭΎδϳ ϦϜϳ Ϣϟ ΍Ϋ· ΰϔϘϟ΍
JNB/JBO PF = 0 ϥΎϛ ΍Ϋ· ΰϔϘϟ΍/ΓΩϮΟϮϣ ήϴϏ Parity ΔϧΎΧ ΖϧΎϛ ΍Ϋ· ΰϔϘϟ΍
JP/JPE PF = 1 ϥΎϛ ΍Ϋ· ΰϔϘϟ΍/Parity ΔϧΎΧ ΩϮΟϭ ΔϟΎΣ ϲϓ ΰϔϘϟ΍
:ΔψΣϼϣ
βѧѧϔϧ ΎѧϤϬϧ΃ ϭΪѧΒϳ ϦϴѧѧϔϠΘΨϣ ϦϴϤѧγ΍ ϙΎѧϨϫ ϥΈѧѧϓ ΓέΎѧη· ϥϭΪѧΑ Ω΍ΪѧѧϋϷ΍ ϭ ΓέΎѧηϹ΍ Ε΍Ϋ Ω΍ΪѧϋϷ΍ ΔѧѧϧέΎϘϣ ϦϴѧΑ ΰѧϴϴϤΘϠϟ
) ήϐѧλ΃ ϭ ˬΓέΎѧη· ϥϭΪѧΑ Ω΍ΪѧϋϷ΍ ΔѧϧέΎϘϣ ϞѧΟ΃ Ϧѧϣ ( B ) ΖѧΤΗ ϭ ( A ) ϕϮѧϓ ΎϤϫ ϭ ΰϔϘϟ΍ ΕΎϤϴϠόΗ ϲϓ ˯ϲθϟ΍
΍Ϋ· 1234h ΩΪѧѧόϟ΍ ϕϮѧѧϓ Ϯѧѧϫ ABCDh ΩΪѧѧόϟ΍ ϼ ˱ ΜѧѧϤϓ .ΓέΎѧѧηϹ΍ Ε΍Ϋ Ω΍ΪѧѧϋϷ΍ ΔѧѧϧέΎϘϣ ϞѧѧΟ΃ Ϧѧѧϣ ( G ) ήѧѧΒϛ΃ ϭ ( L
ΩΪѧѧϋ Ϯѧѧϫ 1234h ϭ ΐϟΎѧγ ΩΪѧѧϋ Ϯѧѧϫ ABCDh ϥΈѧϓ ΓέΎѧѧηΈΑ ΎѧϤϫΎϧήΒΘϋ΍ ΍Ϋ· Ύѧѧϣ΃ .ΓέΎѧѧη· ϥϭΪѧΑ ϦϳΩΪѧѧϋ ΎѧϤϫΎϧήΒΘϋ΍
.1234h Ϧϣ ήϐλ΃ Ϯϫ ABCDh Ϛϟάϟ ϭ ΐΟϮϣ

37- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

   Δϴϋήϔϟ΍ Ξϣ΍ήΒϟ΍


ΰѧѧΠϨϳ ϥ΃ ϲѧѧδϴ΋ήϟ΍ ΞϣΎѧѧϧήΒϟ΍ ϰѧѧϠϋ ΐѧѧΟϭ ϰѧѧΘϣ .ϲѧѧδϴ΋ήϟ΍ ΞϣΎѧѧϧήΒϟ΍ Ϧѧѧϋ ϞϘΘѧѧδϣ ϞϜѧѧθΑ ΔѧѧΑϮΘϜϣ Ε΍˯΍ήѧѧΟ· ϲѧѧϫ
ϥ΃ ΐѧΠϳ ΍άѧϫ ϞѧΟ΃ Ϧѧϣ ϭ ϞѧϤόϟ΍ ϰѧϟ· ϲϋήϔϟ΍ ΞϣΎϧήΒϟ΍ ϲϋΪΘδϳ ϪϧΈϓ ϲϋήϔϟ΍ ΞϣΎϧήΒϟ΍ Δτγ΍ϮΑ ΓΩΪΤϤϟ΍ ΔϔϴχϮϟ΍
ΞϣΎѧѧϧήΒϟ΍ άѧѧϴϔϨΗ ήϤΘѧѧδϳ ΚѧѧϴΣ ˬϲѧѧϋήϔϟ΍ ΞϣΎѧѧϧήΒϟ΍ ϲѧѧϓ Δѧѧϳ΍ΪΒϟ΍ ΔѧѧτϘϧ ϰѧѧϟ· ϲѧѧδϴ΋ήϟ΍ ΞϣΎѧѧϧήΒϟ΍ Ϧѧѧϣ ϢϜΤΘѧѧϟ΍ ϝϮѧѧΤΘϳ
ΞϣΎѧѧϧήΒϟ΍ Γ΍ΩΎѧѧϨϣ ΔѧѧϤϴϠόΘϟ ΔѧѧϴϟΎΘϟ΍ ΔѧѧϤϴϠόΘϟΎΑ ϲѧѧδϴ΋ήϟ΍ ΞϣΎѧѧϧήΒϟ΍ ϰѧѧϟ· ϢϜΤΘѧѧϟ΍ ΩϮѧѧόϳ άѧѧϴϔϨΘϟ΍ ϝΎѧѧϤΘϛ΍ ΪѧѧϨϋ ϭ ˬϲѧѧϋήϔϟ΍
:ϲϋήϔϟ΍
subroutine Main program

2
1

CALL SUB
6
7

3 5

4 CALL SUB

8
9

RETURN

:ΔψΣϼϣ
ϰѧѧϟ· ςѧϘϓ ΍˱ΰѧϔϗ ΞΘѧϨΗ ϻ ϲѧϋήϔϟ΍ ΞϣΎѧϧήΒϟ΍ Γ΍ΩΎѧϨϣ ϥ΃ Ϯѧѧϫ ΰѧϔϘϟ΍ ϭ ϲѧϋήϔϟ΍ ΞϣΎѧϧήΒϟ΍ Γ΍ΩΎѧϨϤϟ ϞѧϤόϟ΍ ϦϴѧΑ ϕήѧϔϟ΍ ϥ·
CS ϭ IP ϞѧΜϣ ΕΎѧϣϮϠόϤϟ΍ φѧϔΣ ϞѧΟ΃ Ϧѧϣ ΔѧϴϨϘΗ ϚϠϤΗ Ύ˱πϳ΃ ΎϬϨϜϟ ϭ ΞϣΎϧήΒϟ΍ ϦϳΰΨΗ Γήϛ΍Ϋ ϲϓ ΐγΎϨϤϟ΍ ϥ΍ϮϨόϟ΍
.ϲδϴ΋ήϟ΍ ΞϣΎϧήΒϟ΍ ϰϟ· ΓΩϮόϠϟ ΔΑϮϠτϣ ϥϮϜΗ ϲΘϟ΍
x όϟ΍ ϭ x΍ ΎϨϤϟ΍ ΕΎϤϴϠόΗ
ϰѧѧϟ· ϢϜΤΘѧϟ΍ ΓΩΎѧ ϋ· ϭ ϞѧϤόϟ΍ ϰѧϟ· ϲѧѧϋήϔϟ΍ ΞϣΎѧϧήΒϟ΍ ˯ΎϋΪΘѧγ΍ ϞѧѧΟ΃ Ϧѧϣ ΔѧѧϴϨϘΗ ϥ΍Ωϭΰѧ˵Η Ύ˱ѧόϣ ϦϴѧѧΘϤϴϠόΘϟ΍ ϦϴΗΎѧϫ ϼ
˱ ѧϛ
:ϝϭΪΠϟ΍ ϲϓ ΔΣϭήθϣ Γ΍ΩΎϨϤϟ΍ ΔϤϴϠόΗ ϥ· .ϩάϴϔϨΗ ΔόΑΎΘϤϟ ϲγΎγϷ΍ ΞϣΎϧήΒϟ΍
ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
Ϧϣ ϲϋήϔϟ΍ ΞϣΎϧήΒϟ΍ ϲϓ άϴϔϨΘϟ΍ ϊΑΎΘ˵ϳ
Γ΍ΩΎϨϣ ϝϮΤΘϤϟ΍ Δτγ΍ϮΑ ΩΪΤϤϟ΍ ϥ΍ϮϨόϟ΍
CALL ΞϣΎϧήΑ CALL operand .Γ΍ΩΎϨϤϟ΍ ΔϤϴϠόΗ ϲϓ ΩϮΟϮϤϟ΍ operand ΪΟϮϳ ϻ
ϲϋήϓ ΓΩϮόϟ΍ ϞΟ΃ Ϧϣ ΔΑϮϠτϤϟ΍ ΕΎϣϮϠόϤϟ΍ ϭ
αΪϜϤϟ΍ ϲϓ φϔΤ˵Η CS ϭ IP ϞΜϣ
:ϲϫ ϭ Γ΍ΩΎϨϤϟ΍ ΔϤϴϠόΗ ϊϣ ΎϬϣ΍ΪΨΘγΎΑ ΡϮϤδϤϟ΍ ΕϻϮΤΘϤϠϟ ω΍Ϯϧ΃ 5 ϙΎϨϫ
OPERAND
Near_pro
ϊτϘϤϟ΍ ϦϤο Γ΍ΩΎϨϤϠϟ
Memptr16
ϲ΋ΰΠϟ΍
Regptr16
Far_proc ϊτϘϤϟ΍ ΝέΎΧ Γ΍ΩΎϨϤϠϟ
Memptr32 ϲ΋ΰΠϟ΍
38- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ΞϣΎѧѧϧήΒϟ΍ ϱ΃ ) ϲѧѧϋήϔϟ΍ ΞϣΎѧѧϧήΒϠϟ ϲѧѧ΋ΰΠϟ΍ ϊѧѧτϘϤϟ΍ ϦϤѧѧο Γ΍ΩΎѧѧϨϤϠϟ ΔѧѧμμΨϣ ϰѧѧϟϭϷ΍ ΔѧѧΛϼΜϟ΍ ΕϻϮѧѧΤΘϤϟ΍ ϥ·
φѧѧϔΣ ΐΒѧѧδϳ Γ΍ΩΎѧѧϨϤϟ΍ ΔѧѧϤϴϠόΗ άѧѧϴϔϨΗ ϥ΃ ΚѧѧϴΣ ( Γήϔϴѧѧθϟ΍ ϊѧѧτϘϣ βѧѧϔϧ ϲѧѧϓ ϥΎѧѧόϘϳ ϲѧѧϋήϔϟ΍ ΞϣΎѧѧϧήΒϟ΍ ϭ ϲѧѧδϴ΋ήϟ΍
κϘϨѧѧϳ άѧѧ΋ΪϨϋ ϭ .ϲѧѧϋήϔϟ΍ ΞϣΎѧѧϧήΒϟ΍ ϊѧѧϣ Ϣ΋ϼΘѧѧΘϟ Ύ˱ѧ ϴϟ΁ IP ΔѧѧϤϴϗ ϞϳΪѧѧόΗ ϢΘѧѧϳ ϑϮѧѧγ ϪѧѧϧϷ αΪѧѧϜϤϟ΍ ϲѧѧϓ IP ΕΎѧѧϳϮΘΤϣ
ΔѧϤϴϠόΗ ϲѧϠΗ ϲѧΘϟ΍ ΔѧϤϴϠόΘϟ΍ ϥ΍ϮѧϨϋ ϲѧϫ αΪѧϜϤϟ΍ ϦϤѧο IP ϲѧϓ ΔѧχϮϔΤϤϟ΍ ΔѧϤϴϘϟ΍ ϥ· ˬ 2 έ΍ΪѧϘϤΑ αΪѧϜϤϟ΍ ήηΆϣ
.Γ΍ΩΎϨϤϟ΍
IP ϦΤѧη ϢΘѧϳ ( ϲѧϋήϔϟ΍ ΞϣΎѧϧήΒϟ΍ άѧϴϔϨΗ ΪѧόΑ Ϫϴϟ· ΩϮόϨγ ϱάϟ΍ ϥ΍ϮϨόϟ΍ φϔΣ ϱ΃ ) αΪϜϤϟ΍ ϲϓ IP ΔϤϴϗ ϊοϭ ΪόΑ
ϲѧϋήϔϟ΍ ΞϣΎѧϧήΒϟ΍ ΕΎѧϤϴϠόΗ Ϧѧϣ ϰѧϟϭϷ΍ ΔѧϤϴϠόΘϟ΍ ϥ΍ϮϨϋ ϰϟ· ήϴθΗ ΔϤϴϘϟ΍ ϩάϫ ΖΑ 16 Ε΍Ϋ ΓΪϳΪΟ ΔϤϴϘΑ ϭ ϥ΍ϮϨόΑ
ϰѧѧϠϋ ΔѧѧϠΜϣ΄ϛ ϲϟΎѧѧΘϟ΍ ϞϜѧѧθϟ΍ ϰѧѧϠϋ ϲѧѧ΋ΰΠϟ΍ ϊѧѧτϘϤϟ΍ ϦϤѧѧο Γ΍ΩΎѧѧϨϤϟ΍ ΔѧѧϤϴϠόΗ ήѧѧϛΫ ϦѧѧϜϤϳ ϭ ˬΓήϛ΍άѧѧϟ΍ ϲѧѧϓ ΔѧѧϧΰΨϤϟ΍
:ΐϴΗήΘϟ΍ ϰϠϋ ϭ ϖΑΎδϟ΍ ϝϭΪΠϟ΍ Ε΍ϮΤΘϣ
CALL near_proc
CALL [SI]
CALL BX
ϲѧϓ ϦѧϤϜϳ ϥ΄ѧΑ ϲѧϋήϔϟ΍ ΞϣΎѧϧήΒϠϟ ΢Ϥѧδϳ ϮѧϬϓ ( ϲ΋ΰΠϟ΍ ϊτϘϤϟ΍ ΝέΎΧ Γ΍ΩΎϨϤϟ΍ ) Γ΍ΩΎϨϤϟ΍ ΔϤϴϠόΘϟ ήΧϵ΍ ωϮϨϟ΍ Ύϣ΃
ϲѧѧϓ ΢ѧο΍ϭ Ϯѧϫ ΎѧϤϛ Memptr32 ˬ Far_pro ΔѧѧϴϟΎΘϟ΍ ΕϻϮѧΤΘϤϟ΍ ϡΪΨΘѧδΗ ΔѧϟΎΤϟ΍ ϩάѧѧϫ ϲѧϓ ϭ ˬήѧΧ΁ Γήϔϴѧη ϊѧτϘϣ
ΎѧΘϠϛ ϲѧϓ . CS ˰ѧϟ ΪѧϳΪΠϟ΍ ϊѧτϘϤϟ΍ ϥ΍ϮѧϨϋ ϭ IP ˰ѧϟ ΪѧϳΪΠϟ΍ ϥ΍ϮѧϨόϟ΍ Ϧѧϣ ϼ ˱ ϛ ΕϻϮΤΘϤϟ΍ ϩάϫ ΩΪΤΗ .ϖΑΎδϟ΍ ϝϭΪΠϟ΍
ϞѧϴϤΤΗ ϢѧΛ Ϧѧϣ ϭ αΪѧϜϤϟ΍ ϲѧϓ IP ϢѧΛ CS ΕϼΠѧδϤϟ΍ ΕΎѧϳϮΘΤϣ φѧϔΣ ΐΒѧδϳ Γ΍ΩΎѧϨϤϟ΍ ΔѧϤϴϠόΗ άѧϴϔϨΗ ϥΈѧϓ ϦϴΘϟΎΤϟ΍
΢ϤѧѧδΗ αΪѧѧϜϤϟ΍ ϲѧѧϓ IP ϭ CS ˰ѧѧϟ ΔѧѧϧΰΘΨϤϟ΍ ϢϴѧѧϘϟ΍ ϥ· . CS ϭ IP ϲѧѧϓ operand ϝϮΤΘϤϟΎѧѧΑ ΓΩΪѧѧΤϤϟ΍ ΓΪѧѧϳΪΠϟ΍ ϢϴѧѧϘϟ΍
ϭ ΖѧΑ 32 ˰ѧΑ Ύ˱ѧϳέϮϓ ϻ˱ ϮѧΤΘϣ ϞѧΜϤϳ Far_proc ϝϮѧΤΘϤϟ΍ ϥ· .ήΧ΁ Γήϔϴη ϊτϘϣ Ϧϣ ϲδϴ΋ήϟ΍ ΞϣΎϧήΒϟ΍ ϰϟ· ΓΩϮόϟΎΑ
.ΞϣΎϧήΒϟ΍ Γήϛ΍Ϋ ϲϓ Γ΍ΩΎϨϤϟ΍ ΔϤϴϠόΘϟ ( opcode ) ΔϤϴϠόΘϟ΍ ΰϣέ ϲϠΗ ϲΘϟ΍ ΔόΑέϷ΍ ΕΎΘϳΎΒϟ΍ ϲϓ Ύ˱ϧΰΨϣ ϥϮϜϳ ϱάϟ΍
: ϝΎΜϣ
CS ϭ IP ϲѧѧϓ ΞϣΎѧϧήΒϟ΍ ϦϳΰѧΨΗ Γήѧϛ΍Ϋ Ϧѧϣ ΓήѧηΎΒϣ ΎѧϤϬϠϴϤΤΗ ϢΘѧϳ ϥΎѧΘϤϠϜϟ΍ ϥΎѧΗΎϫ ϥ΃ ΚѧϴΣ CALL 01234321
΍˱ΩΪѧΤϣ ϥϮѧϜϳ ϲѧϋήϔϟ΍ ΞϣΎѧϧήΒϟ΍ ϲѧϓ ϰѧϟϭϷ΍ ΔѧϤϴϠόΘϟ΍ ϥ΍ϮѧϨϋ ϥ· .ϲѧϋήϔϟ΍ ΞϣΎѧϧήΒϠϟ Γήϔϴθϟ΍ ϊτϘϣ Ϯϫ CS ΚϴΣ
32 ˰ѧΑ ϱήѧϛ΍Ϋ ωϮѧϧ Ϧѧϣ ήѧηΆϤϟ΍ ϝϮѧΤΘϤϟ ΔΒѧδϨϟΎΑ Ύѧϣ΃ . IP ϦϤѧο ϥΰѧΨϳ ϱ΃ CALL ΔѧϤϴϠόΗ ΪόΑ ϰϟϭϷ΍ ΔϤϠϜϟΎΑ
ϰѧѧϟϭϷ΍ ΓήѧѧΠΤϟ΍ ϭ ˬΕΎѧѧϴτόϤϟ΍ Γήѧѧϛ΍Ϋ ϲѧѧϓ ΕΎѧѧΘϳΎΑ ΔѧѧόΑέ΄ϛ Ύ˱ѧ ϧΰΨϣ ϥϮѧѧϜϳ ϲѧѧϋήϔϟ΍ ΞϣΎѧѧϧήΒϠϟ ήѧѧηΆϤϟ΍ ϥΈѧѧϓ ΖѧѧΑ
JMP farseg ΰѧϔϘϟ΍ ϝΎѧΜϣ βѧϔϧ Ϯѧϫ ΎѧϨϫ ϝΎѧΜϤϟ΍ ) ΕϼΠѧδϤϟ΍ ΪѧΣ΃ Δτѧγ΍ϮΑ ήηΎΒϣ ϞϜθΑ ΎϫΪϳΪΤΗ ϦϜϤϳ ήηΆϤϠϟ
.( ϖΑΎδϟ΍ [DI]
ΔѧϤϴϠόΘϟ΍ ϩάѧϫ ϭ ϲѧδϴ΋ήϟ΍ ΞϣΎѧϧήΒϟ΍ ϰѧϟ· ϢϜΤΘѧϟ΍ ΪѧϴόΗ ϲѧΘϟ΍ ΔѧϤϴϠόΘϟ΍ άѧϴϔϨΘΑ ϲѧϬΘϨϳ ϥ΃ ΐѧΠϳ ϲϋήϓ ΞϣΎϧήΑ Ϟϛ ϥ·
:ϲϟΎΘϟ΍ ϝϭΪΠϟΎΑ ΔΣϭήθϣ ϲϫ ϭ RET ΓΩϮόϟ΍ ΔϤϴϠόΗ ϲϫ
ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
ΞϣΎϧήΒϟ΍ ϰϟ· ΓΩϮόϟ΍
RET RET/RET operand ΪΟϮϳ ϻ
ϲ˶ϋΪΘδ˵Ϥϟ΍

ΐѧδΣ) Ύ˱ѧόϣ CS ϭ IP ϭ΃ ςѧϘϓ IP Ϣϴѧϗ ϦϳΰѧΨΗ ΓΩΎѧϋ· ϖѧϳήσ Ϧѧϋ ϲϋΪΘѧδϤϟ΍ ΞϣΎϧήΒϟ΍ ϰϟ· ΓΩϮόϟ΍
ϝϮѧΤΘϤϟ΍ ϥΎѧϛ ΍Ϋ· ϭ . Far_pro ϝϮѧΤΘϤϟ΍ ϞѧΟ΃ Ϧѧϣ (ϪѧΟέΎΧ ϭ΃ ϲѧ΋ΰΠϟ΍ ϊѧτϘϤϟ΍ ϦϤѧο ϱ΃ Γ΍ΩΎѧϨϤϟ΍ ΔѧϤϴϠόΗ ωϮϧ
ϲѧϓ ΪѧΟϭ ΍Ϋ· ϝϮѧΤΘϤϟ΍ ϥ· ϭ ΍άѧϫ . SP ΕΎѧϳϮΘΤϣ ϰϟ· ϪΘϓΎο· ΐΠϴϓ RET ΓΩϮόϟ΍ ΔϤϴϠόΗ ϲϓ ΍˱ΩϮΟϮϣ (operand)
.ΖΑ 16 ˰Α ΔΣ΍ί· ϝϮΤΘϣ Ϧϋ ΓέΎΒϋ ϮϬϓ ΓΩϮόϟ΍ ΔϤϴϠόΗ
ΐΤδϟ΍ ϭ ϊϓΪϟ΍ ΕΎϤϴϠόΗ - Ύ˱όγΎΗ
ΔϣΪΨΘѧѧѧδϤϟ΍ ΔѧѧѧϤϴϠόΘϟ΍ ϭ PUSH ϊϓΪѧѧѧϟ΍ ΔѧѧѧϤϴϠόΗ ϲѧѧѧϫ αΪѧѧѧϜϤϟ΍ ϲѧѧѧϓ Ε΍ήΘϣ΍έΎѧѧѧΒϟ΍ φѧѧѧϔΤϟ ΔϣΪΨΘѧѧѧδϤϟ΍ ΔѧѧѧϤϴϠόΘϟ΍ ϥ·
φѧϔΣ ΓΩΎѧϋ ϱέϭήѧπϟ΍ Ϧѧϣ Ϫѧϧ΃ ΪѧΠϧ ϲѧϋήϔϟ΍ ΞϣΎѧϧήΒϟ΍ ϰѧϟ· ϞѧϳϮΤΘϟ΍ ϕΎϴγ ΪόΑ . POP ΔϤϴϠόΗ ϲϫ ΎϬϋΎΟήΘγϻ
39- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ϰѧϟ· ΎѧϬόϓΩ Δτѧγ΍ϮΑ ΎѧϬψϔΣ ϢΘѧϳ ϢϴѧϘϟ΍ ϩάϫ ϲδϴ΋ήϟ΍ ΞϣΎϧήΒϟ΍ Ε΍ήΘϣ΍έΎΑ ξόΑ ϭ΃ Δϴδϴ΋ήϟ΍ ΕϼΠδϤϟ΍ ΕΎϳϮΘΤϣ
ˬϲѧϋήϔϟ΍ ΞϣΎѧϧήΒϟ΍ άѧϴϔϨΗ ˯ΎѧϨΛ΃ Γήϛ΍άѧϠϟ αΪѧϜϤϟ΍ ϊѧτϘϣ ϲѧϓ ΔϤϴϠѧγ ΕΎϳϮΘΤϤϟ΍ φϔΣ ϢΘϳ ΔϘϳήτϟ΍ ϩάϬΑ ϭ .αΪϜϤϟ΍
ΎѧϬϨϳΰΨΗ ΩΎѧό˵ϳ ϲѧδϴ΋ήϟ΍ ΞϣΎѧϧήΒϟ΍ Ε΍ήΘϣ΍έΎѧΑ ϭ ΔѧχϮϔΤϤϟ΍ ΕϼΠѧδϤϟ΍ ϥΈѧϓ ϲѧδϴ΋ήϟ΍ ΞϣΎϧήΒϟ΍ ϰϟ· ΓΩϮόϟ΍ ϞΒϗ ϭ
:ϲϟΎΘϟΎϛ ϥϮϜΗ ϲϋήϔϟ΍ ΞϣΎϧήΒϠϟ ΔϴΟΫϮϤϨϟ΍ ΔϴϨΒϟ΍ ϥΈϓ Ϛϟάϟ .αΪϜϤϟ΍ Ϧϣ ΔχϮϔΤϤϟ΍ ϢϴϘϟ΍ ΐΤγ Δτγ΍ϮΑ
PUSH xx
αΪϜϤϟ΍ ϲϓ Ε΍ήΘϣ΍έΎΒϟ΍ ϭ ΕϼΠδϤϟ΍ φϔΤϟ PUSH yy
PUSH zz
-----------
ϲϋήϔϟ΍ ΞϣΎϧήΒϟ΍ ϢδΟ -----------
-----------
POP zz
Ϧϣ Ε΍ήΘϣ΍έΎΒϟ΍ ϭ ΕϼΠδϤϟ΍ ωΎΟήΘγϻ ΎϨϫ ωΎΟήΘγϻ΍ ϢΘϳ Ϫϧ΃ φΣϼϧ
POP yy
αΪϜϤϟ΍ ϞϜθΑ
ϞϤϋ ΃ΪΒϣ ϥϷ ϚϟΫ ϭ ϲδϜϋ
POP xx
αΪϜϤϟ΍
ϲϋΪΘδϤϟ΍ ΞϣΎϧήΒϟ΍ ϰϟ· ΓΩϮόϠϟ RET LIFO Ϯϫ
.ΕΎΘϳΎΑ ϊϣ βϴϟ ϭ ΕΎϤϠϛ ϊϣ αΪϜϤϟ΍ ϞϣΎόΘϳ :ΔψΣϼϣ
PUSH, POP ΕΎϤϴϠόΗ
:ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ ϲϓ ΔΣϭήθϣ ϲϫ ϭ
ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
PUSH αΪϜϤϟ΍ ϰϟ· ΔϤϠϛ ϊϓΩ PUSH S S ĺ ((SP)) ΪΟϮϳ ϻ
POP αΪϜϤϟ΍ Ϧϣ ΔϤϠϛ ΐΤγ POP D ((SP)) ĺ D ΪΟϮϳ ϻ

SP αΪϤϟ΍ ήηΆϣˬ SS αΪϤϟ΍ ϊτϘϣ ϞΠδϣ ˬαΪϤϟ΍


ϰѧϟ· ΞϟΎѧόϤϟΎΑ ΔѧϨϴ˷όϤϟ΍ ΔѧϴϠΧ΍Ϊϟ΍ ΕϼΠѧδϤϟ΍ ΕΎѧϳϮΘΤϣ ϊѧϓΩ ϢΘѧϳ ϲѧϋήϔϟ΍ ΞϣΎѧϧήΒϟ΍ Γ΍ΩΎѧϨϣϭ ΔόσΎϘϤϟ΍ ΕΎϴϠϤϋ ˯ΎϨΛ΃
ΔѧϣΪΧ ϦϴѧΗϭέ ϝΎѧϤϛ· ΪѧϨϋϭ .ΖѧϗΆϣ ϞϜѧθΑ ϙΎѧϨϫ ΕΎѧϳϮΘΤϤϟ΍ ϩάѧϫ ϰѧϘΒΗ ΚѧϴΣ αΪѧϜϤϟΎΑ ϰϋΪѧϳ Γήϛ΍άѧϟ΍ Ϧѧϣ Ϣδϗ
ϥΎѧϛ ΚѧϴΣ ϲϠΧ΍Ϊѧϟ΍ ϞΠѧδϤϟ΍ βѧϔϧ ϲѧϓ ϊѧοϮΗϭ αΪѧϜϤϟ΍ Ϧѧϣ ϢϴѧϘϟ΍ ϩάϫ ΐΤγ ϢΘϳ ϲϋήϔϟ΍ ΞϣΎϧήΒϟ΍ ϭ΃ ΔόσΎϘϤϟ΍
ΔѧѧϤϴϘϟ΍ ˬϡϼѧϋϷ΍ ϞΠѧѧδϤΑ ϊϓΪѧϳ ϲϜϴΗΎѧѧϣϮΗϭ΃ ϞϜѧθΑ ϭ ΞϟΎѧόϤϟ΍ ϥΈѧѧϓ ΔѧόσΎϘϤϟ΍ ΙΪѧѧΤΗ ΎϣΪѧϨϋ ϼ ˱ ΜѧѧϤϓ .ϼ
˱ ѧλ΃ ΎѧϫϮΘΤϳ
ΔѧϧϮϨόΑ ΔσΎѧδΒΑ ΪѧϳΪΟ αΪѧϜϣ ϊτϘϣ ϰϠϋ ϝϮμΤϟ΍ ϦϜϤϳ .αΪϜϤϟ΍ ϰϟ· IP ϲϓ ΔϴϟΎΤϟ΍ ΔϤϴϘϟ΍ ϭ ˬ CS ϲϓ ΔϴϟΎΤϟ΍
ϥ΍ϮѧϨόϟ΍ ϭ . SS ϲѧϓ ΔѧϤϴϘϠϟ ΔΒѧδϧ ϝΎѧόϔϟ΍ ϥ΍ϮѧϨόϟ΍ ϰѧϠϋ ϱϮѧΘΤϳ SP αΪѧϜϤϟ΍ ήѧηΆϣ ϥ· ϭ .ΪѧϳΪΟ Ϧϣ Ύ˱ϴΠϣήΑ SS
(αΪѧϜϤϟ΍ ΔѧϤϗ) αΪѧϜϤϟ΍ ϲѧϓ ΓήѧϴΧϷ΍ ϦϳΰѧΨΘϟ΍ ΓήѧΠΤϟ ϲ΋Ύѧϳΰϴϔϟ΍ ϥ΍ϮѧϨόϟ΍ Ϯѧϫ SP ϭ SS ΕΎѧϳϮΘΤϣ Ϧѧϣ ϖΘθϤϟ΍
ϊѧϤΟ ϥ· ϭ .ΞϟΎѧόϤϟ΍ ϞϴϐѧθΗ ˯ΪѧΑ ΪѧϨϋ FFFFh ˰ѧΑ ΃ΪѧΒΗ αΪѧϜϤϟ΍ ήηΆϣ ϲϓ ΔϤϴϘϟ΍ ϥ· .ΎϬϴϟ· ΕΎϴτόϤϟ΍ ϊϓΩ Ϣ͉ Η ϲΘϟ΍
ΓΪѧѧϋΎϗ) αΪѧѧϜϤϟ΍ ϲѧѧϓ ϱϮѧѧϠόϟ΍ ϥ΍ϮѧѧϨόϟ΍ Ε΍Ϋ ΓήѧѧΠΤϟ΍ ϲѧѧτόϳ SS ϲѧѧϓ ΓΩϮѧѧΟϮϤϟ΍ ΔѧѧϴϟΎΤϟ΍ ΔѧѧϤϴϘϟ΍ ϊѧѧϣ ΔѧѧϤϴϘϟ΍ ϩάѧѧϫ
ϞϜѧѧη ϰѧϠϋ αΪѧѧϜϤϟ΍ έϮѧμΘϧ ΎѧѧϨϧΈϓ ΕΎѧϤϠϛ ϲѧѧϫ ΓΩΎѧϋ αΪѧѧϜϤϟ΍ ϰѧϟ· ϭ Ϧѧѧϣ ΔѧϟϮϘϨϤϟ΍ ΕΎѧѧϴτόϤϟ΍ ϥ΃ ΎѧϤΑ .(αΪѧϜϤϟ΍
ϭ ΔѧϴΟϭΰϟ΍ ΕΎѧϤϠϜϟ΍ ΩϭΪѧΣ ϲѧϓ αΪѧϜϤϟ΍ Ε΍ήΠΣ ϊϴϤΟ ϥϮϜΗ ϥ΃ ϱέϭήπϟ΍ Ϧϣ Ϫϧ΃ ΎϤϛ ˬΖϳΎΑ 2 Ε΍Ϋ Ε΍ήΠΣ
ϊϓΪѧѧѧΑ ΞϟΎѧѧόϤϟ΍ ϡϮѧѧϘϳ .αΪѧѧϜϤϟ΍ Ϧѧѧϣ ΕΎѧѧϴτόϤϟ΍ ΐΤѧѧѧγ ϭ΃ ϊϓΪѧѧϟ ΔѧѧΑϮϠτϤϟ΍ Γήϛ΍άѧѧϟ΍ Ε΍έϭΩ ΩΪѧѧϋ ιΎѧѧϘϧϹ ϚѧѧϟΫ
αΪѧϜϤϟ΍ ΔѧϤϗ ϰѧϟ· Ύѧϣ ϞΠѧδϣ ΔѧϤϴϗ ϊѧϓΩ ϢΘѧϳ Γήѧϣ Ϟϛ ϲϓ ϭ ˬΓήϣ Ϟϛ ϲϓ ΔϤϠϛ αΪϜϤϟ΍ ϰϟ· ϦϳϭΎϨόϟ΍ ϭ ΕΎϴτόϤϟ΍
.αΪѧϜϤϟ΍ Γήѧϛ΍Ϋ ϲѧϓ ϞΠѧδϤϟ΍ ϚѧϟΫ ΕΎѧϳϮΘΤϣ ΐΘϜ˵Η ϢΛ Ϧϣ ϭ 2 έ΍ΪϘϤΑ κϘϨΗ ϻ ˱ ϭ΃ αΪϜϤϟ΍ ήηΆϣ ϲϓ ΔϤϴϘϟ΍ ϥΈϓ
ϥ΍ϮѧѧϨόϟ΍ ϖΑΎѧѧτΗ ϲѧѧΘϟ΍ αΪѧѧϜϤϟ΍ ΓΪѧѧϋΎϗ Ϧѧѧϣ Ύ˱ѧ ϗϼτϧ΍ Γήϛ΍άѧѧϟ΍ ϲѧѧϓ ϞϔѧѧγϷ΍ ϮѧѧΤϧ ϮѧѧϤϨϳ αΪѧѧϜϤϟ΍ ϥΈѧѧϓ ΔѧѧϘϳήτϟ΍ ϩάѧѧϬΑ
ϖΘѧθϤϟ΍ ϲ΋Ύѧϳΰϴϔϟ΍ ϥ΍ϮѧϨόϟ΍ ϖΑΎѧτΗ ϲѧΘϟ΍ ϭ αΪѧϜϤϟ΍ (ΔѧϤϗ) ΔѧϳΎϬϧ ϰϟ· FFFFh ΔϤϴϘϟ΍ ϭ SS Ϧϣ ϖΘθϤϟ΍ ϲ΋Ύϳΰϴϔϟ΍
ϥ· .ΙΪѧΤϳ ϞѧδϠδΘϟ΍ ΍άѧϬϟ βѧϜόϟ΍ ϥΈѧϓ αΪѧϜϤϟ΍ ΔϤϗ Ϧϣ ΔϤϴϘϟ΍ ΐΤδΗ ΎϣΪϨϋ ϭ 0000h ϝΎόϔϟ΍ ϥ΍ϮϨόϟ΍ ϭ SS Ζϣ
αΪѧѧϜϤϟ΍ ϰѧϟ· ΔѧѧϋϮϓΪϤϟ΍ ΓήѧϴΧϷ΍ ΔѧϤϴϘϟ΍ ΓήѧѧΠΣ ϰѧϟ· ήϴѧѧθϳ Ύ˱ѧϤ΋΍Ω SP ϭ SS Δτѧγ΍ϮΑ ϑήѧѧόϤϟ΍ ϲ΋Ύѧϳΰϴϔϟ΍ ϥ΍ϮѧϨόϟ΍
40- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ϥ· . 2 έ΍ΪѧϘϤΑ SP Ω΍Ωΰѧϳ ϢѧΛ ΞϟΎѧόϤϟ΍ ϦϤѧο ϲѧϨόϤϟ΍ ϞΠѧδϤϟ΍ ϰѧϟ· αΪѧϜϤϟ΍ Ϧѧϣ ϻ
˱ ϭ΃ ΐΤδΗ ΎϬΗΎϳϮΘΤϣ ϥ΃ ΚϴΣ
.αΪϜϤϟ΍ ϰϟ· ΔϋϮϓΪϤϟ΍ ΔϘΑΎδϟ΍ ΔϤϴϘϟ΍ ϖΑΎτΗ ΓΪϳΪΠϟ΍ αΪϜϤϟ΍ ΔϤϗ
:αΪϜϤϟ΍ ΕϻΎΣ ΔϴϟΎΘϟ΍ ΔΛϼΜϟ΍ ϝΎϜηϷ΍ ϦϴΒΗ :ϝΎΜϣ
αΪϜϤϟ΍ ΔϤϗ Tos
αΪϜϤϟ΍ ΓΪϋΎϗ Bos
AX 12 34
ϯήδϴϟ΍ ΓήΠΤϟ΍ ϥ΍ϮϨϋ βϴϟ ϭ 12h ϱϮΤΗ ϲΘϟ΍ ϰϨϤϴϟ΍ ΓήΠΤϟ΍ ϥ΍ϮϨϋ Ϯϫ ΍άϫ

αΪϜϤϟ΍ ΓΪϋΎϗ ϮΤϧ


BX BB AA
AX 12 34

0105C 66 77
66 77
99 66 77 TOS
0105A 88 88 99
TOS 88 99
01058 AA BB AA BB
01 23 AA BB
01056 34 12
45 67 01056 34 12
01054 45 67
89 AB 45 67
01052 89 AB
89 AB
01050 CD EF CD EF
01050 CD EF
01 ( 105) SS (2) (3)
01 05 SS
ϥ΍ϮѧϨόϟ΍ ϲѧϓ ϦѧϤϜΗ αΪѧϜϤϟ΍ ΓΪѧϋΎϗ ϥΈѧϓ Ύ˱ϘΑΎѧγ Ύϧήѧη΃ 01
ΎϤϛ ϭ050105h
SS ϰϠϋ ϱϮΤϳ αΪϜϤϟ΍ ϊτϘϣ ϞΠδϣ ϥ΃ φΣϼϧ
: BOS αΪϜϤϟ΍
01 08 SP ΓΪϋ Ύϗ ϥ΍ϮϨϋ ϲτόϳ ΍άϫ ϭ FFFFh ϝΎόϔϟ΍ ϥ΍ϮϨόϟ΍ ϊϣ SS Ϧϣ ϖΘθϤϟ΍ ϲ΋Ύϳΰϴϔϟ΍
01 0A SP
A (bos) = 0105h + FFFF = 1104Fh 01 60 SP
0008h ϱϭΎѧδϳ ϪѧΘϤϗ ϰѧϟ· αΪѧϜϤϟ΍ ΓΪѧϋΎϗ Ϧѧϣ ϝΎѧόϔϟ΍ ϥ΍ϮѧϨόϟ΍ ϞѧΜϤϳ ϱάѧϟ΍ αΪϜϤϟ΍ ήηΆϣ ϥΈϓ ϚϟΫ ϰϟ· ΔϓΎοϹΎΑ
:ϲ΋Ύϳΰϴϔϟ΍ ϥ΍ϮϨόϟ΍ ϲϓ ϲϫ αΪϜϤϠϟ ΔϴϟΎΤϟ΍ ΔϤϘϟΎϓ Ϛϟάϟ
A (tos) = 01050 + 0008 = 01058h
ΎѧѧѧϤϨϴΑ αΪѧѧѧϜϤϠϟ ΔѧѧѧϴϘϴϘΣ ΕΎѧѧѧϴτόϣ ϰѧѧѧϠϋ ϱϮѧѧѧΘΤΗ 01058h αΪѧѧѧϜϤϟ΍ ΔѧѧѧϤϗ Ϧѧѧѧϣ ϰѧѧѧϠϋϷ΍ ϢϴѧѧѧϘϟ΍ Ε΍Ϋ ϦϳϭΎѧѧѧϨόϟ΍ ϥ·
Ϯѧϫ αΪѧϜϤϟ΍ : ϒϳήόΘϟΎѧΑ ) αΪѧϜϤϠϟ ΔѧϴϘϴϘΣ ΕΎѧϴτόϣ Ζѧδϴϟ αΪѧϜϤϟ΍ ΔѧϤϗ Ϧѧϣ ϰѧϧΩϷ΍ ϦϳϭΎѧϨόϟ΍ Ε΍Ϋ ΕΎϴτόϤϟ΍
Ϧѧϣ ϝϭϷ΍ ϞϜѧθϟ΍ ϲѧϓ αΪѧϜϤϟ΍ ϰѧϟ· ΔѧϋϮϓΪϤϟ΍ ΓήϴΧϷ΍ ΔϤϴϘϟ΍ ϥ΃ φΣϼϧ . ( ΔϤϘϟ΍ ϭ ΓΪϋΎϘϟ΍ ϦϴΑ ΓέϮμΤϤϟ΍ ϢϴϘϟ΍
ϥ΃ ΪѧΠϧ ΎѧϨϫ . PUSH AX ΔѧϤϴϠόΗ άѧϴϔϨΗ ΪѧϨϋ ΙΪΤϳ ϱάϟ΍ Ύϣ ϲϧΎΜϟ΍ ϞϜθϟ΍ ϦϴΒϳ ϭ . BBAAh ϲϫ ϖΑΎδϟ΍ ϞϜθϟ΍
ήΛΆѧΗ ϻ ΎѧϬϨϜϟ ϭ 2 έ΍ΪѧϘϤΑ SP ΕΎѧϳϮΘΤϣ ιΎѧϘϧ· ΐΒѧδϳ PUSH ΔѧϤϴϠόΗ άѧϴϔϨΗ ϥ΃ ϭ 1234h ϲѧϫ AX ΕΎϳϮΘΤϣ
ϞѧΑΎϘΗ αΪѧϜϤϟ΍ ϲѧϓ ΎѧϬϴϟ· ϝϮѧλϮϟ΍ ϢΘѧϳ ϲѧΘϟ΍ ΔѧϴϟΎΘϟ΍ ΓήѧΠΤϟ΍ ϥΈѧϓ Ϛϟάϟ SS αΪϜϤϟ΍ ϊτϘϣ ϞΠδϣ ΕΎϳϮΘΤϣ ϰϠϋ
ϱϮѧϠόϟ΍ ΖѧϳΎΒϟ΍ ϥ΃ φѧΣϼϧ .αΪѧϜϤϟ΍ ϰѧϟ· AX ϲѧϓ ΔѧϧΰΨϤϟ΍ ΔѧϤϴϘϟ΍ ϊѧϓΩ ϢΘѧϳ ΓήѧΠΤϟ΍ ϩάѧϫ ϰϟ· . 01056h ϥ΍ϮϨόϟ΍
Ϛϟάѧѧϛ ϭ αΪѧѧϜϤϟ΍ ϲѧѧϓ ΔѧѧϤϠϜϠϟ ϲϠϔѧѧδϟ΍ ΖѧѧϳΎΒϟ΍ ϲѧѧϓ ϥϵ΍ ϦѧѧϤϜϳ ( 12h ϱϭΎѧѧδΗ ϪѧѧΘϤϴϗ ϱάѧѧϟ΍ ϭ ) AX ϞΠѧѧδϤϟ΍ Ϧѧѧϣ
ϲѧѧϓ ΔѧѧϤϠϜϠϟ ϱϮѧѧϠόϟ΍ ΖѧѧϳΎΒϟ΍ ϲѧѧϓ ϥϵ΍ ϦѧѧϤϜϳ ( 34h ϱϭΎѧѧδΗ ϪѧѧΘϤϴϗ ϱάѧѧϟ΍ ϭ ) AX ϞΠѧѧδϤϟ΍ Ϧѧѧϣ ϲϠϔѧѧδϟ΍ ΖѧѧϳΎΒϟΎϓ
.αΪϜϤϟ΍
ΕΎѧϴτόϤϟ΍ Ζѧ˴όϓ˵Ω ϱάѧϟ΍ ϞΠѧδϤϟ΍ ϰѧϟ· αΪѧϜϤϟ΍ Ϧѧϣ ΕΎѧϴτόϤϟ΍ ΐΤѧδ˵Η ΎϣΪѧϨϋ ΙΪѧΤϳ ϱάѧϟ΍ Ύϣ ΚϟΎΜϟ΍ ϞϜθϟ΍ ϦϴΒϳ
ϰѧϟ· ΔΒѧδϨϟΎΑ ΔѧθϗΎϨϤϟ΍ βѧϔϧ .ΐѧϴΗήΘϟ΍ ϰѧϠϋ POP BX ϢѧΛ POP AX ΔѧϤϴϠόΘϟ΍ άѧϴϔϨΗ ΪѧόΑ ϚѧϟΫ ϭ αΪϜϤϟ΍ ϰϟ· ϪϨϣ
.αΪϜϤϟ΍ ϰϟ· ΔϳέϮϓ ΔϤϴϗ ϊϓΩ
ΕΎϘϠΤϟ΍ ΕΎϤϴϠόΗ - ΍˱ήηΎϋ
Ϧѧϣ ϻ
˱ ΪѧΑ ΎϬϟΎϤόΘѧγ΍ ϦѧϜϤϳ ΕΎѧϤϴϠόΘϟ΍ ϩάѧϫ ϭ .ΔѧϘϠΤϟ΍ ΔѧϴϠϤϋ ϖѧϴϘΤΘϟ ιΎѧΧ ϞϜѧθΑ ΔϤϤѧμϣ ΕΎѧϤϴϠόΗ ΙϼΛ ϙΎϨϫ
:ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ ϲϓ ΔϨϴΒϣ ϲϫ ϭ .ϲσήθϟ΍ ΰϔϘϟ΍ ΕΎϤϴϠόΗ
41- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
LOOP ΔϘϠΣ LOOP short_label ΪΟϮϳ ϻ

Δτѧѧγ΍ϮΑ Δѧѧϓ͉ήόϤϟ΍ ΓήѧѧΠΤϟ΍ ϰѧѧϟ· ΰѧѧϔϘϟ΍ ϢѧѧΛ ϡϼѧѧϋϷ΍ ϰѧѧϠϋ ήϴΛ΄ѧѧΘϟ΍ ϥϭΩ ΪѧѧΣ΍ϭ έ΍ΪѧѧϘϤΑ CX ιΎѧѧϘϧ·
IP = ϥϮѧϜϳ ΎѧϨϫ ϭ .ΔѧϘϠΤϟ΍ ΔѧϤϴϠόΘϟ ΔϴϟΎΘϟ΍ ΔϤϴϠόΘϟ΍ άϴϔϨΗ ϢΘϳ ϻ· ϭ ήϔμϟ΍ ϱϭΎδϳ ϻ CX ϥΎϛ ΍Ϋ· ΓήϴμϘϟ΍ ΔΘϓϼϟ΍
.( ΖΑ 16 ˰Α ΎϬϠόΟ ϱ΃ ) ΎϬΗέΎη· ΪϳΪϤΗ ΪόΑ ΎϫΎϧάΧ΃ disp ΚϴΣ IP + disp
ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
ΎϤϟΎσ ΔϘϠΣ
LOOPE/ LOOPE/ ΔΘϓϻ
LOOPZ
ΎϤϟΎσ ϭ΃ /ϱϭΎδϳ LOOPZ ΪΟϮϳ ϻ
ήϔλ Γήϴμϗ

Δτѧѧγ΍ϮΑ Δѧѧϓ͉ήόϤϟ΍ ΓήѧѧΠΤϟ΍ ϰѧѧϟ· ΰѧѧϔϘϟ΍ ϢѧѧΛ ϡϼѧѧϋϷ΍ ϰѧѧϠϋ ήϴΛ΄ѧѧΘϟ΍ ϥϭΩ ΪѧѧΣ΍ϭ έ΍ΪѧѧϘϤΑ CX ιΎѧѧϘϧ·
ΔѧѧϤϴϠόΘϟ ΔѧѧϴϟΎΘϟ΍ ΔѧѧϤϴϠόΘϟ΍ άѧѧϴϔϨΗ ϢΘѧѧϳ ϻ· ϭ ήϔѧѧμϟ΍ ϱϭΎѧѧδϳ ZF ϭ ήϔѧѧμϟ΍ ϱϭΎѧѧδϳ ϻ CX ϥΎѧѧϛ ΍Ϋ· ΓήϴѧѧμϘϟ΍ ΔѧѧΘϓϼϟ΍
.ΔϘϠΤϟ΍
.ϡϼϋϷ΍ ϰϠϋ ήΛΆϳ ϱάϟ΍ Ϯϫ ςϘϓ ΔϘϠΤϟ΍ ϢδΟ ΎϨϫ ϭ

ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
ϻ ΎϤϟΎσ ΔϘϠΣ
LOOPNE/ LOOPNE/ ΔΘϓϻ
LOOPNZ
ΎϤϟΎσ ϭ΃ /ϱϭΎδϳ LOOPNZ
ΪΟϮϳ ϻ
΍˱ήϔλ βϴϟ Γήϴμϗ

ϻ CX ϥΎѧϛ ΍Ϋ· ΓήϴѧμϘϟ΍ ΔѧΘϓϼϟ΍ Δτѧγ΍ϮΑ ΓΩΪѧΤϤϟ΍ ΓήѧΠΤϟ΍ ϰѧϟ· ΰϔϘϟ΍ ϢΛ ΪΣ΍ϭ έ΍ΪϘϤΑ CX ιΎϘϧ·
.ΔϘϠΤϟ΍ ΔϤϴϠόΘϟ ΔϴϟΎΘϟ΍ ΔϤϴϠόΘϟ΍ άϴϔϨΗ ϢΘϳ ϻ· ϭ ήϔμϟ΍ ϱϭΎδϳ ZF ϭ ήϔμϟ΍ ϱϭΎδϳ
.ϡϼϋϷ΍ ϰϠϋ ήΛΆϳ ϱάϟ΍ Ϯϫ ςϘϓ ΔϘϠΤϟ΍ ϢδΟ Ύ˱πϳ΃ ΎϨϫ ϭ
:ϝΎΜϣ
ήѧѧμϨόϟ΍ ϭ 8,9,4,5,7 : ϼ
˱ Μѧϣ ( ΪѧόΒϟ΍ ΔѧϳΩΎΣ΃ ΔϓϮϔѧμϣ ) ήѧλΎϨόϟ΍ Ϧѧϣ ΔѧϬΠΘϣ ϦϤѧο ήѧμϨϋ Ϧѧϋ ΚѧΤΒϟ΍ Ϊѧϳήϧ
:ϲϟΎΘϟΎϛ ΔϘϠΤϟ΍ ϢδΟ ϥϮϜϳ ϭ .ήλΎϨόϟ΍ ΩΪϋ Ϯϫ ϭ CX = 5 ΎϨϫ . 4 Ϯϫ ϩΩΎΠϳ· Ω΍ήϤϟ΍
MOV CX, 5
Nxt: ---------------
--------------- ΔϘϠΤϟ΍ ϢδΟ ö  0 ϥ΃ Ϧϣ ϢϏήϟΎΑ ΔϘϠΤϟ΍ Ϧϣ ΝϭήΨϟ΍ ϢΘϳ ΎϨϫ
--------------- . ZF = 1 ΖΤΒλ΃ ϭ ϖΑΎτΗ ϞμΣ ϪϧϷ
LOOPNE Nxt
ΔϠδϠδϟ΍ ΕΎϤϴϠόΗ - 11˱
ΔϠѧδϠδϟ΍ ΕΎѧϤϴϠόΗ ϥ· .Γήϛ΍άѧϠϟ ΔѧΒϗΎόΘϣ Ε΍ήѧΠΣ ϲѧϓ ϦѧϤϜΗ ΕΎѧϴτόϣ ΕΎѧϤϠϛ ϭ΃ ΕΎѧΘϳΎΑ ϥ΃ ΔϠѧδϠδϟ΍ ΔѧϤϠϜΑ ΪμϘϧ
βϨѧϛ ϭ΃ ΢ѧδϣ ˬΓήϛ΍άѧϟ΍ ϲѧϓ ήѧΧ΁ ϙϮѧϠΑ ϰѧϟ· Γήѧϛ΍Ϋ ϙϮѧϠΑ Ϧѧϣ ΕΎϴτόϤϟ΍ ϞϘϧ ϞΜϣ ΕΎϴϠϤϋ άϴϔϨΘΑ ΞϣήΒϤϠϟ ΢ϤδΗ
ϦϴΘϠѧδϠγ ήѧλΎϨϋ ΔѧϧέΎϘϣ ˬΔѧϨϴόϣ ΔϤϴϗ Ϧϋ ΚΤΒϟ΍ ϭ Γήϛ΍άϟ΍ ϲϓ ΔϧΰΨϤϟ΍ ΕΎϴτόϤϟ΍ ήλΎϨϋ Ϧϣ ΔϠδϠγ SCAN
.ϦϴΘϔϠΘΨϣ ϭ΃ ϦϴΘϘΑΎτΘϣ ΎϧΎϛ ΍Ϋ· ΎϤϴϓ ΪϳΪΤΘϟ
:ϲϫ ΔϴγΎγϷ΍ ΔϠδϠδϟ΍ ΕΎϤϴϠόΗ ϭ

42- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
Ϧϣ ήμϨϋ ϞϘϧ
MOVS MOVS operand ΪΟϮϳ ϻ
ΔϠδϠγ
Δτγ΍ϮΑ ΓΩΪΤϤϟ΍ ΓήΠΤϟ΍ ϰϟ· ϪϠϘϧ ϢΘϳ DS:SI Δτγ΍ϮΑ ΩΪΤϤϟ΍ ήμϨόϟ΍ :ΔϴϠϤόϟ΍
:ϢΛ ES:DI ΔϤϴϘϟ΍
SI 1 or 2 ĺ SI
DI 1 or 2 ĺ DI
ΔϤϠϜϟ΍ ϡϼϋϷ΍
ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΔϟΰΘΨϤϟ΍ ΓήΛ΄ΘϤϟ΍
ΔϴϠϤόϟ΍ βϔϧ
Ϧϣ ΖϳΎΑ ήμϨϋ ϞϘϧ
MOVSB MOVSB έ΍ΪϘϣ ϭ ΔϘΑΎδϟ΍ ΪΟϮϳ ϻ
ΔϠδϠγ
1Ϯϫ Ϊϳ΍ΰΘϟ΍
ΔϴϠϤόϟ΍ βϔϧ
Ϧϣ ΔϤϠϛ ήμϨϋ ϞϘϧ
MOVSW MOVSW έ΍ΪϘϣ ϭ ΔϘΑΎδϟ΍ ΪΟϮϳ ϻ
ΔϠδϠδϟ΍
2Ϯϫ Ϊϳ΍ΰΘϟ΍
CMPS ΔϠδϠγ ήμϨϋ ΔϧέΎϘϣ CMPS operand ΔϟΎΤϟ΍ ϡϼϋ΃

ΎϤϧ· ΔΠϴΘϨϟ΍ ϥΰΨ˵Η ϻ ϭ έΪμϤϟ΍ ϝϮΤΘϣ Ϧϣ ϑΪϬϟ΍ ϝϮΤΘϣ Ρήσ ϢΘϳ :ΔϴϠϤόϟ΍
:ϱ΃ ˬςϘϓ ΔϟΎΤϟ΍ ϡϼϋ΃ ϝΪό˵Η
( ( DS x 10h ) + SI ) ( ( ES x 10h ) + DI ) ĺ ΔϟΎΤϟ΍ ϡϼϋ΃
SI 1 or 2 ĺ SI
DI 1 or 2 ĺ DI

ϡϼϋϷ΍
ΔϟΰΘΨϤϟ΍ ΔϤϠϜϟ΍ ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΓήΛ΄ΘϤϟ΍
ήμϨϋ ΢δϣ
SCAS(B or W) SCAS operand ΔϟΎΤϟ΍ ϡϼϋ΃
ΔϠδϠγ
: ΔϴϠϤόϟ΍
( AL or AX ) ( ( ES x 10h ) + DI ) ĺ ΔϟΎΤϟ΍ ϡϼϋ΃
DI 1 or 2 ĺ DI

ϡϼϋϷ΍
ΔϟΰΘΨϤϟ΍ ΔϤϠϜϟ΍ ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΓήΛ΄ΘϤϟ΍
ήμϨϋ ϞϴϤΤΗ
LODS (B or W) LODS operand ΪΟϮϳ ϻ
ΔϠδϠγ
: ΔϴϠϤόϟ΍
( ( DS x 10h ) + SI ) ĺ ( AL or AX )
SI 1 or 2 ĺ SI

43- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

ϡϼϋϷ΍
ΔϟΰΘΨϤϟ΍ ΔϤϠϜϟ΍ ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΓήΛ΄ΘϤϟ΍
ήμϨϋ ϦϳΰΨΗ
STOS(B or W) STOS operand ΪΟϮϳ ϻ
ΔϠδϠγ : ΔϴϠϤόϟ΍
( AL or AX ) ĺ ( ( ES x 10h ) + DI )
DI 1 or 2 ĺ DI

ΔϠδϠδϟ΍ έ΍ήϜΗ ΕΎϤϴϠόΗ - 12˱


ίΎѧΠϧ· ϢΘѧϳ ϭ .ΎϫήѧλΎϨϋ ϊѧϴϤΟ ΔѧΠϟΎόϣ ϞѧΟ΃ Ϧѧϣ ΔϠѧδϠδϠϟ ΔϴѧγΎγϷ΍ ΕΎϴϠϤόϟ΍ έ΍ήϜΗ ΐΠϳ ΕΎϘϴΒτΘϟ΍ Ϣψόϣ ϲϓ
ω΍Ϯѧϧ΃ ϥ· ϭ ΍άѧϫ .έήѧϜ˵Η ϑϮѧγ ϲѧΘϟ΍ ΔϠѧδϠδϠϟ ΔϴѧγΎγϷ΍ ΔѧϤϴϠόΘϟ΍ ϞѧΒϗ έ΍ήϜΘϟ΍ Ε ΎϤϴϠόΗ ϝΎΧΩ· Δτγ΍ϮΑ ϞϤόϟ΍ ΍άϫ
:ϲϟΎΘϟ΍ ϝϭΪΠϟ΍ ϲϓ ΔϨϴΒϣ έ΍ήϜΘϟ΍ ΕΎϤϴϠόΗ

ΔϟΰΘΨϤϟ΍ ΔϤϠϜϟ΍ ϰϨόϤϟ΍ ϡ΍ΪΨΘγϻ΍


ΔϠδϠδϟ΍ ΔϳΎϬϧ ϰϟ· Ϟμϧ Ϣϟ ΎϤϟΎσ έ΍ήϜΘϟ΍
REP ϱ΃ MOVS, STOS
CX  0
ΔϠδϠδϟ΍ ΔϳΎϬϧ ϰϟ· Ϟμϧ Ϣϟ ΎϤϟΎσ έ΍ήϜΘϟ΍
REPE/REPZ CMPS, SCAS
ZF=1, CX0 ϱ΃ ϥΎΘϳϭΎδΘϣ ϥΎΘϠδϠδϟ΍ ϭ
ΔϠδϠδϟ΍ ΔϳΎϬϧ ϰϟ· Ϟμϧ Ϣϟ ΎϤϟΎσ έ΍ήϜΘϟ΍
REPNE/REPNZ ZF=0, ϱ΃ ϥΎΘϳϭΎδΘϣ ήϴϏ ϥΎΘϠδϠδϟ΍ ϭ CMPS, SCAS
CX0

:ϝΎΜϣ
: ϥ΃ νήϔΑ
SI = 0100h DS = 0200h
DI = 0110h ES = 0400h
: ϦϴΘϴϟΎΘϟ΍ ϦϴΘϤϴϠόΘϟ΍ άϴϔϨΗ ΔΠϴΘϧ ϥΈϓ
MOV CX,20h
REP MOVSB
Ϧѧϣ ΖѧϳΎΑ 32 ϞѧϘϨΘϓ ΔѧϴϧΎΜϟ΍ ΔѧϤϴϠόΘϟ΍ Ύѧϣ΃ 20h = 32d ΔѧϤϴϘϟΎΑ CX ϞΠѧδϤϟ΍ ϞѧϴϤΤΘΑ ϡϮѧϘΗ ϰϟϭϷ΍ ΔϤϴϠόΘϟ΍ ϥ΃ ϲϫ
ϭ ES Δτѧγ΍ϮΑ ΓΩΪѧΤϤϟ΍ ϑΪѧϬϟ΍ Γήѧϛ΍Ϋ Ε΍ήѧΠΣ ϙϮѧϠΑ ϰѧϟ· SI ϭ DS Δτѧγ΍ϮΑ ΓΩΪѧΤϤϟ΍ έΪμϤϟ΍ Γήϛ΍Ϋ Ε΍ήΠΣ
. DI

ϩΎΠΗϻ΍ ϢϠϋ ϊϴοϮΗ ϭ ΢δϣ ΎΘϤϴϠόΗ - 13˱


ήѧϳήϘΗ ϢΘѧϳ Ϫѧϧ΃ ϭ ΔϠѧδϠδϟ΍ ΕΎѧϤϴϠόΗ άѧϴϔϨΗ ˯ΎѧϨΛ΃ ϲϜϴΗΎѧϣϮΗϭ΃ ϞϜѧθΑ DI ϭ SI Ϣϴѧϗ ιΎѧϘϧ· ϭ΃ ΓΩΎѧϳί ϢΘѧϳ Ϫѧϧ΃ ΎϧήϛΫ
ϭ ΔѧϴϜϴΗΎϣϮΗϭϷ΍ ΓΩΎѧϳΰϟ΍ ΙΪѧΤΗ DF = 0 ΎϣΪѧϨϋ ΚѧϴΣ DF ϩΎѧΠΗϻ΍ ϢѧϠϋ ΔѧϤϴϗ ϰѧϠϋ ΍˱ΩΎѧϤΘϋ΍ ιΎѧϘϧϹ΍ ϭ΃ ΓΩΎѧϳΰϟ΍
:ϦϴΘϴϟΎΘϟ΍ Ϧϴ ΘϤϴϠόΘϟ΍ Δτγ΍ϮΑ ϩΎΠΗϻ΍ ϢϠόΑ ϢϜΤΘϟ΍ ϢΘϳ ϭ .βϜόϟΎΑ βϜόϟ΍
ϡϼϋϷ΍
ΔϟΰΘΨϤϟ΍ ΔϤϠϜϟ΍ ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
ΓήΛ΄ΘϤϟ΍

44- -
‡‡ 
 ‡ϱΩήϛ ‡Ϳ΍‡ΪΒϋ‡βϧ΃‡ ‡Ω΍Ϊϋ·ϭ‡ϒϴϟ΄Η
  ‡

CLD DF ϒϴψϨΗ CLD 0 ĺ DF DF


STD DE ϊϴοϮΗ STD 1 ĺ DF DF

OUT ϭ IN ΎΘϤϴϠόΗ - 14˱


ΔϟΰΘΨϤϟ΍ ΔϤϠϜϟ΍ ϰϨόϤϟ΍ Δϐϴμϟ΍ ΔϴϠϤόϟ΍
IN ΓήηΎΒϣ ϞΧΩ ΔϤϴϠόΗ IN Acc,port (port) ĺ Acc
IN ΓήηΎΒϣ ήϴϏ ϞΧΩ ΔϤϴϠόΗ IN Acc,DX ((DX)) ĺ Acc
OUT ΓήηΎΒϣ ΝήΧ ΔϤϴϠόΗ OUT port,Acc Acc ĺ (port)
OUT ΓήηΎΒϣ ήϴϏ ΝήΧ ΔϤϴϠόΗ OUT DX,Acc Acc ĺ ((DX))
Ύ˱ѧϳϮΘΤϣ DX ϥϮѧϜϳ ΓήѧηΎΒϤϟ΍ ήѧϴϏ ΔѧϤϴϠόΘϟ΍ ϲѧϓ ϭ ΍˱ΪѧΣ΍ϭ Ύ˱ѧΘϳΎΑ port ˰ѧϟ΍ ϝϮѧσ ϥϮѧϜϳ ΓήѧηΎΒϤϟ΍ ΔѧϤϴϠόΘϟ΍ ϲϓ ΚϴΣ
.ΓάϓΎϧ ϥ΍ϮϨϋ ϰϠϋ
:ϝΎΜϣ
Ν΍ήѧѧΧ· ϢΘϴѧѧγ ϢѧѧΛ Ϧѧѧϣ ϭ ΃ήϘ˵Θѧ γ
˴ ΐѧѧϴΗήΘϟ΍ ϰѧѧϠϋ AAh, A9h ϦϳϭΎѧѧϨόϟ΍ ϲѧѧϓ ΖѧѧϳΎΑ ϢѧѧΠΤΑ ϞѧѧΧΩ ϲΗάѧѧϓΎϧ ϥ΃ νήѧѧϔΑ
΍άѧѧϫ ίΎѧѧΠϧϹ Δѧѧϣίϼϟ΍ ΕΎѧѧϤϴϠόΘϟ΍ ΔѧѧΑΎΘϛ ΏϮѧѧϠτϤϟ΍ B000h ϥ΍ϮѧѧϨόϟ΍ ϲѧѧϓ ΔѧѧϤϠϛ ϢѧѧΠΤΑ ΝήѧѧΧ ΓάѧѧϓΎϧ ϰѧѧϟ· ΎѧѧϬΗΎϳϮΘΤϣ
.ϞϤόϟ΍
:ϞΤϟ΍
IN AL,[0AAh]
MOV AH,AL
IN AL,[0A9h]
MOV DX,0B000h
OUT DX,AX

Ϳ΍ ΪϤΤΑ ΖϤΗ

45- -

You might also like