- 16 -





4. “б«®ў­лҐ ¤ЁаҐЄвЁўл.


џ§лЄ  бᥬЎ«Ґа  ўЄ«оз Ґв ў ᥡп гб«®ў­лҐ ¤ЁаҐЄвЁўл
¤ўге вЁЇ®ў: ¤ЁаҐЄвЁўл гб«®ў­®Ј®  бᥬЎ«Ёа®ў ­Ёп Ё ¤ЁаҐЄвЁўл
гб«®ў­®© ЈҐ­Ґа жЁЁ ®иЁЎ®Є. „ЁаҐЄвЁў  гб«®ў­®Ј®
 бᥬЎ«Ёа®ў ­Ёп ®ЎҐбЇҐзЁў Ґв  бᥬЎ«Ёа®ў ­ЁҐ Ў«®Є 
ЇаҐ¤«®¦Ґ­Ё© «Ёим ў ⮬ б«гз Ґ, Ґб«Ё ЁбвЁ­­® § ¤ ­­®Ґ ў
¤ЁаҐЄвЁўҐ гб«®ўЁҐ. „ЁаҐЄвЁў  гб«®ў­®© ЈҐ­Ґа жЁЁ ®иЁЎЄЁ
Їа®ўҐапҐв § ¤ ­­®Ґ ў ­Ґ© гб«®ўЁҐ Ё ЈҐ­ҐаЁагҐв ®иЁЎЄг, в.Ґ.
д®а¬ЁагҐв б®®ЎйҐ­ЁҐ ў «ЁбвЁ­ЈҐ Їа®Ја ¬¬л Ё ®ЎҐбЇҐзЁў Ґв Є®¤
ў®§ўа в , ᮮ⢥вбвўгойЁ© ­ «ЁзЁо ®иЁЎЄЁ ў Ёб室­®¬ ⥪бвҐ,
Ґб«Ё нв® гб«®ўЁҐ ЁбвЁ­­®.
„ЁаҐЄвЁўл ®Ў®Ёе вЁЇ®ў Їа®ўҐапов гб«®ўЁп ўаҐ¬Ґ­Ё
 бᥬЎ«Ёа®ў ­Ёп. Ћ­Ё ­Ґ ¬®Јгв  ­ «Ё§Ёа®ў вм гб«®ўЁп ўаҐ¬Ґ­Ё
ўлЇ®«­Ґ­Ёп, в.Є. Ї®б«Ґ¤­ЁҐ ­Ґ ¬®Јгв Ўлвм ўлзЁб«Ґ­л ¤® в®Ј®,
Є Є Їа®Ја ¬¬  ­ з­Ґв ўлЇ®«­пвмбп. ‚ гб«®ўЁпе ¤®ЇгбвЁ¬л «Ёим
ўла ¦Ґ­Ёп, ЇаҐ®Ўа §гҐ¬лҐ ў Є®­бв ­вл ЇаЁ  бᥬЎ«Ёа®ў ­ЁЁ.
„ЁаҐЄвЁўл гб«®ў­®Ј®  бᥬЎ«Ёа®ў ­Ёп Ё ¤ЁаҐЄвЁўл
гб«®ў­®© ЈҐ­Ґа жЁЁ ®иЁЎ®Є ®ЇЁб ­л ў б«Ґ¤гойЁе ¤ўге а §¤Ґ« е.







4.1. „ЁаҐЄвЁўл гб«®ў­®Ј®  бᥬЎ«Ёа®ў ­Ёп.


