Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Микропроцессор 486 / I486 / CH13
.TXTѓ« ў 13 Њг«мвЁЇа®жҐбб®а п ®Ўа Ў®вЄ
-----------------------------------------------------------------
Џа®жҐбб®а i486 Ї®¤¤Ґа¦Ёў Ґв ¬г«мвЁЇа®жҐбб®аго а Ў®вг Ї®
бЁб⥬®© иЁҐ. Џа®жҐбб®ал, а Ў®в ойЁҐ бЁб⥬го иЁг, ¤®«¦л
Ё¬Ґвм а §«ЁзлҐ Ї®«®бл Їа®ЇгбЄ Ёп иЁл.
Њг«мвЁЇа®жҐбб®а п ®Ўа Ў®вЄ Ї®§ў®«пҐв г«гзиЁвм ҐЄ®в®алҐ
бЇҐЄвл ЎлбвதҐ©бвўЁп бЁб⥬л. Ќ ЇаЁ¬Ґа, бЁб⥬ Є®¬ЇмовҐа®©
Ја дЁЄЁ ¬®¦Ґв ЁбЇ®«м§®ў вм жҐва «мл© Їа®жҐбб®а i860(’Њ)
бЇҐжЁ «м® ¤«п Ўлбва®© ®Ўа Ў®вЄЁ а бва®ўле ®Ўа §®ў, ў в® ўаҐ¬п
Є Є Їа®жҐбб®а i486 Ўг¤Ґв Ї®¤¤Ґа¦Ёў вм бв ¤ авго ®ЇҐа жЁ®го
бЁб⥬г, ЇаЁ¬Ґа UNIX Ё«Ё OS/2. Њг«мвЁЇа®жҐбб®алҐ бЁб⥬л
згўб⢨⥫мл Є ¤ўг¬ бЇҐЄв ¬ Є®бвагЄжЁЁ:
- ЋаЈ Ё§ жЁп ҐЇа®вЁў®аҐзЁў®Ј® ЄҐиЁа®ў Ёп - Љ®Ј¤ ®¤Ё
Їа®жҐбб®а ўлЇ®«пҐв ¤®бвгЇ Є ¤ л¬, ЄҐиЁагҐ¬л¬ ў ¤агЈ®¬
Їа®жҐбб®аҐ, ® Ґ ¤®«¦Ґ Ї®«гзЁвм ҐўҐалҐ ¤ лҐ. …б«Ё
Їа®жҐбб®а ¬®¤ЁдЁжЁагҐв ¤ лҐ, в® ўбҐ Їа®зЁҐ ®Ўа й ойЁҐбп Є
нвЁ¬ ¤ л¬ Їа®жҐбб®ал ¤®«¦л Ї®«гз вм ¬®¤ЁдЁжЁа®ў лҐ
¤ лҐ.
- Ќ ¤Ґ¦ п бўп§м - Џа®жҐбб®ал ¤®«¦л Ё¬Ґвм ¬Ґ¦¤г б®Ў®© бўп§м,
ЁбЄ«оз ойго Ґ¤®ЇгбвЁ¬лҐ ў§ Ё¬лҐ Ї®¬ҐеЁ ЇаЁ ¤®бвгЇҐ Ў®«ҐҐ 祬
®¤®Ј® Їа®жҐбб®а Є ®¤®© Ё в®© ¦Ґ ®Ў« бвЁ Ї ¬пвЁ.
ЌҐЇа®вЁў®аҐзЁў®бвм ЄҐиЁа®ў Ёп а бб¬ ваЁў « бм ўлиҐ, ў ѓ« ўҐ 12.
Ќ ¤Ґ¦®бвм бўп§Ё ®Ўб㦤 Ґвбп ў б«Ґ¤го饬 а §¤Ґ«Ґ, ®ЇЁблў о饬
¬Ґе Ё§¬ "§ еў в " иЁл.
13.1 –ЁЄ«л иЁл б § еў в®¬ Ё ЇбҐў¤®-§ еў в®¬ иЁл
-----------------------------------------------------------------
•®вп аеЁвҐЄвга ¬г«мвЁЇа®жҐбб®але бЁб⥬ ¬®¦Ґв бЁ«м®
®в«Ёз вмбп, ў 楫®¬ ўбҐ ®Ё 㦤 овбп ў ¤Ґ¦®© бўп§Ё б
Ї ¬пвмо. Џа®жҐбб®а ў Їа®жҐббҐ, ЇаЁ¬Ґа, ®Ў®ў«ҐЁп ЎЁв „®бвгЇ
ў ¤ҐбЄаЁЇв®аҐ ᥣ¬Ґв ¤®«¦Ґ ЁбЄ«озЁвм «®ЈЁзлҐ Ї®ЇлвЄЁ ўбҐе
Їа®зЁе Їа®жҐбб®а®ў, ¤® вҐе Ї®а, Ї®Є ®ЇҐа жЁп Ґ § ўҐаиЁвбп.
’ Є¦Ґ вॡгҐвбп ¤Ґ¦ п бўп§м б Їа®зЁ¬Ё Їа®жҐбб®а ¬Ё. •®§пҐў
иЁл ¤®«¦л Ё¬Ґвм ў®§¬®¦®бвм ¤Ґ¦®Ј® ®Ў¬Ґ ¤ л¬Ё.
Ќ ЇаЁ¬Ґа, ЎЁв ў Ї ¬пвЁ ¬®¦Ґв а §¤Ґ«пвмбп ҐбЄ®«мЄЁ¬Ё 宧異 ¬Ё
иЁл Ё ЁбЇ®«м§®ў вмбп Є Є бЁЈ « в®Ј®, зв® ҐЄ®в®алҐ аҐбгабл,
в ЄЁҐ Є Є ЇҐаҐдҐаЁ©®Ґ гбва®©бвў®, 室пвбп ў б®бв®пЁЁ
®¦Ё¤ Ёп. •®§пЁ иЁл ¬®¦Ґв Їа®ўҐаЁвм нв®в ЎЁв, гўЁ¤Ґвм, зв®
аҐбгаб бў®Ў®¤Ґ, Ё Ё§¬ҐЁвм б®бв®пЁҐ ЎЁв . ќв® б®бв®пЁҐ Ўг¤Ґв
гЄ §лў вм ¤агЈЁ¬ Ї®вҐжЁ «мл¬ е®§пҐў ¬ иЁл, зв® аҐбгаб
ЁбЇ®«м§гҐвбп. Џа®Ў«Ґ¬ ¬®¦Ґв ў®§ЁЄгвм ў ⮬ б«гз Ґ, Є®Ј¤
¤агЈ®© е®§пЁ иЁл Їа®зЁвлў Ґв нв®в ЎЁв ў Їа®¬Ґ¦гвЄҐ ўаҐ¬ҐЁ
¬Ґ¦¤г ⥬, Є Є ЇҐаўл© е®§пЁ иЁл Їа®зЁв « ЎЁв, Ё ¬®¬Ґв®¬
Ё§¬ҐҐЁп б®бв®пЁп нв®Ј® ЎЁв . ‚ н⮬ б«гз Ґ ®Ў Ї®вҐжЁ «мле
е®§пЁ иЁл Ўг¤гв бзЁв вм, зв® аҐбгаб бў®Ў®¤Ґ. ЏаЁ
®¤®ўаҐ¬Ґ®© Ї®ЇлвЄҐ ЁбЇ®«м§®ў вм аҐбгаб ®Ё ¬®Јгв Ї®ў«Ёпвм
¤агЈ ¤агЈ Ґ¤®ЇгбвЁ¬л¬ ®Ўа §®¬. Џа®жҐбб®а ЇаҐ¤®вўа й Ґв
в ЄЁҐ бЁвг жЁЁ, Ї®¤¤Ґа¦Ёў п жЁЄ«л иЁл б § еў в®¬; ў® ўаҐ¬п
в ЄЁе жЁЄ«®ў § Їа®бл гЇа ў«ҐЁҐ иЁ®© ЁЈ®аЁаговбп.
Џа®жҐбб®а i486 § йЁй Ґв 楫®бв®бвм ҐЄ®в®але ЄаЁвЁзҐбЄЁе
®ЇҐа жЁ© б Ї ¬пвмо, ў®§¤Ґ©бвўгп ўл室®© бЁЈ « LOCK#. —⥨п
Ё § ЇЁбЁ 64-а §ап¤ле ®ЇҐа ¤®ў Ё (128-а §ап¤лҐ)
ЇаҐ¤ў аЁвҐ«млҐ ўлЎ®аЄЁ Є®¬ ¤ § йЁй овбп ўл室®¬, Є®в®ал©
§лў Ґвбп PLOCK#. ‡ ЁбЇ®«м§®ў ЁҐ нвЁе бЁЈ «®ў ¤«п гЇа ў«ҐЁп
¤®бвгЇ®¬ Є Ї ¬пвЁ б।Ё Їа®жҐбб®а®ў ®вўҐз Ґв а §а Ў®взЁЄ
ЇЇ а в®Ј® ®ЎҐбЇҐзҐЁп.
Џа®жҐбб®а ўв®¬ вЁзҐбЄЁ гбв ў«Ёў Ґв ®¤Ё Ё§ нвЁе бЁЈ «®ў ў®
ўаҐ¬п ҐЄ®в®але ЄаЁвЁзҐбЄЁе ®ЇҐа жЁ© б Ї ¬пвмо. Џа®Ја ¬¬®Ґ
®ЎҐбЇҐзҐЁҐ ¬®¦Ґв § ¤ ў вм ¤®Ї®«ЁвҐ«млҐ ®ЇҐа жЁЁ б Ї ¬пвмо,
¤«п Є®в®але вॡгҐвбп бЁЈ « LOCK#.
‚ зЁб«® б।бвў ЁвҐадҐ©б ¬г«мвЁЇа®жҐбб®а®© ®Ўа Ў®вЄЁ ®ЎйҐЈ®
§ зҐЁп ўе®¤пв:
- ‘ЁЈ « LOCK#, Ї®пў«пойЁ©бп ивламЄҐ Їа®жҐбб®а .
- ‘ЁЈ « PLOCK#, Ї®пў«пойЁ©бп ивламЄҐ Їа®жҐбб®а .
- ЏаҐдЁЄб Є®¬ ¤ LOCK, Ї®§ў®«пойЁ© гбв ®ўЄг бЁЈ « LOCK#
Їа®Ја ¬¬л¬ ®ЎҐбЇҐзҐЁҐ¬.
- Ђўв®¬ вЁзҐбЄ п гбв ®ўЄ бЁЈ « LOCK# ¤«п ҐЄ®в®але ўЁ¤®ў
®ЇҐа жЁ© б Ї ¬пвмо.
- Ђўв®¬ вЁзҐбЄ п гбв ®ўЄ бЁЈ « PLOCK# ¤«п ҐЄ®в®але
¤агЈЁе ўЁ¤®ў ®ЇҐа жЁ© б Ї ¬пвмо.
13.1.1 ЏаҐдЁЄб LOCK Ё бЁЈ « LOCK#
-----------------------------------------------------------------
ЏаҐдЁЄб LOCK Ё ᮮ⢥вбвўгойЁ© Ґ¬г бЁЈ « б«Ґ¤гҐв ЁбЇ®«м§®ў вм
в®«мЄ® ¤«п ЁбЄ«озҐЁп ЇаҐалў Ёп Їа®зЁ¬Ё 宧異 ¬Ё иЁл ®ЇҐа жЁЁ
ЇҐаҐбл«ЄЁ ¤ ле. ЏаҐдЁЄб LOCK ¬®¦Ґв ЁбЇ®«м§®ў вмбп б®
б«Ґ¤гойЁ¬Ё Є®¬ ¤ ¬Ё Їа®жҐбб®а i486, Є®Ј¤ ®Ё ¬®¤ЁдЁжЁагов
®ЇҐа вЁўго Ї ¬пвм. ЏаЁ ЁбЇ®«м§®ў ЁЁ ЇаҐдЁЄб LOCK б «оЎл¬Ё
¤агЈЁ¬Ё Є®¬ ¤ ¬Ё, «ЁЎ® б нвЁ¬Ё ¦Ґ Є®¬ ¤ ¬Ё, ® Є®Ј¤ ®Ё Ґ
ўлЇ®«пов § ЇЁбЁ ў Ї ¬пвм (в.Ґ. Є®Ј¤ ®ЇҐа ¤ § 票п нв®
ॣЁбва) ЈҐҐаЁагҐвбп ЁбЄ«о票Ґ ҐўҐа®Ј® Є®¤ ®ЇҐа жЁЁ.
- Џа®ўҐаЄ Ё Ё§¬ҐҐЁҐ ЎЁв : Є®¬ ¤л BTS, BTR Ё BTC.
- ЋЎ¬Ґ ¤ л¬Ё: Є®¬ ¤л XCHG, XADD Ё CMPXCHG (Є®¬ ¤Ґ XCHG
ЇаҐдЁЄб LOCK Ґ вॡгҐвбп).
- ЂаЁд¬ҐвЁзҐбЄЁҐ Ё «®ЈЁзҐбЄЁҐ ®ЇҐа жЁЁ б ®¤Ё¬ ®ЇҐа ¤®¬:
Є®¬ ¤л INC, DEC, NOT, NEG.
- ЂаЁд¬ҐвЁзҐбЄЁҐ Ё «®ЈЁзҐбЄЁҐ ®ЇҐа жЁЁ б ¤ўг¬п ®ЇҐа ¤ ¬Ё:
Є®¬ ¤л ADD, ADC, SUB, SBB, AND, OR Ё«Ё XOR.
Љ®¬ ¤ б § еў в®¬ Ј а вЁа®ў ® § еў влў Ґв в®«мЄ® ®Ў« бвм
Ї ¬пвЁ, ®ЇаҐ¤Ґ«пҐ¬го ®ЇҐа ¤®¬ § 票п, ® ¬®¦Ґв § еў вЁвм Ё
Ў®«миго ®Ў« бвм Ї ¬пвЁ. Ќ ЇаЁ¬Ґа, вЁЇ®ўлҐ Є®дЁЈга жЁЁ 8086 Ё
80286 § еў влў о⠢ᥠ䨧ЁзҐбЄ®Ґ ¤аҐб®Ґ Їа®бва бвў®.
„®бвгЇ Є ᥬ д®а ¬ (а §¤Ґ«пҐ¬®© Ї ¬пвЁ, ЁбЇ®«м§гҐ¬®© ¤«п
бЁЈ «Ё§ жЁЁ ¬Ґ¦¤г ҐбЄ®«мЄЁ¬Ё Їа®жҐбб®а ¬Ё) ¤®«¦Ґ ўлЇ®«пвмбп
б ЁбЇ®«м§®ў ЁҐ¬ Ё¤ҐвЁз®Ј® ¤аҐб Ё ¤«Ёл. Ќ ЇаЁ¬Ґа, Ґб«Ё ®¤Ё
Їа®жҐбб®а ®Ўа й Ґвбп Є ᥬ д®аг ў д®а¬ ⥠¤®бвгЇ б«®ў , Їа®зЁҐ
Їа®жҐбб®ал Ґ ¤®«¦л ЇаЁ ¤®бвгЇҐ ЁбЇ®«м§®ў вм Ў ©в®ўл© д®а¬ в.
–Ґ«®бв®бвм § еў в Ґ § ўЁбЁв ®в ўла ўЁў Ёп Ї®«п Ї ¬пвЁ.
‘ЁЈ « LOCK# гбв ў«Ёў Ґвбп ¤«п бв®«мЄЁе жЁЄ«®ў иЁл, бЄ®«мЄ®
㦮 ¤«п ®Ў®ў«ҐЁп ўбҐЈ® ®ЇҐа ¤ 楫ЁЄ®¬.
13.1.2 Ђўв®¬ вЁзҐбЄЁ© § еў в
-----------------------------------------------------------------
‘гйҐбвўгҐв ҐбЄ®«мЄ® ЄаЁвЁзҐбЄЁе ®ЇҐа жЁ© б Ї ¬пвмо, ¤«п Є®в®але
Їа®жҐбб®а гбв ў«Ёў Ґв бЁЈ « LOCK# ўв®¬ вЁзҐбЄЁ. ќвЁ
®ЇҐа жЁЁ:
- ЉўЁвЁагойЁҐ ЇаҐалў Ёп.
Џ®б«Ґ § Їа®б ЇаҐалў ЁҐ ўгв२© Є®ва®««Ґа ЁбЇ®«м§гҐв
иЁг ¤ ле ¤«п Ї®бл«ЄЁ Їа®жҐбб®аг ўҐЄв®а ЇаҐалў Ёп ¤«п
Ёбв®зЁЄ ЇаҐалў Ёп. Џа®жҐбб®а гбв ў«Ёў Ґв бЁЈ « LOCK#,
зв®Ўл ЁбЄ«озЁвм Ї®пў«ҐЁҐ ў нв® ўаҐ¬п иЁҐ «оЎле ¤агЈЁе
¤ ле.
- “бв ®ўЄ ЎЁв ‡ пв ў ¤ҐбЄаЁЇв®аҐ TSS.
ЏаЁ ЇҐаҐЄ«о票Ё § ¤ зг Їа®жҐбб®а Їа®ўҐапҐв Ё гбв ў«Ёў Ґв
ЎЁв ‡ пв Ї®«п ’ЁЇ ў ¤ҐбЄаЁЇв®аҐ TSS. „«п ЁбЄ«о票п
®¤®ўаҐ¬Ґ®Ј® ЇҐаҐЄ«озҐЁп ¤ўге Їа®жҐбб®а®ў ®¤г Ё вг ¦Ґ
§ ¤ зг Їа®жҐбб®а гбв ў«Ёў Ґв ў® ўаҐ¬п Їа®ўҐаЄЁ Ё гбв ®ўЄЁ
нв®Ј® ЎЁв бЁЈ « LOCK#.
- ЋЎ®ў«ҐЁҐ ¤ҐбЄаЁЇв®а®ў ᥣ¬Ґв®ў.
ЏаЁ § Јаг§ЄҐ ᥣ¬Ґв®Ј® ¤ҐбЄаЁЇв®а Їа®жҐбб®а гбв ў«Ёў Ґв
ЎЁв „®бвгЇ , Ґб«Ё нв®в ЎЁв ®зЁйҐ. ‚® ўаҐ¬п ¤ ®© ®ЇҐа жЁЁ
Їа®жҐбб®а в Є¦Ґ гбв ў«Ёў Ґв бЁЈ « LOCK#, зв®Ўл ¤ҐбЄаЁЇв®а
Ґ ¬®Ј Ўлвм ¬®¤ЁдЁжЁа®ў ¤агЈЁ¬ Їа®жҐбб®а®¬ ў Їа®жҐбᥠҐЈ®
®Ў®ў«ҐЁп ¤ л¬ Їа®жҐбб®а®¬. „«п нд䥪⨢®бвЁ нвЁе
¤Ґ©бвўЁ© Їа®жҐ¤гал ®ЇҐа жЁ®®© бЁб⥬л, ўлЇ®«пойЁҐ
®Ў®ў«ҐЁҐ ¤ҐбЄаЁЇв®а®ў, ¤®«¦л ЁбЇ®«м§®ў вм б«Ґ¤гойЁҐ и ЈЁ:
€бЇ®«м§®ў вм ЇаЁ ®Ў®ў«ҐЁЁ Ў ©в Їа ў ¤®бвгЇ ¤«п
¬ аЄЁа®ўЄЁ ¤ҐбЄаЁЇв®а Є Є Ґ-ЏаЁбгвбвўго饣® ®ЇҐа жЁо б
§ еў в®¬, Ё § ¤ вм § 票Ґ Ї®«п ’ЁЇ , гЄ §лў о饥
в®, зв® Їа®Ёб室Ёв ®Ў®ў«ҐЁҐ ¤ҐбЄаЁЇв®а .
ЋЎ®ўЁвм Ї®«п ¤ҐбЄаЁЇв®а . (ќв® ¬®¦Ґв Ї®вॡ®ў вм
ҐбЄ®«мЄ® ®ЇҐа жЁ© ¤®бвгЇ Є Ї ¬пвЁ; б«Ґ¤®ў ⥫м®,
ЇаҐдЁЄб LOCK ҐЇаЁ¬ҐЁ¬).
€бЇ®«м§®ў вм ЇаЁ ®Ў®ў«ҐЁЁ Ў ©в Їа ў ¤®бвгЇ ¤«п
¬ аЄЁа®ўЄЁ ¤ҐбЄаЁЇв®а Є Є „®бв®ўҐа®Ј® Ё
ЏаЁбгвбвўго饣® ®ЇҐа жЁо б § еў в®¬.
Ћв¬ҐвЁ¬, зв® Їа®жҐбб®а 386 DX ўбҐЈ¤ ®Ў®ў«пҐв ЎЁв „®бвгЇ ,
Ґ§ ўЁбЁ¬® ®в в®Ј®, ®зЁйҐ ® Ё«Ё гбв ®ў«Ґ. Џа®жҐбб®а i496
®Ў®ў«пҐв ЎЁв „®бвгЇ в®«мЄ® Ґб«Ё ® ҐйҐ Ґ гбв ®ў«Ґ.
- ЋЎ®ў«ҐЁҐ н«Ґ¬Ґв®ў Є в «®Ј бва Ёж Ё бва Ёзле в Ў«Ёж.
ЏаЁ ®Ў®ў«ҐЁЁ н«Ґ¬Ґв®ў Є в «®Ј бва Ёж Ё бва Ёзле в Ў«Ёж
Їа®жҐбб®а ЁбЇ®«м§гҐв жЁЄ«л б § еў в®¬ ЇаЁ гбв ®ўЄҐ ЎЁв®ў
„®бвгЇ Ё "ѓап§л©".
- ‚лЇ®«ҐЁҐ Є®¬ ¤л XCHG.
Џа®жҐбб®а i486 ўбҐЈ¤ гбв ў«Ёў Ґв бЁЈ « LOCK# ў® ўаҐ¬п
Є®¬ ¤л XCHG, ®Ўа й о饩бп Є Ї ¬пвЁ (¤ ¦Ґ ЇаЁ ®вбгвбвўЁЁ
ЇаҐдЁЄб LOCK).
13.1.3 ЏбҐў¤®-§ еў в
-----------------------------------------------------------------
вл४ PLOCK# гЄ §лў Ґв, з⮠⥪гйЁ© жЁЄ« иЁл Ё Ї®б«Ґ¤гойЁ©
¤®«¦л а бб¬ ваЁў вмбп Є Є н«Ґ¬Ґв а п ЇҐаҐбл«Є . ђҐ «Ё§гп
¬Ґе Ё§¬ ЇбҐў¤®-§ еў в , бЁб⥬®Ґ ЇЇ а ⮥ ®ЎҐбЇҐзҐЁҐ ¬®¦Ґв
Ј а вЁа®ў вм § ЇЁбм Ё з⥨Ґ 64-а §ап¤ле ®ЇҐа ¤®ў Є Є
н«Ґ¬Ґв алҐ ®ЇҐа жЁЁ. ЋЇҐа ¤ ¤«п нв®Ј® ¤®«¦Ґ Ўлвм ўла ўҐ Ї®
Ја ЁжҐ ¤ў®©®Ј® б«®ў , зв®Ўл ¤«п § ўҐа襨п звҐЁп Ё«Ё § ЇЁбЁ
вॡ®ў «®бм Ґ Ў®«ҐҐ ¤ўге жЁЄ«®ў иЁл.
ЊҐеЇЁ§¬ ЇбҐў¤®-§ еў в в Є¦Ґ ¬®¦Ґв б«г¦Ёвм ¤«п § йЁвл
ЇаҐ¤ў аЁвҐ«м®© ўлЎ®аЄЁ Є®¬ ¤ Ё Їа®зЁе ®ЇҐа жЁ© ЇҐаҐбл«ЄЁ,
а Ў®в ойЁе Ў®«ҐҐ 祬 б 32 ЎЁв ¬Ё. Џ®¤а®Ў®Ґ ®ЇЁб ЁҐ бЁЈ «
PLOCK#, ҐЈ® ўаҐ¬ҐлҐ е а ЄвҐаЁбвЁЄЁ Ё а §«ЁзлҐ бЇ®б®Ўл
ЁбЇ®«м§®ў Ёп б¬. ў ‘Їа ў®з®¬ ђгЄ®ў®¤б⢥ Ї® ЇЇ а ⮬г
®ЎҐбЇҐзҐЁо Їа®жҐбб®а i486(TM).
Соседние файлы в папке I486