- 64 -





7. MAKE: гвЁ«Ёв  б®Їа®ў®¦¤Ґ­Ёп Їа®Ја ¬¬.
----------------------------------------





7.1. ЋЎйЁҐ ᢥ¤Ґ­Ёп.


€бЇ®«м§®ў ­ЁҐ гвЁ«Ёвл б®Їа®ў®¦¤Ґ­Ёп Їа®Ја ¬¬ MAKE
Ї®§ў®«пҐв  ўв®¬ вЁ§Ёа®ў вм Їа®жҐбб а §а Ў®вЄЁ Ё нЄбЇ«г в жЁЁ
Їа®Ја ¬¬ ­   бᥬЎ«ҐаҐ Ё п§лЄ е ўлб®Є®Ј® га®ў­п. Џ®б«Ґ в®Ј®,
Є Є Ўл«Ё ў­ҐбҐ­л Ё§¬Ґ­Ґ­Ёп ў Ёб室­л© д ©«, ЇаЁ Ї®¬®йЁ MAKE
¬®Јгв Ўлвм ўлЇ®«­Ґ­л ¤Ґ©бвўЁп, ­Ґ®Ўе®¤Ё¬лҐ Ї® ®в®Ўа ¦Ґ­Ёо
нвЁе Ё§¬Ґ­Ґ­Ё© ў ўл室­ле д ©« е.
‚ ®в«ЁзЁҐ ®в ¤агЈЁе Їа®Ја ¬¬ Ї ЄҐв­®© ®Ўа Ў®вЄЁ, MAKE
ба ў­Ёў Ґв ¤ вл Ї®б«Ґ¤­Ёе ¬®¤ЁдЁЄ жЁ© ўл室­ле (楫Ґўле)
д ©«®ў б ¤ в ¬Ё Ї®б«Ґ¤­Ёе ¬®¤ЁдЁЄ жЁ© Ёб室­ле (вॡ㥬ле)
д ©«®ў. MAKE ўлЇ®«­пҐв Ї®бв ў«Ґ­­го § ¤ зг, в®«мЄ® Ґб«Ё
楫Ґў®© д ©« бв аиҐ. ќв® ¬®¦Ґв бнЄ®­®¬Ёвм ¬­®Ј® ўаҐ¬Ґ­Ё,
­ ЇаЁ¬Ґа, ЇаЁ а §а Ў®вЄҐ Їа®Ја ¬¬, ᮤҐа¦ йЁебп ў® ¬­®ЈЁе
Ёб室­ле д ©« е Ё«Ё вॡгойЁе ­ҐбЄ®«мЄЁе и Ј®ў Є®¬ЇЁ«пжЁЁ.








7.2. ‡ ЇгбЄ Ё ®б®ЎҐ­­®бвЁ а Ў®вл MAKE.



ЏҐаҐ¤ § ЇгбЄ®¬ MAKE ¤®«¦Ґ­ Ўлвм ᮧ¤ ­ бЇҐжЁ «м­л©
д ©« ®ЇЁб ­Ё© MAKE, ᮤҐа¦Ё¬®Ґ Є®в®а®Ј® § ¤ Ґв Ї®бв ў«Ґ­­го
§ ¤ зг Ё ®ЇаҐ¤Ґ«пҐв ваҐЎгҐ¬лҐ ¤«п ҐҐ ўлЇ®«­Ґ­Ёп д ©«л.
” ©« ®ЇЁб ­Ё© б®бв®Ёв Ё§ ®¤­®Ј® Ё«Ё ­ҐбЄ®«мЄЁе
®ЇЁб ­Ё© 楫Ё/Ёбв®з­ЁЄ . Љ ¦¤®Ґ ®ЇЁб ­ЁҐ § ¤ Ґвбп ў ўЁ¤Ґ:

<Ё¬п Ёб室­®Ј® д ©« > : <Ё¬Ґ­  вॡ㥬ле д ©«®ў>
<Є®¬ ­¤ >
...