„ЁаҐЄвЁўл гб«®ў­®Ј®  бᥬЎ«Ёа®ў ­Ёп Ї®§ў®«пов ў
­ҐЄ®в®а®© б⥯Ґ­Ё гЇа ў«пвм Їа®жҐбᮬ  бᥬЎ«Ёа®ў ­Ёп. ‚
§ ўЁбЁ¬®бвЁ ®в §­ зҐ­Ё© гб«®ўЁ© ўаҐ¬Ґ­Ё  бᥬЎ«Ёа®ў ­Ёп,
Їа®ўҐа塞ле нвЁ¬Ё ¤ЁаҐЄвЁў ¬Ё, ¬ Єа® бᥬЎ«Ґа ¬®¦Ґв
Їа®ЇгбвЁвм ®Ўа Ў®вЄг 楫®Ј® Ў«®Є  ЇаҐ¤«®¦Ґ­Ё© Ё«Ё ®Ўа Ў®в вм
ў¬Ґбв® ­ҐЈ® ¤агЈ®© ( «мвҐа­ вЁў­л©) Ў«®Є.
Ѓ«®Є ЇаҐ¤«®¦Ґ­Ё© гб«®ў­®Ј®  бᥬЎ«Ёа®ў ­Ёп Ё¬ҐҐв
б«Ґ¤гойЁ© ®ЎйЁ© ўЁ¤:

¤ЁаҐЄвЁў -гб«®ў­®Ј®- бᥬЎ«Ёа®ў ­Ёп
..........
ЇаҐ¤«®¦Ґ­Ёп  бᥬЎ«Ґа  Ё«Ё Ё­бвагЄжЁЁ
..........
[[ ELSE ]]
..........
ЇаҐ¤«®¦Ґ­Ёп  бᥬЎ«Ґа  Ё«Ё Ё­бвагЄжЁЁ
..........
ENDIF

- 17 -



„ЁаҐЄвЁў -гб«®ў­®Ј®- бᥬЎ«Ёа®ў ­Ёп § ¤ Ґв гб«®ўЁҐ,
ЇаЁ ЁбвЁ­­®¬ §­ зҐ­ЁЁ Є®в®а®Ј® Ўг¤гв  бᥬЎ«Ёа®ў вмбп
ЇаҐ¤«®¦Ґ­Ёп, а бЇ®«®¦Ґ­­лҐ ­ҐЇ®б।б⢥­­® Ї®б«Ґ ¤ЁаҐЄвЁўл Ё
¤® Є«о祢®Ј® б«®ў  ELSE, Ё«Ё, Ґб«Ё ®­® ®Їг饭®, ¤® Є®­ж 
Ў«®Є , ®Ў®§­ з Ґ¬®Ј® ENDIF. …б«Ё гб«®ўЁҐ ­Ґ ўлЇ®«­пҐвбп,
 бᥬЎ«ЁагҐвбп ЈагЇЇ  ЇаҐ¤«®¦Ґ­Ё©, а бЇ®«®¦Ґ­­ п ¬Ґ¦¤г
Є«о祢묨 б«®ў ¬Ё ESLE Ё ENDIF,   Ґб«Ё ELSE ®Їг饭®, MASM
Їа®ЇгбЄ Ґв Ў«®Є.
„®ЇгбЄ Ґвбп ў«®¦Ґ­­®бвм ¤ЁаҐЄвЁў. Њ ЄбЁ¬ «м­ п Ј«гЎЁ­ 
ў«®¦Ґ­Ёп - 255.
‚ Є зҐб⢥ ¤ЁаҐЄвЁўл-гб«®ў­®Ј®- бᥬЎ«Ёа®ў ­Ёп ¬®Јгв
§ ¤ ў вмбп Є®­бвагЄжЁЁ, ЇаЁўҐ¤Ґ­­лҐ ў в Ў«ЁжҐ 4.1.


’ Ў«Ёж  4.1. „ЁаҐЄвЁўл гб«®ў­®Ј®  бᥬЎ«Ёа®ў ­Ёп.
____________________________________________
| |
| IF ўла ¦Ґ­ЁҐ |
|__________________________________________|
| |
| IFE ўла ¦Ґ­ЁҐ |
|__________________________________________|
| |
| IF1 |
|__________________________________________|
| |
| IF2 |
|__________________________________________|
| |
| IFDEF Ё¬п |
|__________________________________________|
| |
| IFNDEF Ё¬п |
|__________________________________________|
| |
| IFB < аЈг¬Ґ­в> |
|__________________________________________|
| |
| IFNB < аЈг¬Ґ­в> |
|__________________________________________|
| |
| IFIDN < аЈг¬Ґ­в-1>,< аЈг¬Ґ­в-2> |
|__________________________________________|
| |
| IFDIF < аЈг¬Ґ­в-2>,< аЈг¬Ґ­в-2> |
|__________________________________________|