ЏаҐ¤Ї®« Ј Ґвбп, зв® гЄ § ­­л© Ёб室­л© д ©« ¬®¦Ґв Ўлвм
ЇаҐ®Ўа §®ў ­, ¤«п 祣® ¬®Јгв Ї®­ ¤®ЎЁвмбп д ©«л б®
бЇҐжЁдЁжЁа®ў ­­л¬Ё Ї®б«Ґ : Ё¬Ґ­ ¬Ё.

- 65 -


€¬Ґ­  д ©«®ў ЇаЁ ­Ґ®Ўе®¤Ё¬®бвЁ ¬®Јгв Ўлвм б­ Ў¦Ґ­л
бЇҐжЁдЁЄ жЁп¬Ё Їг⥩ Ї®ЁбЄ  ў Ї®¤®Ј« ў«Ґ­Ёпе.
<Љ®¬ ­¤ > а бб¬ ваЁў Ґвбп Є Є Ё¬п ЁбЇ®«­ЁвҐ«м­®Ј®
д ©«  Ё«Ё Є®¬ ­¤  MS-DOS.
Њ®¦Ґв Ўлвм § ¤ ­® «оЎ®Ґ зЁб«® вॡ㥬ле д ©«®ў, ­®
в®«мЄ® ®¤Ё­ Ёб室­л© (楫Ґў®©). €¬Ґ­  вॡ㥬ле д ©«®ў
¤®«¦­л а §¤Ґ«пвмбп е®вп Ўл ®¤­Ё¬ Їа®ЎҐ«®¬. …б«Ё ®­Ё ­Ґ
Ї®¬Ґй овбп ­  ®¤­®© бва®ЄҐ, ¬®¦Ґв Ўлвм бЇҐжЁдЁжЁа®ў ­
ЇаЁ§­ Є Їа®¤®«¦Ґ­Ёп - бЁ¬ў®« \ .
Њ®¦Ґв Ўлвм § ¤ ­® «оЎ®Ґ зЁб«® Є®¬ ­¤ DOS Ё/Ё«Ё Ё¬Ґ­
ЁбЇ®«­ЁвҐ«м­ле д ©«®ў, ­® Є ¦¤ п Є®¬ ­¤  Ё«Ё Ё¬п ¤®«¦­л
а бЇ®« Ј вмбп ­  ®в¤Ґ«м­®© бва®ЄҐ Ё ­ зЁ­ вмбп б бЁ¬ў®«  TAB
Ё«Ё е®вп Ўл ®¤­®Ј® Їа®ЎҐ« . Љ®¬ ­¤л Ё«Ё д ©«л ўлЇ®«­повбп
«Ёим ў ⮬ б«гз Ґ, Ґб«Ё е®вп Ўл ®¤Ё­ Ё§ вॡ㥬ле д ©«®ў Ўл«
¬®¤ЁдЁжЁа®ў ­ Ї®б«Ґ ᮧ¤ ­Ёп Ё«Ё ¬®¤ЁдЁЄ жЁЁ 楫Ґў®Ј®, в.Ґ.
¤®«¦­® ўлЇ®«­пвмбп ®¤­® Ё§ ¤ўге гб«®ўЁ©:
- 楫Ґў®© д ©« бв аиҐ вॡ㥬®Ј®;
- 楫Ґў®© д ©« ­Ґ бгйҐбвўгҐв.
Њ®¦Ґв Ўлвм § ¤ ­® «оЎ®Ґ зЁб«® ®ЇЁб ­Ё© 楫Ё/Ёбв®з­ЁЄ .
Џ®б«Ґ¤­пп бва®Є  ЇаҐ¤л¤г饣® ®ЇЁб ­Ёп ¤®«¦­  ®в¤Ґ«пвмбп ®в
ЇҐаў®© бва®ЄЁ б«Ґ¤го饣® ®ЇЁб ­Ёп е®вп Ўл ®¤­®© бва®Є®©,
ᮤҐа¦ йҐ© ўбҐ Їа®ЎҐ«л.
ЏаЁ Ї®пў«Ґ­ЁЁ бЁ¬ў®«  # ®бв в®Є бва®ЄЁ бзЁв Ґвбп
Є®¬¬Ґ­в аЁҐ¬. ‚ ®Ў« бвЁ Є®¬ ­¤ бЁ¬ў®« # ¬®¦Ґв ­ е®¤Ёвмбп
в®«мЄ® ў 1-© Ї®§ЁжЁЁ бва®ЄЁ.
‘«Ґ¤гҐв Ї®¬­Ёвм, зв® Ї®а冷Є б«Ґ¤®ў ­Ёп ®ЇЁб ­Ё©
Єа ©­Ґ ў ¦Ґ­, в.Є. ў Їа®жҐбᥠЁе ®ва Ў®вЄЁ ¬®Јгв ¬Ґ­пвмбп
¤ вл ¬®¤ЁдЁЄ жЁ© д ©«®ў, зв® ®Є §лў Ґв ў«Ёп­ЁҐ ­  ¤ «м­Ґ©иго
а Ў®вг MAKE.
‡ ЇгбЄ MAKE ®бгйҐбвў«пҐвбп ўўҐ¤Ґ­ЁҐ¬ Є®¬ ­¤­®© бва®ЄЁ
б«Ґ¤го襣® ўЁ¤ :

MAKE [<®ЇжЁЁ>][<¬ Єа®®ЇаҐ¤Ґ«Ґ­Ёп>]<Ё¬п д ©«  ®ЇЁб ­Ё©>

ЋЇжЁЁ Ё ¬ Єа®®ЇаҐ¤Ґ«Ґ­Ёп MAKE ®ЇЁб ­л ў ЇЇ.7.3 Ё 7.4
ᮮ⢥вб⢥­­®.
€¬п д ©«  ®ЇЁб ­Ё© MAKE ®Ўлз­® ­Ґ Ё¬ҐҐв а биЁаҐ­Ёп Ё
б®ўЇ ¤ Ґв б Ў §®ўл¬Ё Ё¬Ґ­ ¬Ё ЁбЇ®«м§гҐ¬ле ў ®ЇЁб ­Ёпе
д ©«®ў, ­® нв® ­Ґ пў«пҐвбп ®Ўп§ вҐ«м­л¬.
…б«Ё MAKE ®Ў­ аг¦Ёў Ґв, зв® ®зҐаҐ¤­®Ґ ®ЇЁб ­ЁҐ Ї®
Є ЄЁ¬-«ЁЎ® ЇаЁзЁ­ ¬ ­Ґ ¬®¦Ґв Ўлвм ®ва Ў®в ­®, ®бгйҐбвў«пҐвбп
ЇҐаҐе®¤ Є б«Ґ¤го饬㠮ЇЁб ­Ёо.
…б«Ё ў Їа®жҐбᥠࠡ®вл ўлпб­Ёвбп, з⮠楫Ґў®© д ©« ­Ґ
бгйҐбвўгҐв, MAKE Їа®¤®«¦ Ґв а Ў®вг, в.Є. нв®в д ©« ¬®¦Ґв
Ўлвм ᮧ¤ ­ Ї®б«Ґ¤гойЁ¬Ё Є®¬ ­¤ ¬Ё. …б«Ё ¦Ґ ­Ґ бгйҐбвўгҐв
ваҐЎгҐ¬л© Ё«Ё Є®¬ ­¤­л© д ©« Ё«Ё ў®§­ЁЄ Ґв ®иЁЎЄ  ЇаЁ
ўлЇ®«­Ґ­ЁЁ Є®¬ ­¤л, MAKE ЇаҐЄа й Ґв бў®о а Ў®вг,   ­ 
Є®­б®«м ўл¤ Ґвбп Ї®пб­по饥 б®®ЎйҐ­ЁҐ.