‚ б«гз Ґ ¤ЁаҐЄвЁўл IF Ў«®Є  бᥬЎ«ЁагҐвбп, Ґб«Ё
гЄ § ­­®Ґ ўла ¦Ґ­ЁҐ ЁбвЁ­­® (­Ґ ­г«м). „«п ¤ЁаҐЄвЁўл IFE
Ў«®Є  бᥬЎ«ЁагҐвбп, Ґб«Ё ўла ¦Ґ­ЁҐ «®¦­® (­г«м). ‚ла ¦Ґ­ЁҐ
¤®«¦­® Ё¬Ґвм  Ўб®«ов­®Ґ §­ зҐ­ЁҐ Ё ­Ґ ¬®¦Ґв ᮤҐа¦ вм
ббл«®Є ўЇҐаҐ¤.
„ЁаҐЄвЁўл IF1 Ё IF2 Їа®ўҐапов ­®¬Ґа Їа®е®¤   бᥬЎ«Ґа 

- 18 -


Ё ®ЎҐбЇҐзЁў ов ®Ўа Ў®вЄг Ў«®Є  в®«мЄ® ­  1-¬ (IF1) Ё«Ё
в®«мЄ® ­  2-¬ (IF2) Їа®е®¤Ґ.

ЏаЁ¬Ґа (ўл¤ з  б®®ЎйҐ­Ё© ­  Є®­б®«м):

IF1
%OUT Pass 1
ELSE
%OUT Pass 2
ENDIF

„ЁаҐЄвЁўл IFDEF Ё IFNDEF Їа®ўҐапов, ®ЇаҐ¤Ґ«Ґ­® «Ё ў
Їа®Ја ¬¬Ґ гЄ § ­­®Ґ Ё¬п. IFDEF ®ЎҐбЇҐзЁў Ґв  бᥬЎ«Ёа®ў ­ЁҐ,
Ґб«Ё нв® Ё¬п ®ЇаҐ¤Ґ«Ґ­® Є Є ¬ҐвЄ , ЇҐаҐ¬Ґ­­ п Ё«Ё бЁ¬ў®«,
IFNDEF - Ґб«Ё Ё¬п ­Ґ ®ЇаҐ¤Ґ«Ґ­®. ‡ ¬ҐвЁ¬, зв® Ґб«Ё ў
Є зҐб⢥ Ё¬Ґ­Ё § ¤ ­  ббл«Є  ўЇҐаҐ¤, ®­  бзЁв Ґвбп
­Ґ®ЇаҐ¤Ґ«Ґ­­®© ­  1-¬ Їа®е®¤Ґ Ё ®ЇаҐ¤Ґ«Ґ­­®© ­  2-¬.
€¬Ґ­  ¬®¦­® ®ЇаҐ¤Ґ«пвм ­Ґ в®«мЄ® гЄ § ­ЁҐ¬ Ёе ў
ᮮ⢥вбвўго饩 Ї®§ЁжЁЁ ЇаЁ ¬­Ґ¬®­ЁЄҐ Ё­бвагЄжЁЁ Ё«Ё
¤ЁаҐЄвЁў е ®ЇаҐ¤Ґ«Ґ­Ёп Ї ¬пвЁ, ­® ў ®ЇжЁЁ  бᥬЎ«Ґа  /D, зв®
Ї®§ў®«пҐв гЇа ў«пвм б®бв ў®¬  бᥬЎ«Ёа㥬®© Їа®Ја ¬¬л ЎҐ§
Ё§¬Ґ­Ґ­Ёп Ёб室­®Ј® д ©« .
„ЁаҐЄвЁўл IFB Ё IFNB Їа®ўҐапов §­ зҐ­ЁҐ гЄ § ­­®Ј®
 аЈг¬Ґ­в , ва Єв㥬®Ј® Є Є бва®Є  бЁ¬ў®«®ў, Ё ўл§лў ов
 бᥬЎ«Ёа®ў ­ЁҐ Ў«®Є , Ґб«Ё  аЈг¬Ґ­в пў«пҐвбп Їа®ЎҐ«®¬ (IFB)
Ё«Ё ®в«ЁзҐ­ ®в Їа®ЎҐ«  (IFNB). ЂаЈг¬Ґ­в ¬®¦Ґв Ўлвм Ё¬Ґ­Ґ¬,
зЁб«®¬ Ё«Ё ўла ¦Ґ­ЁҐ¬. ‘Є®ЎЄЁ < Ё > ®Ўп§ вҐ«м­л.
„ЁаҐЄвЁўл IFB Ё IFNB ўўҐ¤Ґ­л ¤«п ЁбЇ®«м§®ў ­Ёп Ёе ў
¬ Єа®®ЇаҐ¤Ґ«Ґ­Ёпе, Ј¤Ґ ®­Ё ¬®Јгв гЇа ў«пвм гб«®ў­л¬
 бᥬЎ«Ёа®ў ­ЁҐ¬, ®б­®ўлў пбм ­  ⮬, § ¤ ­ Ё«Ё ­Ґв Ї а ¬Ґва
¬ Єа®®ЇаҐ¤Ґ«Ґ­Ёп. ‚ н⮬ б«гз Ґ ў Є зҐб⢥  аЈг¬Ґ­в  б«Ґ¤гҐв
§ ¤ ў вм ®¤Ё­ Ё§ д®а¬ «м­ле Ї а ¬Ґва®ў ¬ Єа®®ЇаҐ¤Ґ«Ґ­Ёп.
„ЁаҐЄвЁўл IFDIF Ё IFIDN ба ў­Ёў ов бЇҐжЁдЁжЁа®ў ­­лҐ
¤«п ­Ёе  аЈг¬Ґ­вл, Є®в®алҐ ва Євговбп Є Є бЁ¬ў®«м­лҐ бва®ЄЁ
(б гзҐв®¬ ॣЁбва ), Ё ўл§лў ов  бᥬЎ«Ёа®ў ­ЁҐ Ў«®Є  ЇаЁ Ёе
Ё¤Ґ­вЁз­®бвЁ (IFIDN) Ё«Ё ­ҐЁ¤Ґ­вЁз­®бвЁ (IFDIF). ЂаЈг¬Ґ­вл
¬®Јгв Ўлвм Ё¬Ґ­ ¬Ё, зЁб« ¬Ё Ё«Ё ўла ¦Ґ­Ёп¬Ё. ‘Є®ЎЄЁ < Ё >
®Ўп§ вҐ«м­л. ЂаЈг¬Ґ­вл а §¤Ґ«повбп § Їпв®©.
„ЁаҐЄвЁўл IFDIF Ё IFIDN ўўҐ¤Ґ­л ¤«п ЁбЇ®«м§®ў ­Ёп Ёе ў
¬ Єа®®ЇаҐ¤Ґ«Ґ­Ёпе, Ј¤Ґ ®­Ё ¬®Јгв гЇа ў«пвм гб«®ў­л¬
 бᥬЎ«Ёа®ў ­ЁҐ¬,  ­ «Ё§Ёагп §­ зҐ­Ёп ЇҐаҐ¤ ў Ґ¬ле ў
¬ Єа®®ЇаҐ¤Ґ«Ґ­ЁҐ Ї а ¬Ґва®ў. ‚ н⮬ б«гз Ґ ў Є зҐб⢥
 аЈг¬Ґ­в®ў б«Ґ¤гҐв § ¤ ў вм д®а¬ «м­лҐ Ї а ¬Ґвал