- 66 -


7.3. ЋЇжЁЁ MAKE.


Љ ¦¤ п ®ЇжЁп MAKE ў Є®¬ ­¤­®© бва®ЄҐ § ЇгбЄ  MAKE
®Ў®§­ з Ґвбп ЇаҐ¤иҐбвўгойЁ¬ бЁ¬ў®«®¬ / .
ЋЇЁб ­ЁҐ ®ЇжЁ© MAKE ЇаЁўҐ¤Ґ­® ­Ё¦Ґ:

/D - ‚л¤ ў вм ­  Є®­б®«м ¤ вл Ї®б«Ґ¤­Ёе ¬®¤ЁдЁЄ жЁ©
Є ¦¤®Ј® бЄ ­Ёа㥬®Ј® д ©« .

/I - €Ј­®аЁа®ў вм Є®¤л ў®§ўа в  Ї®б«Ґ ўл§лў Ґ¬ле
Їа®Ја ¬¬.

/N - ‚л¤ ў вм ­  Є®­б®«м Є®¬ ­¤л, ўлЇ®«­Ґ­ЁҐ Є®в®але
­Ґ ®бгйҐбвў«пҐвбп.

/S - ЌҐ ўл¤ ў вм ­  Є®­б®«м б®®ЎйҐ­Ё©.







7.4. Њ Єа®®ЇаҐ¤Ґ«Ґ­Ёп.


€бЇ®«м§®ў ­ЁҐ ¬ Єа®®ЇаҐ¤Ґ«Ґ­Ё© Ї®§ў®«пҐв ®в«®¦Ёвм
®ЇаҐ¤Ґ«Ґ­ЁҐ Є®¬Ї®­Ґ­в ®ЇЁб ­Ёп а Ў®вл MAKE ¤® ¬®¬Ґ­в 
§ ЇгбЄ . Ћ­Ё ¬®Јгв а бЇ®« Ј вмбп Є Є ў д ©«Ґ ®ЇЁб ­Ё©, в Є Ё
ў Є®¬ ­¤­®© бва®ЄҐ.
‘гйҐбвўгов ¤ўҐ д®а¬л ¬ Єа®®ЇаҐ¤Ґ«Ґ­Ё©:

<Ё¬п>=<§­ зҐ­ЁҐ>
Ё«Ё
$(<Ё¬п>)

ЏҐаў п д®а¬  § ¤ Ґв §­ зҐ­ЁҐ бЁ¬ў®«ЁзҐЄ®¬г Ї а ¬Ґваг,
Є®в®ал© ¬®¦Ґв ЁбЇ®«м§®ў вмбп ¤«п ®ЇаҐ¤Ґ«Ґ­Ёп Є®¬Ї®­Ґ­в
®ЇЁб ­Ёп. „®ЇгбвЁ¬® «оЎ®Ґ зЁб«® Їа®ЎҐ«®ў ¬Ґ¦¤г н«Ґ¬Ґ­в®¬
<Ё¬п> Ё бЁ¬ў®«®¬ = Ё ¬Ґ¦¤г нвЁ¬ бЁ¬ў®«®¬ Ё н«Ґ¬Ґ­в®¬
<§­ зҐ­ЁҐ>, Є®в®алҐ ЁЈ­®аЁаговбп. Џа®ЎҐ«л, бЇҐжЁдЁжЁа®ў ­­лҐ
Ї®б«Ґ <§­ зҐ­ЁҐ>, а бб¬ ваЁў овбп Є Є з бвм §­ зҐ­Ёп.
Џа®ЎҐ«л Є Є з бвм §­ зҐ­Ёп ў Є®¬ ­¤­®© бва®ЄҐ ¤®«¦­л
§ Є«оз вмбп ў ¤ў®©­лҐ  Ї®бва®дл " .
‚ д ©«Ґ ®ЇЁб ­Ё© MAKE Є ¦¤®Ґ ¬ Єа®®ЇаҐ¤Ґ«Ґ­ЁҐ ¤®«¦­®
§ ­Ё¬ вм ®в¤Ґ«м­го бва®Єг.
Ћ¤­® Ё в® ¦Ґ Ё¬п ¬®¦Ґв Ўлвм ®ЇаҐ¤Ґ«Ґ­® ў ­ҐбЄ®«мЄЁе
¬Ґбв е. Џ®¤бв ­®ўЄ  §­ зҐ­Ё© ®бгйҐбвў«пҐвбп ў ᮮ⢥вбвўЁЁ
б® б«Ґ¤гойЁ¬ бЇЁбЄ®¬ (ў Ї®ап¤ЄҐ гЎлў ­Ёп ЇаЁ®аЁвҐв®ў):
1. €§ Є®¬ ­¤®© бва®ЄЁ.
2. €§ д ©«  ®ЇЁб ­Ё© MAKE.
3. €§ ⥪г饣® ®Єа㦥­Ёп (­ ЇаЁ¬Ґа, Є«озҐўлҐ б«®ў 
DOS).