¬ Єа®®ЇаҐ¤Ґ«Ґ­Ёп.






4.2. „ЁаҐЄвЁўл гб«®ў­®© ЈҐ­Ґа жЁЁ ®иЁЎ®Є.


€бЇ®«м§®ў ­ЁҐ ¤ЁаҐЄвЁў гб«®ў­®© ЈҐ­Ґа жЁЁ ®иЁЎ®Є
Ї®§ў®«пҐв Є®­ва®«Ёа®ў вм бЁвг жЁЁ, ­Ґ ­ иҐ¤иЁҐ ®ва ¦Ґ­Ёп ў

- 19 -


бЁ­в ЄбЁбҐ п§лЄ   бᥬЎ«Ґа . Ќ ЇаЁ¬Ґа, ЇаЁ Ї®¬®йЁ в Є®©
¤ЁаҐЄвЁўл ¬®¦­® ўл§ў вм ЈҐ­Ґа жЁо б®®ЎйҐ­Ёп ®Ў ®иЁЎЄҐ Ё,
ᮮ⢥вб⢥­­®, гбв ­®ўЄг ¬Ё­Ё¬ «м­®Ј® Є®¤  ў®§ўа в 
ва ­б«пв®а  ў б«гз Ґ ЁбЇ®«м§®ў ­Ёп ॣЁбва  AX, зв® б в®зЄЁ
§аҐ­Ёп бЁ­в ЄбЁб  ­Ґ пў«пҐвбп ®иЁЎЄ®©, ­® ¬®¦Ґв Ўлвм
­Ґ¤®ЇгбвЁ¬® Ї® «®ЈЁЄҐ Їа®Ја ¬¬л.
ЋЎа Ў®вЄ  «оЎ®© ¤ЁаҐЄвЁўл гб«®ў­®© ЈҐ­Ґа жЁЁ ®иЁЎ®Є,
Єа®¬Ґ .ERR1, б ЁбвЁ­­л¬ гб«®ўЁҐ¬ нЄўЁў «Ґ­в­  а бЇ®§­ ў ­Ёо
д в «м­®© ®иЁЎЄЁ (б Є®¤®¬ ў®§ўа в  7), ЇаЁ Є®в®а®© MASM
г­Ёз⮦ Ґв ®ЎкҐЄв­л© д ©«.
”®а¬ вл ¤ЁаҐЄвЁў Ё ᮮ⢥вбвўгойЁҐ Ё¬ б®®ЎйҐ­Ёп MASM
ЇаЁўҐ¤Ґ­л ў в Ў«ЁжҐ 4.2.


’ Ў«Ёж  4.2. „ЁаҐЄвЁўл гб«®ў­®© ЈҐ­Ґа жЁЁ ®иЁЎ®Є.
____________________________________________________________
| | |
| ‘Ё­в ЄбЁб | Ќ®¬Ґа Ё ⥪бв б®®ЎйҐ­Ёп |
|___________________|______________________________________|
| | |
| .ERR1 | 87 Forced error - pass 1 |
|___________________|______________________________________|
| | |
| .ERR2 | 88 Forced error - pass 2 |
|___________________|______________________________________|
| | |
| .ERR | 89 Forced error |
|___________________|______________________________________|
| | |
| .ERRE ўла ¦Ґ­ЁҐ | 90 Forced error - expression equals 0|
|___________________|______________________________________|
| | |
| .ERRNZ ўла ¦Ґ­ЁҐ | 91 Forced error - expression not |
| | equals 0 |
|___________________|______________________________________|
| | |
| .ERRNDEF Ё¬п | 92 Forced error - symbol not defined |
|___________________|______________________________________|
| | |
| .ERRDEF Ё¬п | 93 Forced error - symbol defined |
|___________________|______________________________________|
| | |
| .ERRB <бва®Є > | 94 Forced error - string blank |
|___________________|______________________________________|
| | |
| .ERRNB <бва®Є > | 95 Forced error - string not blank |
|___________________|______________________________________|
| | |
| .ERRIDN <бва®- | 96 Forced error - strings identical |
| Є -1>,<бва®Є -2> | |
|___________________|______________________________________|
| | |
| .ERRDIF <бва®- | 97 Forced error - strings different |
| Є -2>,<бва®Є -2> | |
|___________________|______________________________________|

- 20 -




„ЁаҐЄвЁў  .ERR ®ЎҐбЇҐзЁў Ґв ЎҐ§гб«®ў­го ЈҐ­Ґа жЁо
б®®ЎйҐ­Ёп ®Ў ®иЁЎЄҐ. „ЁаҐЄвЁўл .ERR1 Ё .ERR2 в Є¦Ґ
ЎҐ§гб«®ў­® ў®§¤Ґ©бвўгов ᮮ⢥вб⢥­­® «Ёим ­  1-© Ё 2-©
Їа®е®¤ ва ­б«пв®а . „ЁаҐЄвЁў  .ERR1 ўл§лў Ґв ­Ґ д в «м­го
®иЁЎЄг,   ЇаҐ¤гЇаҐ¦¤Ґ­ЁҐ.
„ЁаҐЄвЁўл .ERRNZ Ё .ERRE ўлзЁб«пов §­ зҐ­ЁҐ гЄ § ­­®Ј®
ўла ¦Ґ­Ёп Ё ®ЎҐбЇҐзЁў ов Ї®пў«Ґ­ЁҐ б®®ЎйҐ­Ёп ®Ў ®иЁЎЄҐ
ᮮ⢥вб⢥­­® ў б«гз Ґ ЁбвЁ­­®бвЁ (1) Ё«Ё «®¦­®бвЁ (0)
нв®Ј® ўла ¦Ґ­Ёп.
„ЁаҐЄвЁў  .ERRDEF ®ЎҐбЇҐзЁў Ґв Ї®пў«Ґ­ЁҐ д в «м­®©
®иЁЎЄЁ, Є®Ј¤  гЄ § ­­®Ґ Ё¬п ®ЇаҐ¤Ґ«Ґ­® ў Їа®Ја ¬¬Ґ Є Є
¬ҐвЄ , ЇҐаҐ¬Ґ­­ п Ё«Ё бЁ¬ў®«,   ¤ЁаҐЄвЁў  .ERRNDEF - Є®Ј¤ 
Ё¬п ҐйҐ ­Ґ ®ЇаҐ¤Ґ«Ґ­®. …б«Ё нв® Ё¬п пў«пҐвбп ббл«Є®© ўЇҐаҐ¤,
®­® бзЁв Ґвбп ­Ґ®ЇаҐ¤Ґ«Ґ­­л¬ ­  1-¬ Їа®е®¤Ґ Ё ®ЇаҐ¤Ґ«Ґ­­л¬
­  2-¬. ќвЁ ¤ЁаҐЄвЁўл а Ў®в ов ­  1-¬ Їа®е®¤Ґ.
„ЁаҐЄвЁўл .ERRB Ё .ERRNB  ­ «Ё§Ёагов гЄ § ­­го бва®Єг
Ё ®ЎҐбЇҐзЁў ов ЈҐ­Ґа жЁо б®®ЎйҐ­Ёп ®Ў ®иЁЎЄҐ, Ґб«Ё нв 
бва®Є  ᮮ⢥вб⢥­­® ᮤҐа¦Ёв ўбҐ Їа®ЎҐ«л Ё«Ё ­Ґв.
„ЁаҐЄвЁўл .ERRIDN Ё .ERRDIF ўл§лў ов Ї®пў«Ґ­ЁҐ
д в «м­®© ®иЁЎЄЁ, Ґб«Ё гЄ § ­­лҐ бва®ЄЁ ᮮ⢥вб⢥­­®
Ё¤Ґ­вЁз­л Ё«Ё а §«Ёз­л.
Соседние файлы в папке cистема программирования на макроассемблере ms-dos, cправочное руководство