- 67 -


‚в®а п д®а¬  ¬ Єа®®ЇаҐ¤Ґ«Ґ­Ё© ЁбЇ®«м§гҐв §­ зҐ­ЁҐ,
®ЇаҐ¤Ґ«Ґ­­®Ґ ў ¤агЈ®¬ ¬ҐбвҐ. ќ«Ґ¬Ґ­в <Ё¬п> ЇаЁў®¤Ёвбп Є
Ё§®Ўа ¦Ґ­Ёо ­  ॣЁбвॠ§ Ј« ў­ле ЎгЄў.

„®ЇгбЄ Ґвбп ў«®¦Ґ­­®бвм ¬ Єа®®ЇаҐ¤Ґ«Ґ­Ё©, Є®Ј¤ 
ў­гв७­ҐҐ ¬ Єа®®ЇаҐ¤Ґ«Ґ­ЁҐ ®ЇаҐ¤Ґ«пҐвбп зҐаҐ§ ў­Ґи­ҐҐ. ЏаЁ
н⮬ б«Ґ¤гҐв Ё§ЎҐЈ вм ४габЁЁ.
ЏаЁ¬Ґа ४габЁў­®© ў«®¦Ґ­­®бвЁ ¬ Єа®®ЇаҐ¤Ґ«Ґ­Ё©:
A=$(B)
B=$(A)

‘гйҐбвўгов 3 бЇҐжЁ «м­лҐ ¬ Єа®ЇҐаҐ¬Ґ­­лҐ, Ё¬ҐойЁҐ
б«Ґ¤гойЁҐ дЁЄбЁа®ў ­­лҐ §­ зҐ­Ёп:
$* - з бвм Ё¬Ґ­Ё (ЎҐ§ а биЁаҐ­Ёп) 楫Ґў®Ј® д ©« ;
$@ - Ї®«­®Ґ Ё¬п 楫Ґў®Ј® д ©« ;
$** - Ї®«­л© бЇЁб®Є вॡ㥬ле д ©«®ў.
ќвЁ ¬ Єа®ЇҐаҐ¬Ґ­­лҐ ­Ґ вॡго⠯।ў аЁвҐ«м­®Ј®
®ЇЁб ­Ёп Ё ¬®Јгв ЁбЇ®«м§®ў вмбп ў д ©«Ґ ®ЇЁб ­Ё© MAKE.





7.5. Џа ўЁ«  ўлў®¤ .


MAKE ®ЎҐбЇҐзЁў Ґв ў®§¬®¦­®бвм § ¤ ­Ёп Їа ўЁ« ўлў®¤ ,
Є®в®алҐ Ї®¬®Ј ов Їа ўЁ«м­® Ё­вҐаЇаҐвЁа®ў вм ­ҐЇ®«­®бвмо
®ЇаҐ¤Ґ«Ґ­­лҐ Є®­бвагЄжЁЁ.
Џа ўЁ«  ўлў®¤  ¬®Јгв ­ е®¤Ёвмбп ў д ©«Ґ ®ЇЁб ­Ё© MAKE
Ё«Ё ў бЇҐжЁ «м­®¬ д ©«Ґ б Ё¬Ґ­Ґ¬ TOOLS.INI, Ї®ЁбЄ Є®в®а®Ј®
®бгйҐбвў«пҐвбп ­   ЄвЁў­®¬ ¤а ©ўҐ ў Ї®¤®Ј« ў«Ґ­Ёпе,
®ЇаҐ¤Ґ«Ґ­­ле Є®¬ ­¤®© DOS PATH. ‚ д ©«Ґ TOOLS.INI Їа ўЁ« ¬
ўлў®¤  ¤®«¦­  ЇаҐ¤иҐбвў®ў вм бва®Є , ЇҐаўл¬Ё бЁ¬ў®« ¬Ё
Є®в®а®© пў«повбп:
[make]
Џ®ЁбЄ Їа ўЁ«  ўлў®¤  ®бгйҐбвў«пҐвбп ў б«Ґ¤го饩
Ї®б«Ґ¤®ў вҐ«м­®бвЁ:
1. ‚ д ©«Ґ ®ЇЁб ­Ё© MAKE.
2. ‚ д ©«Ґ TOOLS.INI.

Џа ўЁ«  ўлў®¤  § ¤ овбп ў ўЁ¤Ґ:
.<а биЁаҐ­ЁҐ вॡ㥬®Ј® д ©« >.<а биЁаҐ­ЁҐ 楫Ґў®Ј® д ©« >:
<Є®¬ ­¤ >
<Є®¬ ­¤ >
...

ЏаЁ¬Ґа: ᮤҐа¦Ё¬®Ґ д ©«  ®ЇЁб ­Ё© MAKE:
.asm.obj:
MASM $*.asm,,,;
test1.obj: test1.asm
test2.obj: test2.asm
MASM test2.asm;

Џа ўЁ«® ўлў®¤  § ­Ё¬ Ґв ЇҐаўлҐ 2 бва®ЄЁ. Џа®зЁв ў 3-о

- 68 -


бва®Єг, MAKE ®Ў­ аг¦Ёў Ґв, зв® ®ЇЁб ­ЁҐ ­ҐЇ®«­®, в.Є. 4-п
бва®Є  пў«пҐвбп 㦥 ­ з «®¬ б«Ґ¤го饣® ®ЇЁб ­Ёп. Џ®ЁбЄ
­г¦­®Ј® Їа ўЁ«  ўлў®¤  ўҐ¤Ґвбп Ї® б®ўЇ ¤Ґ­Ёо а биЁаҐ­Ё©
д ©«®ў бва®ЄЁ 3 б гЄ § ­­л¬Ё ў Їа ўЁ«Ґ. Џ®б«Ґ ®влбЄ ­Ёп
Їа ўЁ«  MAKE, ®Ўа Ў®в ў ¬ Єа®ЇҐаҐ¬Ґ­­го $*, ўлЇ®«­пҐв
Є®¬ ­¤­го бва®Єг:
MASM test1.asm,,;
4-п Ё 5-п бва®ЄЁ ЇаҐбв ў«пов б®Ў®© § Є®­зҐ­­®Ґ
®ЇЁб ­ЁҐ, Ё ¤«п ҐЈ® Ё­вҐаЇаҐв жЁЁ ЁбЇ®«м§®ў ­Ёп Їа ўЁ«
ўлў®¤  ­Ґ вॡгҐвбп.
Соседние файлы в папке cистема программирования на макроассемблере ms-dos, cправочное руководство