Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Turbo Pascal 5.0 / TPROFDOC / CH2
.TXT ѓ‹Ђ‚Ђ 2: ‚Ќ“’ђ€ ЏђЋ”€‹€ђЋ‚™€ЉЂ
„«п в®Ј®, зв®Ўл Ё§ў«Ґзм Ё§ бЁб⥬л Turbo Profiler ЁЎ®«миго
Ї®«м§г, Ґ®Ўе®¤Ё¬® Ї®Ё¬ вм ўгв२Ґ ¬Ґе Ё§¬л ҐҐ а Ў®вл. ‡ -
ЁҐ в®Ј®, Є ЄЁ¬ ®Ўа §®¬ ¤Ґ©бвўгҐв Їа®дЁ«Ёа®ўйЁЄ, ўбваҐвЁў ¬ аЄҐа
"®Ў« бвЁ", Ё«Ё в®Ј®, зв® Їа®Ёб室Ёв Є ¦¤л© а §, Є®Ј¤ Їа®дЁ«Ё-
а®ўйЁЄ ЇаҐалў Ґв ўлЇ®«ҐЁҐ Їа®Ја ¬¬л Ї®§ў®«Ёв ‚ ¬ ®вв®зЁвм ў иг
вҐеЁЄг Їа®дЁ«Ёа®ў Ёп, в Є¦Ґ Ў®«ҐҐ ¤ҐЄў в® § ¤ ў вм вЁЇ
бв вЁбвЁзҐбЄ®© Ёд®а¬ жЁЁ, Є®в®аго Ґ®Ўе®¤Ё¬® б®Ўа вм ¤«п в®© Ё«Ё
Ё®© "®Ў« бвЁ", Ё ЁвҐаЇаҐвЁа®ў вм Ї®«гзҐлҐ ¤ лҐ.
ђ бᬮваЁ¬ Ёбе®¤л© вҐЄбв PTOLL Ё PTOLLPAS:
* Copyright (c) 1990, Borland International */
#include <stdio.h>
#include <dos.h> /* contains prototype for delay() */
main()
{
printf("Entering main\n");
route66();
printf("Back in main\n");
delay(1000);
highway80();
printf("Back in main\n");
delay(1000);
printf("Leaving main\n\n");
}
route66()
{
printf("Entering Route 66\n");
delay(2000);
printf("Leaving Route 66\n");
}
highway80()
{
printf("Entering Highway 80\n");
delay(2000);
printf("Leaving Highway 80\n");
}
{ Copyright (c) 1990, Borland International }
Uses Crt;
Procedure Route66;
Begin
Writeln( 'Entering Route 66' );
Delay(2000);
Writeln( 'Leaving Route 66' );
End;
Procedure Highway80;
Begin
Writeln( 'Entering Highway 80' );
Delay(2000);
Writeln( 'Leaving Highway 80' );
End;
Begin
Writeln( 'Entering main' );
route66;
Writeln( 'back in main' );
Delay(1000);
highway80;
Writeln( 'back in main' );
delay(100);
Writeln( 'Leaving main' );
End.
‡ ¤ ЁҐ ў Є зҐб⢥ "®Ў« б⥩" ўбҐе Ї®¤Їа®Ја ¬¬ ў а бб¬ ваЁ-
ў Ґ¬®¬ ¬®¤г«Ґ ўҐ¤Ґв Є ®Ўа §®ў Ёо зҐвлаҐе ЇҐаҐ¬Ґле ¤«п Ї®¤бзҐв
ўаҐ¬ҐЁ Ё зҐвлаҐе ЇҐаҐ¬Ґле ¤«п Ї®¤бзҐв Є®«ЁзҐбвў ўл§®ў®ў.
ђЁб.2.1 ЏҐаҐ¬ҐлҐ ¤«п Ї®¤бзҐв ўаҐ¬ҐЁ ўлЇ®«ҐЁп Ё зЁб«
ўл§®ў®ў Ї®¤Їа®Ја ¬¬ ¤«п PTOLL/PTOLLPAS
‚®®Ўа ¦ Ґ¬лҐ ЇгЄвл бЎ®а Ї®¤®а®¦®© Ї®и«Ёл.
‚ ¤ ®¬ а §¤Ґ«Ґ ¬л Їа®б«Ґ¤Ё¬ § ўлЇ®«ҐЁҐ¬ Їа®Ја ¬¬л Ё
а бᬮваЁ¬, зв® Їа®Ёб室Ёв ЇаЁ ўбваҐзҐ ¬ аЄҐа®ў "®Ў« бвЁ". ќв®в
Їа®жҐбб ¬®¦® ЇаҐ¤бв ў«пвм ᥡҐ Є Є Їа®е®¤ зҐаҐ§ ап¤ ЇгЄв®ў, ў
Є®в®але б®ЎЁа Ґвбп Ї®¤®а®¦ п Ї®и«Ё . Љ Є в®«мЄ® ‚л Їа®е®¤ЁвҐ
зҐаҐ§ в Є®© ЇгЄв, ‚л ба §г ¦Ґ Ї®Ї ¤ ҐвҐ гз бв®Є ¤®а®ЈЁ, ®в®-
бпйЁ©бп Є ¤ ®¬г ЇгЄвг Ё Їа®¤ўЁЈ ҐвҐбм Ї® н⮬г гз бвЄг ¤® вҐе
Ї®а, Ї®Є Ґ Ї®Ї ¤ҐвҐ б«Ґ¤гойЁ© ЇгЄв бЎ®а Ї®и«Ёл.
ЏҐаҐ¤ ⥬, Є Є ‚л Ї®Ї ¤ ҐвҐ ЇҐаўл© в Є®© ЇгЄв Ё Ї®б«Ґ
в®Ј®, Є Є ЇаҐ®¤®«Ґў ҐвҐ Ї®б«Ґ¤Ё©, ‚л 室ЁвҐбм бў®Ў®¤®©
вҐааЁв®аЁЁ. Љ ¦¤л© ЇгЄв Ё¬ҐҐв Ёд®а¬ жЁо ® ⮬, Є Є®Ґ Є®«ЁзҐбвў®
ўаҐ¬ҐЁ ‚л § ва вЁ«Ё Їа®е®¦¤ҐЁҐ гз бвЄ ¤®а®ЈЁ, ®в®бп饣®бп
Є ¤ ®¬г ЇгЄвг, в Є¦Ґ ® ⮬, бЄ®«мЄ® а § ‚л Їа®и«Ё зҐаҐ§ нв®в
ЇгЄв. Ќ® а бб¬ ваЁў Ґ¬ п ¤®а®Ј Ё¬ҐҐв ®¤® в Ёб⢥®Ґ бў®©бв-
ў®, Є®в®а®Ґ § Є«оз Ґвбп ў ⮬, зв® ¤ўЁЈ вмбп Ї® Ґ¬г ‚л ¬®¦ҐвҐ
в®«мЄ® ў ®¤®¬ Їа ў«ҐЁЁ. ЏаЁ н⮬ ®ЇҐа в®ал жЁЄ« Ё ЇҐаҐе®¤
Ї®¤®Ўл ў®§¤гил¬ ¬®бв ¬ Ї® Є®в®ал¬ ‚ б ЇҐаҐЎа блў ов Є ЄЁҐ-в®
¤агЈЁҐ гз бвЄЁ ¤®а®ЈЁ. ‚® ўаҐ¬п ў 襣® Їа®¤ўЁ¦ҐЁп Ї® ¤®а®ЈҐ ў
Їа®жҐбᥠўлЇ®«ҐЁп Їа®Ја ¬¬л PTOLL, ¬л Ўг¤Ґ¬ бзЁв вм Є ¦¤го Ї®-
¬ҐзҐго ¬Ё "®Ў« бвм" ®в१Є®¬ нв®© ¤®а®ЈЁ б® бв®пйЁ¬Ё ҐЈ®
Є®ж е ў®®Ўа ¦ Ґ¬л¬Ё ЇгЄв ¬Ё ¤«п бЎ®а Ї®и«Ёл.
ђ бᬮваЁ¬, Є ЄЁ¬ ®Ўа §®¬ Їа®Ёб室Ёв бЎ®а ўаҐ¬Ґ®© Ё Є®«Ё-
зҐб⢥®© Ёд®а¬ жЁЁ ¤«п вЁЇЁз®© Їа®Ја ¬¬л, ЇЁб ®© Џ б-
Є «Ґ Ё«Ё ‘.
ЏҐаҐ¤ ⥬, Є Є ‚л Ї®Ї ¤ҐвҐ ў дгЄжЁо main, ўлЇ®«пҐвбп бв а-
в®ўл© Є®¤ ‘. ќв® ҐйҐ Ї®Є ЁзҐ© п вҐааЁв®аЁп. Љ ¦¤л© Ё¬Їг«мб
в ©¬Ґа , Їа®Ёб室пйЁ© ў® ўаҐ¬п Їа®е®¦¤ҐЁп ¤ ®Ј® гз бвЄ , Ґ
гзЁвлў Ґвбп, § ЁбЄ«о票Ґ¬ в®Ј® б«гз п, Є®Ј¤ ‚л пў® Ї®¬Ґз ҐвҐ
бв ав®ўл© Є®¤ Є Є "®Ў« бвм".
Љ Є в®«мЄ® ‚л ЇаҐ®¤®«Ґ«Ё ¬ аЄҐа "®Ў« бвЁ" (ЇгЄв бЎ®а Ї®-
и«Ёл), Є®в®ал¬ Ї®¬ҐзҐ дгЄжЁп main ЇҐаҐ¬Ґ п, ®вўҐз ой п §
Ї®¤бзҐв зЁб« ўл§®ў®ў main, ўв®¬ вЁзҐбЄЁ 㢥«ЁзЁў Ґвбп Ґ¤ЁЁ-
жг Ё Є ¦¤л© Ё¬Їг«мб в ©¬Ґа , Їа®Ёб室пйЁ© б ¬®¬Ґв ўе®¤ ў main
¤® ўл§®ў route66, 㢥«ЁзЁў Ґв § 票Ґ ЇҐаҐ¬Ґ®©, ў Є®в®а®©
гзЁвлў Ґвбп ўаҐ¬п ўлЇ®«ҐЁп дгЄжЁЁ main.
Ќ б«Ґ¤го饬 нв ЇҐ ўлЇ®«ҐЁп main ўл§лў Ґв дгЄжЁо route66
Ё ‚л Ї®Ї ¤ ҐвҐ ®ўл© гз бв®Є ¤®а®ЈЁ. ‚ ¬®¬Ґв ЇҐаҐе®¤ зҐаҐ§
¬ аЄҐа (ЇгЄв бЎ®а Ї®и«Ёл), Є®в®ал¬ ®в¬ҐзҐ дгЄжЁп route66,
Їа®Ёб室Ёв ҐбЄ®«мЄ® ўҐйҐ©:
* ’ҐЄг饩 "®Ў« бвмо" зЁ Ґв бзЁв вмбп route66;
* ЋвЇа ў«повбп ў б⥪ ЇҐаҐ¬ҐлҐ, ў Є®в®але Є Ї«Ёў овбп ¤ -
лҐ ¤«п ўл§лў о饩 дгЄжЁЁ (ў ¤ ®¬ б«гз Ґ - дгЄжЁЁ main);
* ЏҐаҐ¬Ґ п, ў Є®в®а®© Ї®¤бзЁвлў Ґвбп Є®«ЁзҐбвў® ўл§®ў®ў
route66, 㢥«ЁзЁў Ґвбп Ґ¤ЁЁжг.
Љ ¦¤л© Ё¬Їг«мб в ©¬Ґа , Їа®Ёб室пйЁ© зЁ п б ¤ ®Ј® ¬®-
¬Ґв ¤® ў®§ўа в Ё§ route66, ўв®¬ вЁзҐбЄЁ 㢥«ЁзЁў Ґв § 票Ґ
ЇҐаҐ¬Ґ®©, ў Є®в®а®© Є Ї«Ёў Ґвбп ўаҐ¬п ўлЇ®«ҐЁп дгЄжЁЁ
route66. ЏаЁ н⮬ ЇҐаҐ¬Ґ п, ў Є®в®а®© Їа®Ёб室Ёв гзҐв ®ЎйҐЈ®
ўаҐ¬ҐЁ ўлЇ®«ҐЁп Їа®Ја ¬¬л, в Є¦Ґ Їа®¤®«¦ Ґв 㢥«ЁзЁў вмбп б
Є ¦¤л¬ Ё¬Їг«мᮬ в ©¬Ґа .
Љ Є в®«мЄ® ў Їа®жҐбᥠўлЇ®«ҐЁп ¤®бвЁЈ Ґвбп в®зЄ ў®§ўа в
Ё§ route66, Їа®дЁ«Ёа®ўйЁЄ ¤®бв Ґв Ё§ б⥪ ЇҐаҐ¬ҐлҐ ў Є®в®але
Є Ї«Ёў Ґвбп бв вЁбвЁЄ ¤«п дгЄжЁЁ ўл§ў ўиҐ© ¤ го.
..............................ЏҐаҐ¬Ґ п, Є Ї«Ёў ой п Є®-
«ЁзҐбвў® ®Ўа 饨© Є ўл§лў о饩 дгЄжЁЁ ў нв®в ¬®¬Ґв Ґ Ё§¬Ґп-
Ґвбп. ’Ґ¬ Ґ ¬ҐҐҐ, Є ¦¤л© Ё¬Їг«мб в ©¬Ґа , Їа®Ёб室пйЁ© б нв®Ј®
¬®¬Ґв ¤® ўл§®ў highway80 ¤®Ў ў«пҐвбп, Є Є Є ЇҐаҐ¬Ґ®©, ў Є®-
в®а®© Є Ї«Ёў Ґвбп ўаҐ¬п а Ў®вл дгЄжЁЁ main, в Є Ё Є ЇҐаҐ¬Ґ-
®©, ў Є®в®а®© Є Ї«Ёў Ґвбп ўаҐ¬п ўлЇ®«ҐЁп ўбҐ© Їа®Ја ¬¬л. „«п
в®Ј®, зв®Ўл Їа®ўҐаЁвм нв®в д Єв, Ї®Їа®Ўг©вҐ гЎа вм ¬ аЄҐа "®Ў« -
бвЁ", ®в¬Ґз ойЁ© route66 Ё § ⥬ ба ўЁвм ¤ лҐ, Є®в®алҐ Ї®«гз -
овбп ў Ї®б«Ґ нв®Ј®, c Їа®дЁ«Ґ¬ ¤«п б«гз п, Є®Ј¤ ¬ аЄҐа гбв ®ў-
«Ґ. ‚л ¤®«¦л § ¬ҐвЁвм, зв® ®ЎйҐҐ ўаҐ¬п ўлЇ®«ҐЁп ®бв «®бм ⥬
¦Ґ. ‚аҐ¬п ¦Ґ ўлЇ®«ҐЁп main ¤®«¦® 㢥«ЁзЁвмбп Є Є а § бв®«м-
Є®, бЄ®«мЄ® а миҐ вॡ®ў «®бм ¤«п ўлЇ®«ҐЁп route 66.
ЋЇаҐ¤Ґ«ҐЁҐ § ва ⠢६ҐЁ ўл§®ў Ї®¤Їа®Ја ¬¬
“ ў б ¬®¦Ґв ў®§ЁЄгвм ¦Ґ« ЁҐ Ё§¬ҐаЁвм ўаҐ¬п,Є®в®а®Ґ ва -
вЁвбп ҐЇ®б।б⢥® ўл§®ў Ї®¤Їа®Ја ¬¬л ( ЇаЁ¬Ґа Ї®¤Їа®Ја ¬-
¬л route66), ЎҐ§ гзҐв ўаҐ¬ҐЁ а Ў®вл б ¬®© Ї®¤Їа®Ја ¬¬л. ‚ 襬
б«гз Ґ б ¬л¬ Їа®бвл¬ бЇ®б®Ў®¬ ᤥ« вм нв® пў«пҐвбп ЇаҐЄа 饨Ґ
бЎ®а бв вЁбвЁзҐбЄЁе ¤ ле ў® ўе®¤®© в®зЄҐ route66, Ё ў®§®Ў®ў-
«ҐЁҐ бЎ®а нвЁе ¤ ле ба §г ¦Ґ Ї®б«Ґ ў®§ўа в Ё§ route66.
(’ Є¦Ґ ўл ¬®¦ҐвҐ Ї®«гзЁвм Ёд®а¬ жЁо в Є®Ј® த ЇаЁ а Ў®вҐ Їа®-
дЁ«Ёа®ўйЁЄ ў Ї ббЁў®¬ ०Ё¬Ґ «Ё§ , ®Ўб㦤 Ґ¬®¬ ў ѓ« ўҐ 3). Ђ
⥯Ґам, Ї®¬ҐбвЁвҐ Єгаб®а ЇҐаўго бва®Єг route66, § ⥬ ўлЎҐаЁвҐ
Є®¬ ¤г Operation (ђ Ў®в ) ў «®Є «м®¬ ¬Ґо ®Є Module (Њ®¤г«м),
¤«п в®Ј®, зв®Ўл ®вЄалвм Ў«®Є ¤Ё «®Ј Area Options (Џ а ¬Ґвал "®Ў-
« бвЁ"), гбв ®ўЁвҐ Operation (ђ Ў®в ) ў б®бв®пЁҐ Disable (Ћв-
Є«озЁвм), ¦¬ЁвҐ Є« ўЁиг Enter.
Љ®Ј¤ ўл ®вЄ«оз ҐвҐ бЎ®а бв вЁбвЁЄЁ ЇаЁ ўе®¤Ґ ў route66, ЇаЁ
ў®§ўа ⥠Ё§ нв®© Ї®¤Їа®Ја ¬¬л, бЎ®а ¤ ле ўв®¬ вЁзҐбЄЁ Ґ ў®§-
®Ў®ў«пҐвбп. ‚л ¤®«¦л гбв ®ўЁвм ¬ аЄҐа "®Ў« бвЁ" § Єалў ойго
дЁЈгаго бЄ®ЎЄг дгЄжЁЁ route66, Ё б®ў гбв ®ўЁвм Ї а ¬Ґва
Operation (ђ Ў®в ) ¤«п ¤ ®Ј® ¬ аЄҐа "®Ў« бвЁ" ў б®бв®пЁҐ
Enable.
Љв® а бЇ« зЁў Ґвбп § жЁЄ«л
ЊҐв д®а ЇгЄв®ў бЎ®а Ї®¤®а®¦®© Ї®и«Ёл Ї®¬®Ј Ґв ®Ўкпб-
Ёвм Ї®зҐ¬г Ґ Ё§¬ҐпҐвбп ⥪гй п "®Ў« бвм" Ї®б«Ґ ЇҐаҐе®¤ ¬ аЄҐ-
а "®Ў« бвЁ" б Ї®б«Ґ¤гойЁ¬ ў®§ўа ⮬ § ¤ (Їа®Ёб室пйЁ¬ ў аҐ-
§г«мв ⥠ўлЇ®«ҐЁп ®ЇҐа в®а goto Ё«Ё жЁЄ« ) Ї® ¤аҐбг, ЇаҐ¤иҐ-
бвўго饬г н⮬㠬 аЄҐаг, е®вп, c «ҐЄбЁзҐбЄ®© в®зЄЁ §аҐЁп, ўл -
室ЁвҐбм ўҐ §®л ¤Ґ©бвўЁп ¬ аЄҐа , ўл ҐйҐ Ґ ўбваҐвЁ«Ё бў®Ґ¬
ЇгвЁ Є Є®©-«ЁЎ® ¬ аЄҐа. € Ї®н⮬㠪 ¦¤л© ЈҐҐаЁагҐ¬л© Ё¬Їг«мб
в ©¬Ґа Їа®¤®«¦ Ґв бб®жЁЁа®ў вмбп б Ї®б«Ґ¤Ё¬ Їа®©¤Ґл¬ ¬ аЄҐ-
஬.
/* Copyright (c) 1990, Borland International */
#include <stdio.h>
#include <dos.h> /* contains prototype for delay() */
main()
{
printf("Entering main\n");
lost_in_town();
delay(1000);
printf("Leaving main\n\n");
delay(1000);
}
lost_in_town()
{
int i;
printf("Looking for highway...\n");
delay(100);
for (i=0; i<10; i++)
{
printf("Ask for directions\n");
printf("Wrong turn\n\n");
delay(1000);
}
printf("On the road again\n");
}
{ Copyright (c) 1990, Borland International }
Uses Crt;
Procedure Lost_in_town;
Var
I : integer;
Begin
writeln( 'Looking for highway...' );
delay(100);
for I := 0 to 9 do
Begin
Writeln( 'Ask for directions' );
Writeln( 'Wrong turn' );
Writeln;
delay(1000);
End;
Writeln( 'on the road again' );
End;
Begin
Writeln( 'Entering Main' );
Lost_in_town;
Delay(1000);
writeln( 'Leaving main' );
writeln;
delay(1000);
End.
‚ Їа®Ја ¬¬Ґ plost ¬л гб«®¦Ё«Ё Ї®¤Їа®Ја ¬¬г lost_in_town Ёб-
Ї®«м§®ў ЁҐ¬ б®бв ў®Ј® ®ЇҐа в®а ўгваЁ жЁЄ« . ЏаҐ¤Ї®«®¦Ё¬, зв®
Ўл«Ё гбв ®ў«Ґл 3 ¬ аЄҐа : ®¤Ё ¤«п дгЄжЁЁ main, ®¤Ё ¤«п
lost_in_town Ё ҐйҐ ®¤Ё ¤«п ®ЇҐа в®а , ЇҐз в о饣® Wrong turn.
Џ®б«Ґ в®Ј®, Є Є ўл Ї®Ї ¤ ҐвҐ ў lost_in_town, зЁ ов Їа®Ёб-
室Ёвм бва лҐ ўҐйЁ. Љ®Ј¤ ўл ўе®¤ЁвҐ ў нвг Ї®¤Їа®Ја ¬¬г
lost_in_town бв ®ўЁвмбп ⥪г饩 "®Ў« бвмо". ‚६п, ЇаЁе®¤пйЁҐбп
ЇҐз вм да §л "looking for highway" бб®жЁЁагҐвбп б нвЁ¬ ¬ аЄҐ-
஬.
ЏаЁ ўе®¤Ґ ў жЁЄ« ўаҐ¬п Їа®¤®«¦ Ґв бб®жЁЁа®ў вмбп б ¬ થ஬
Ї®¤Їа®Ја ¬¬л Ё ў ЇҐаўл© а §,Є®Ј¤ ўл ўлЇ®«пҐвҐ ®ЇҐа в®а ЇҐз вЁ
бва®ЄЁ "Ask for direction", ўаҐ¬п ўбҐ ҐйҐ ®в®бЁвбп Є н⮬㠬 а-
ЄҐаг. ’Ґ¬ Ґ ¬ҐҐҐ бв®Ёв ў ¬ Їа®©вЁ ¬ аЄҐа ®ЇҐа в®а ЇҐз вЁ
"Wrong turn", ўбҐ ®б⠢襥бп ўаҐ¬п а Ў®вл Ї®¤Їа®Ја ¬¬л Ўг¤Ґв б-
б®жЁЁа®ў вмбп б нвЁ¬ ¬ થ஬.
’®в д Єв,зв® ўл Ї®Ї ¤ ҐвҐ гз бв®Є Їа®Ја ¬¬л,Є®в®ал© а ҐҐ
Ўл« бб®жЁЁа®ў б ¤агЈЁ¬ ¬ થ஬, ᮢᥬ Ґ ®§ з Ґв ᬥл вҐ-
Єг饩 ЄвЁў®© "®Ў« бвЁ". €§¬ҐҐЁҐ ЄвЁў®© "®Ў« бвЁ" Їа®Ёб室Ёв
в®«мЄ® ў ⮬ б«гз Ґ, Ґб«Ё ўл Їа®е®¤ЁвҐ ҐЇ®б।б⢥® зҐаҐ§ ¬ а-
ЄҐа "®Ў« бвЁ" ђҐ§г«мв вл нв®Ј® д Єв ¬®Јгв ®Є § вмбп ¤®ў®«м® Ґ-
®¦Ё¤ л¬Ё.
Ќ ЇаЁ¬Ґа, Ґб«Ё ўл гбв ®ўЁ«Ё ваЁ ¬ аЄҐа ¤«п Їа®Ја ¬¬л
plost, в Є Є Є ¬л ®ЇЁб «Ё (Ї® ®¤®¬г ¬ аЄҐаг ¤«п дгЄжЁ© main,
lost_in_town Ё ®ЇҐа в®а ЇҐз вЁ бва®ЄЁ "Wrong Turn") , в® ЇаЁЎ«Ё-
§ЁвҐ«м® 84% ®ЎйҐЈ® ўаҐ¬ҐЁ ўлЇ®«ҐЁп Їа®Ја ¬¬л Ўг¤Ґв бб®жЁЁа®-
ў ® б ЇҐз вмо бва®ЄЁ "Wrong turn", Ё в®«мЄ® 1% ўаҐ¬ҐЁ ўлЇ®«Ґ-
Ёп Ўг¤Ґв бўп§ б lost_in_town. ќв® Їа®Ёб室Ёв Ї®в®¬г, зв® ¤Ґ-
ўпвм Ё§ ¤ҐбпвЁ ўлЇ®«ҐЁ© ®ЇҐа в®а ЇҐз вЁ бва®ЄЁ "Ask for
direction", в Є¦Ґ ўбҐ Ї®б«Ґ¤гойЁҐ ®ЇҐа в®ал delay бб®жЁЁаговбп
б ¬ થ஬, Ї®¬Ґз ойЁ¬ ®ЇҐа в®а ЇҐз вЁ бва®ЄЁ "Wrong Turn".
…б«Ё ўл гЎҐаҐвҐ ¬ аЄҐа "®Ў« бвЁ", Є®в®ал¬ Ї®¬ҐзҐ ®ЇҐа в®а
ЇҐз вЁ бва®ЄЁ "Wrong Turn", в® 84% ®бв о饣®бп ўаҐ¬ҐЁ Ўг¤Ґв § -
ва 祮 ўлЇ®«ҐЁҐ Ї®¤Їа®Ја ¬¬л lost_in_town.
ђ бᬮваЁ¬ б«Ґ¤гойго Їа®Ја ¬¬г:
main
{
while(!kbhit() )
{
func1();
statement1;
statement2;
func2();
}
}
func1()
{
}
func2()
{
}
ЏаҐ¤Ї®«®¦Ё¬, зв® ¬ аЄҐал ®Ў« бвЁ ў а бб¬ ваЁў Ґ¬®© Їа®Ја ¬-
¬Ґ, гбв ®ў«Ґл ¤«п ўбҐе Ї®¤Їа®Ја ¬¬. Љ ¦¤®Ґ Ё§ Ё¬Ґ дгЄжЁЁ
main, func1 Ё func2 ў ®ЇЁб Ёпе нвЁе дгЄжЁ© ᮮ⢥вбвўгҐв з «г
"®Ў« бвЁ" Ё в ©¬Ґа ЈҐҐаЁагҐв Ё¬Їг«мбл б з бв®в®© 100 а § ў бҐ-
Єг¤г.(ЏаҐ¤Ї®«®¦Ё¬,зв® 1/100 ᥪг¤л нв® ¤®бв в®з® Ў®«ми®© Їа®-
¬Ґ¦гв®Є ўаҐ¬ҐЁ ¤«п в®Ј®, зв®Ўл ўл ¬®Ј«Ё Ў«о¤ вм § Їа®Ёб室п-
йЁ¬ Їа®жҐбᮬ.)
‚л ўе®¤ЁвҐ ў дгЄжЁо main, Ё ў ¤Ґ©бвўЁҐ ўбвгЇ Ґв ¬ аЄҐа ¤ -
®© дгЄжЁЁ. ‘Ёб⥬ Turbo Profiler ЇаЁ®бв ў«Ёў Ґв а Ў®вг Їа®-
Ја ¬¬л ¤«п ®Ўа Ў®вЄЁ ¤ ®© бЁвг жЁЁ. ‚ нв®в ¬®¬Ґв бЁб⥬ Turbo
Profiler гбв ў«Ёў Ґв § 票Ґ ᮮ⢥вбвўго饩 ЇҐаҐ¬Ґ®© в ЄЁ¬
®Ўа §®¬, зв®, ¤® Ї®Ї ¤ Ёп б«Ґ¤гойЁ© ¬ аЄҐа, ⥪г饩 "®Ў« -
бвмо" бзЁв Ґвбп дгЄжЁп main, в Є¦Ґ 㢥«ЁзЁў Ґв Ґ¤ЁЁжг ЇҐ-
६Ґго, а ўго зЁб«г ўл§®ў®ў main.
ЋЎ« бвм ¤Ґ©бвўЁп ¬ аЄҐа®ў "®Ў« бвЁ" ®ЇаҐ¤Ґ«пҐвбп ᪮॥ ¤Ё-
¬ЁзҐбЄЁ, 祬 «ҐЄбЁзҐбЄЁ. ќв® ®§ з Ґв, зв® main пў«пҐвбп ⥪г-
饩 "®Ў« бвмо" ¤® вҐе Ї®а, Ї®Є Їа®жҐбб ўлЇ®«ҐЁп Їа®Ја ¬¬л Ґ
¤®©¤Ґв ¤® ўл§®ў дгЄжЁЁ func1. Љ Є в®«мЄ® ўл Ї®Ї ¤ ҐвҐ ў func1,
ўл ⥬ б ¬л¬ ўе®¤ЁвҐ ў ®ўго "®Ў« бвм", ў Є®в®а®© ўл ®бв ҐвҐбм ¤®
вҐе Ї®а, Ї®Є Ґ в®«ЄҐвҐбм ўл§®ў Є Є®©-ЁЎг¤м ¤агЈ®© дгЄ-
жЁЁ Ё«Ё ®ЇҐа в®а ў®§ўа в Ё§ дгЄжЁЁ func1. ‚лиҐбЄ § ®Ґ ®§-
з Ґв,зв® бЁб⥬ Turbo Profiler Ї®¬Ґй Ґв Ё¬Ґ ўл§лў ойЁе ¬®¤г-
«Ґ© ( ў ¤ ®¬ б«гз Ґ дгЄжЁЁ main) ў б⥪.
Љ®Ј¤ ўл ў®§ўа й ҐвҐбм Ё§ дгЄжЁЁ func1, ўл Їа®е®¤ЁвҐ ¬ аЄҐа
ў®§ўа в , гбв ®ў«Ґл© Їа®дЁ«Ёа®ўйЁЄ®¬ ў ¬®¬Ґв ўе®¤ ў func1.
”гЄжЁп main б®ў бв ®ўЁвбп ⥪г饩 "®Ў« бвмо". Љ ¦¤л© в Єв
в ©¬Ґа , ў® ўаҐ¬п Є®в®а®Ј® ўлЇ®«пҐвбп statement1 Ё«Ё statement2,
бзЁв Ґвбп ®в®бпйЁ¬бп Є "®Ў« бвЁ", § ¤ ў Ґ¬®© дгЄжЁҐ© main.
Ќ н⮬ нв ЇҐ Їа®Ёб室пв ¤ўҐ ўҐйЁ:
1. Љ ¦¤л© а §, Є®Ј¤ ўл Ї®Ї ¤ ҐвҐ ў Є Єго-ЁЎг¤м "®Ў« бвм",
Їа®дЁ«Ёа®ў ЁҐ ўл§лў Ґв ўгваҐоо Ї®¤Їа®Ја ¬¬г, Є®в®а п б®-
®вўҐвбвўҐл¬ ®Ўа §®¬ Ё§¬ҐпҐв § 票Ґ ЇҐаҐ¬Ґле Ё б®бв®п-
ЁҐ б⥪ ўл§®ў®ў Ї®¤Їа®Ја ¬¬. ‘ Є ¦¤®© "®Ў« бвмо" бўп§ л
¤ўҐ ЇҐаҐ¬Ґле, ў ®¤®© Ё§ нвЁе ЇҐаҐ¬Ґле б㬬ЁагҐвбп ўаҐ¬п
ўлЇ®«ҐЁп "®Ў« бвЁ", ў ¤агЈ®©- Є®«ЁзҐбвў® ®Ўа 饨© Є
Ґ©. Љ ¦¤л© а §, Є®Ј¤ ўл Ї®Ї ¤ ҐвҐ ў "®Ў« бвм" Їа®©¤п зҐаҐ§
Ї®¬Ґз ойЁ© ҐҐ ¬ аЄҐа, ЇҐаҐ¬Ґ п, а ў п зЁб«г ®Ўа 饨© Є
¤ ®© "®Ў« бвЁ" 㢥«ЁзЁў Ґвбп.
2. Ќ Є ¦¤®¬ ⠪⥠⠩¬Ґа , Їа®дЁ«Ёа®ўйЁЄ ўл§лў Ґв ¤агЈго ўгв-
аҐоо Ї®¤Їа®Ја ¬¬г, Є®в®а п Їа®ўҐапҐв, Є Є п Ё§ "®Ў« б⥩"
пў«пҐвбп ⥪г饩, § ⥬ 㢥«ЁзЁў Ґв § 票Ґ ЇҐаҐ¬Ґ®©,
еа п饩 ўаҐ¬ҐлҐ ¤ лҐ ¤«п а бб¬ ваЁў Ґ¬®© "®Ў« бвЁ",
ᮮ⢥вбвўгойго ўҐ«ЁзЁг.
Љ®Ј¤ ўлЇ®«ҐЁҐ Їа®Ја ¬¬л § Є зЁў Ґвбп, бЁб⥬ Turbo
Profiler, ®б®ў ЁЁ § 票© ЇҐаҐ¬Ґле, ў Є®в®але Є Ї«Ёў -
«®бм зЁб«® в Єв®ў в ©¬Ґа , ўлзЁб«пҐв ўаҐ¬п а Ў®вл Є ¦¤®© "®Ў« -
бвЁ".
…б«Ё ўл ®вЄ«озЁвҐ бЎ®а бв вЁбвЁЄЁ ЇаЁ ўе®¤Ґ ў дгЄжЁо func1,
в® ў®§ўа в Ё§ нв®© дгЄжЁЁ ҐйҐ Ґ Ўг¤Ґв ®§ з вм ўв®¬ вЁзҐбЄ®Ј®
ў®§®Ў®ў«ҐЁп бЎ®а бв вЁбвЁЄЁ. ‚л ¤®«¦л пў® § ¤ вм ў®§®Ў®ў«Ґ-
ЁҐ бЎ®а бв вЁбвЁзҐбЄЁе ¤ ле ў в®зЄҐ ў®§ўа в Ё§ func1.
—в® ¦Ґ ў ¬ ¤Ґ« вм ў б«гз Ґ ҐбЄ®«мЄЁе ®ЇҐа в®а®ў return? Ћв-
ўҐв нв®в ў®Їа®б § Є«оз Ґвбп ў ЁбЇ®«м§®ў ЁЁ Ґ¤Ёб⢥®© -
бв®п饩 в®зЄЁ ў®§ўа в в®«мЄ® ў б ¬®¬ Є®жҐ ⥫ дгЄжЁЁ.
‚ ¦®Ґ § ¬Ґз ЁҐ ® в®зЄ е ў®§ўа в :
•®вп ўл д®а¬ «м® Ё ¬®¦ҐвҐ § ¤ вм ў дгЄжЁЁ ҐбЄ®«мЄ® в®зҐЄ
ў®§ўа в , Є®¬ЇЁ«пв®а Turbo C, б ¬®¬ ¤Ґ«Ґ, ЇаҐ®Ўа §гҐв ўбҐ нвЁ
в®зЄЁ ў ЇҐаҐе®¤л Ґ¤Ёб⢥го бв®пйго в®зЄг ў®§ўа в , а бЇ®-
«®¦Ґго ў б ¬®¬ Є®жҐ дгЄжЁЁ. ЏаЁ гбв ®ўЄҐ ¬ аЄҐа "®Ў« бвЁ"
Є Є®¬-«ЁЎ® ®ЇҐа в®аҐ ў®§ўа в б ¬®¬ ¤Ґ«Ґ Ї®¬Ґз ®© ®Є §л-
ў Ґвбп бва®Є бᥬЎ«Ґа®Ј® Є®¤ , ᮮ⢥вбвўгой п § Єалў о饩 дЁ-
Јга®© бЄ®ЎЄҐ, Є®в®а®© § ўҐаи Ґвбп ®ЇЁб ЁҐ ¤ ®© дгЄжЁЁ. ќв
бва®Є ЇаҐ¤бв ў«пҐв б®Ў®© бᥬЎ«Ґал© ў аЁ в ®ЇҐа в®а ў®§ўа -
в , Є®в®ал© ®бгйҐбвў«пҐвбп ЇҐаҐе®¤ Ё§ ўбҐе ®бв «мле в®зҐЄ
дгЄжЁЁ, Ј¤Ґ ўбваҐз Ґвбп ®ЇҐа в®а return.
„«п в®Ј®, зв®Ўл ®вЄ«озЁвм бЎ®а бв вЁбвЁзҐбЄЁе ¤ ле ¤«п Є -
Є®©-«ЁЎ® дгЄжЁЁ, Ґ®Ўе®¤Ё¬® Ї®¬ҐвЁвм ЇҐаўго бва®Єг нв®© дгЄжЁЁ
¬ થ஬ "®Ў« бвЁ", ®вЄ«оз ойЁ¬ бЎ®а бв вЁбвЁзҐбЄЁе ¤ ле, в Є
¦Ґ гбв ®ўЁвм ¬ аЄҐа, ў®§®Ў®ў«пойЁ© бЎ®а ¤ ле, бва®ЄҐ,
б«Ґ¤го饩 § ўл§®ў®¬ дгЄжЁЁ.
…б«Ё ўл е®вЁвҐ Ё§кпвм Ё§ а бᬮваҐЁп ўаҐ¬п ўлЇ®«ҐЁп
func1, ®, ЇаЁ н⮬, ў®§®Ў®ў«пвм Ї®¤бзҐв ўаҐ¬ҐЁ Ї®б«Ґ ў®§ўа в
Ё§ func1, ўл ¤®«¦л Ї®¬ҐвЁвм ¬ થ஬ "®Ў« бвЁ" ®ЇҐа в®а ў®§ўа в
Ё§ func1. …б«Ё Ґ бгйҐбвўгҐв пў®Ј® ®ЇҐа в®а ў®§ўа в , в® б«Ґ¤г-
Ґв Ї®¬ҐвЁвм § Єалў ойго дЁЈгаго бЄ®ЎЄг, Є®в®а®© § Є зЁў Ґвбп
®ЇаҐ¤Ґ«ҐЁҐ дгЄжЁЁ.
‘Ў®а бв вЁбвЁзҐбЄЁе ¤ ле ® ўл§®ў е Ї®¤Їа®Ја ¬¬.
ЂЄвЁў®© ў ¤ л© ¬®¬Ґв ўаҐ¬ҐЁ Ї®¤Їа®Ја ¬¬®© бзЁв Ґвбп
Ї®¤Їа®Ја ¬¬ , 室пй пбп ўҐаиЁҐ б⥪ ўл§®ў®ў, д®а¬Ёа㥬®Ј®
Їа®дЁ«Ёа®ўйЁЄ®¬. ‚ ०Ё¬Ґ ЄвЁў®Ј® «Ё§ (в.Ґ. Є®Ј¤ Їа®дЁ«Ё-
а®ўйЁЄ б®ЎЁа Ґв Ёд®а¬ жЁо ® Їгвпе ўл§®ў , в Є¦Ґ ¤агЈЁҐ ¤ лҐ,
Ґ бўп§ лҐ б Ї®¤бзҐв®¬ ўаҐ¬ҐЁ) бЁб⥬ Turbo Profiler ᮧ¤ Ґв
бў®© б®ЎбвўҐл© б⥪ ўл§®ў®ў Ї®¤Їа®Ја ¬¬. ќв®в б⥪ гбв஥
«®ЈЁз® б⥪㠢맮ў®ў «оЎ®© ¤агЈ®© Їа®Ја ¬¬л, ўлЇ®«по饩бп
Ї®¤ гЇа ў«ҐЁҐ¬ DOS. ‘⥪, ᮧ¤ ў Ґ¬л© Їа®дЁ«Ёа®ўйЁЄ®¬, Ї®¤-
¤Ґа¦Ёў Ґвбп б®ўҐа襮 Ґ§ ўЁбЁ¬® ®в б⥪ Ї®«м§®ў ⥫мбЄ®© Їа®-
Ја ¬¬л Ё ЁбЇ®«м§гҐвбп ЁбЄ«озЁвҐ«м® ¤«п б®еа ҐЁп Ёд®а¬ жЁЁ ®
ўл§®ў е Ї®¤Їа®Ја ¬¬, ў Є®в®але ҐйҐ Ґ Ўл« ўлЇ®«Ґ ®ЇҐа в®а ў®§-
ўа в .
„«п в®Ј®, зв®Ўл Ї®¤¤Ґа¦Ёў вм б⥪ ўл§®ў®ў Ї®¤Їа®Ја ¬¬ ў бЁ-
б⥬Ґ Turbo Profiler Ё¬ҐҐвбп ¤ў вЁЇ ¬ аЄҐа®ў "®Ў« бвЁ":
* ¬ аЄҐа "®Ў« бвЁ" вЁЇ "в®зЄ ўе®¤ ў Ї®¤Їа®Ја ¬¬г" (¬ аЄҐа
Ї®¤Їа®Ја ¬¬л);
* ®Ўлзл© ¬ аЄҐа "®Ў« бвЁ" (¬ аЄҐа вЁЇ ¬ҐвЄ )
Љ®Ј¤ Їа®дЁ«Ёа®ўйЁЄ в «ЄЁў Ґвбп ¬ аЄҐа "®Ў« бвЁ" вЁЇ
"в®зЄ ўе®¤ ў Ї®¤Їа®Ја ¬¬г", ® Ї®¬Ґй Ґв ЄвЁўго ¤ л© ¬®-
¬Ґв Ї®¤Їа®Ја ¬¬г ўҐаиЁг б⥪ ЄвЁўле Ї®¤Їа®Ја ¬¬. ‡ ⥬
ўбваҐзҐл© ¬ аЄҐа бв ®ўЁвбп ¬ થ஬ ЄвЁў®© Ї®¤Їа®Ја ¬¬л.
…б«Ё ⥯Ґам ¬л Ї®ўбваҐз Ґ¬ ®Ўлзл© ¬ аЄҐа, в® нв® ЁЄ Є Ґ
Ї®ў«ЁпҐв бв вЁбвЁзҐбЄЁҐ ¤ лҐ, б®ЎЁа Ґ¬лҐ ¤«п Ї®¤Їа®Ја ¬¬л,
ўлЇ®«по饩бп ў ¤ л© ¬®¬Ґв Ё б⥪ ЄвЁўле Ї®¤Їа®Ја ¬¬. Џ®-
пў«ҐЁҐ ®Ўлз®Ј® ¬ аЄҐа ®§ з Ґв «Ёим ᬥ㠪⨢®© "®Ў« бвЁ",
в.Ґ. ЇаҐ¤л¤гй п ЄвЁў п "®Ў« бвм" ЁбЄ«оз Ґвбп Ё§ а бᬮв२п.
‘в вгб ¦Ґ ⥪г饩 ЄвЁў®© Ї®¤Їа®Ја ¬¬л Ґ ¬ҐпҐвбп ¤® вҐе Ї®а,
Ї®Є Їа®дЁ«Ёа®ўйЁЄ Ґ в®«ЄҐвбп ®ЇҐа в®а ў®§ўа в Ё§ ¤ ®©
Ї®¤Їа®Ја ¬¬л.
Љ®Ј¤ , ў Їа®жҐбᥠўлЇ®«ҐЁп, ў ⥫Ґ ЄвЁў®© Ї®¤Їа®Ја ¬¬л
ўбваҐз Ґвбп ®ЇҐа в®а ў®§ўа в , ¬ аЄҐа "®Ў« бвЁ", ®в®бпйЁ©бп Є
¤ ®© Ї®¤Їа®Ја ¬¬Ґ, ЇҐаҐе®¤Ёв ў Ї ббЁў®Ґ б®бв®пЁҐ.
‘ ўҐаегиЄЁ б⥪ ЄвЁўле Ї®¤Їа®Ја ¬¬, Ї®¤¤Ґа¦Ёў Ґ¬®Ј® Їа®-
дЁ«Ёа®ўйЁЄ®¬, ЎҐаҐвбп Ї®¤Їа®Ја ¬¬ , Є®в®а п Ё бв ®ўЁвбп ЄвЁў®©
¤® вҐе Ї®а, Ї®Є Ґ Ўг¤Ґв ўлЇ®«Ґ ®ЇҐа в®а ў®§ўа в , 室пйЁ©бп
ў ҐҐ ⥫Ґ, Ё«Ё Ґ Ї®ўбваҐз Ґвбп ¤агЈ®© ¬ аЄҐа "®Ў« бвЁ" вЁЇ
"в®зЄ ўе®¤ ў Ї®¤Їа®Ја ¬¬г".
’ ЄЁ¬ ®Ўа §®¬, Їа®дЁ«Ёа®ўйЁЄ ¬®¦Ґв Їа®б«Ґ¦Ёў вм Ї®«го ЇаҐ¤-
лбв®аЁо ўл§®ў®ў ¤«п Є ¦¤®© Ї®¬ҐзҐ®© Ї®¤Їа®Ја ¬¬л. …б«Ё ‚л ЄвЁ-
ўЁа®ў «Ё Ї а ¬Ґва Statistics| Callers (‘в вЁбвЁЄ | ‚л§лў ойЁҐ
Ї®¤Їа®Ја ¬¬л) ¤«п ўбҐе Ї®¬ҐзҐле Ї®¤Їа®Ја ¬¬, в® Є ¦¤л© а § ЇаЁ
ўбваҐзҐ ¬ аЄҐа "®Ў« бвЁ", вЁЇ "в®зЄ ўе®¤ ў Ї®¤Їа®Ја ¬¬г",
Їа®дЁ«Ёа®ўйЁЄ Ї®«®бвмо б®еа пҐв бў®© б⥪ ўл§®ў®ў ў ЎгдҐаҐ,
бўп§ ®¬ б ¤ ®© Ї®¤Їа®Ја ¬¬®©.
…б«Ё нв®в б⥪ Ї®«®бвмо Ё¤ҐвЁзҐ Є Є®¬г-«ЁЎ® Ё§ б⥪®ў,
㦥 б®еа Ґле ¤«п ¤ ®© Ї®¤Їа®Ја ¬¬л, в® ў н⮬ б«гз Ґ, ў¬Ґбв®
в®Ј®, зв®Ўл б®ў § Ї®¬Ё вм ўҐбм нв®в б⥪, Їа®б⮠㢥«ЁзЁў Ґвбп
ᮮ⢥вбвўгойЁ© бзҐвзЁЄ. …б«Ё ¦Ґ в Є®© б⥪ ўл§®ў®ў а ҐҐ ҐйҐ Ґ
ўбваҐз «бп, в® Їа®дЁ«Ёа®ўйЁЄ १ҐаўЁагҐв ®ўл© ЎгдҐа Ё § ЇЁблў Ґв
ў ҐЈ® ⥪г饥 б®бв®пЁҐ бў®ҐЈ® б⥪ ўл§®ў®ў. ‚ १г«мв ⥠нвЁе
®ЇҐа жЁ© б®еа повбп ўбҐ ЇгвЁ ўл§®ў ¤«п ¤ ®© Ї®¤Їа®Ја ¬¬л,
в Є¦Ґ Є®«ЁзҐбвў® ўл§®ў®ў Ї®¤Їа®Ја ¬¬л Ї® Є ¦¤®¬г Ё§ нвЁе Їг⥩.
ђ Ў®в Їа®дЁ«Ёа®ўйЁЄ б® б⥪®¬ ЄвЁўле Ї®¤Їа®Ја ¬¬, ®ЇаҐ-
¤Ґ«пҐвбп § 票ﬨ ¤ўге Ї а ¬Ґва®ў, гбв ў«Ёў Ґ¬ле ЇаЁ Ї®¬®йЁ
Є®¬ ¤ ҐЈ® ¬Ґо:
* Ї а ¬Ґва Statistics| Callers (‘в вЁбвЁЄ | ‚л§лў ойЁҐ Ї®¤-
Їа®Ја ¬¬л) (¬®¦Ґв 室Ёвмбп ў б®бв®пЁЁ Enabled (‚Є«о祮)
Ё«Ё Disabled (‚лЄ«о祮);
* Ї а ¬Ґва Callers (‚л§лў ойЁҐ Ї®¤Їа®Ја ¬¬л) ¤«п Є ¦¤®© Ї®¬Ґ-
祮© "®Ў« бвЁ" ў ®ЄҐ Areas ("ЋЎ« бвЁ").
Ѓ®«ҐҐ ЈЁЎЄЁҐ ў®§¬®¦®бвЁ ¤«п Є®ва®«п Їг⥩ ўл§®ў Ї®¤Їа®Ј-
а ¬¬ ‚л Ї®«гз ҐвҐ ЇаЁ ЁбЇ®«м§®ў ЁЁ «®Є «мле ¬Ґо ў ®Є е Module
(Њ®¤г«м) Ё Areas ("ЋЎ« бвЁ"). ‚л ¬®¦ҐвҐ гбв ®ўЁвм ¤«п Є ¦¤®© Ё§
Ї®¬ҐзҐле "®Ў« б⥩" бў®Ґ б®Ўб⢥®Ґ § 票Ґ Ї а ¬Ґва Callers
(‚л§лў ойЁҐ Ї®¤Їа®Ја ¬¬л). Љ Є Є®¬ ¤ Callers (‚л§лў ойЁҐ Ї®¤-
Їа®Ја ¬¬л) «®Є «м®Ј® ¬Ґо ®Є Module (Њ®¤г«м), в Є Ё Є®¬ ¤
Options (Џ а ¬Ґвал) «®Є «м®Ј® ¬Ґо ®Є Areas ("ЋЎ« бвЁ") ўҐ¤гв
Є Ї®пў«ҐЁо нЄа Ґ Ў«®Є ¤Ё «®Ј , ў Є®в®а®¬ ‚л ¬®¦ҐвҐ § ¤ вм
®¤® Ё§ б«Ґ¤гойЁе § 票© Ї а ¬Ґва Callers (‚л§лў ойЁҐ Ї®¤Їа®Ј-
а ¬¬л): All Callers (‚ᥠўл§лў ойЁҐ Ї®¤Їа®Ја ¬¬л), Immediate
Caller (ЌҐЇ®б।б⢥® ўл§лў ой п Ї®¤Їа®Ја ¬¬ ) Ё«Ё None (ЌЁЄ -
ЄЁҐ).
* All Callers (‚ᥠўл§лў ойЁҐ Ї®¤Їа®Ја ¬¬л) ®§ з Ґв б®еа Ґ-
ЁҐ Ї®«®Ј® б⥪ ўл§®ў®ў Ї®¤Їа®Ја ¬¬ Є ¦¤л© а §, Є®Ј¤ ў
Їа®жҐбᥠўлЇ®«ҐЁп, ўбваҐз Ґвбп в®зЄ ўе®¤ ў Ї®¬ҐзҐго
Ї®¤Їа®Ја ¬¬г.
* Immediate Caller (ЌҐЇ®б।б⢥® ўл§лў ой п Ї®¤Їа®Ја ¬¬ )
®§ з Ґв § Ї®¬Ё ЁҐ в®«мЄ® б ¬®Ј® ўҐа奣® н«Ґ¬Ґв б⥪
ўл§®ў®ў Ї®¤Їа®Ја ¬¬ ЇаЁ Ї®Ї ¤ ЁЁ в®зЄг ўе®¤ ў ¤ го
Ї®¬ҐзҐго Ї®¤Їа®Ја ¬¬г.
* None (ЌЁЄ ЄЁҐ) ®§ з Ґв, зв® ЇаЁ ўбваҐзҐ, ў Їа®жҐбᥠўлЇ®«-
ҐЁп, ¬ аЄҐа "®Ў« бвЁ" вЁЇ "в®зЄ ўе®¤ ў Ї®¤Їа®Ја ¬¬г"
ЁЄ Є п Ёд®а¬ жЁп Ё§ б⥪ ўл§®ў®ў Ї®¤Їа®Ја ¬¬ Ґ § Ї®¬Ё -
Ґвбп.
Џ® 㬮«з Ёо, ЇаЁ ЇҐаў®¬ Ї®«г票Ё Їа®дЁ«п Їа®Ја ¬¬л Ї а -
¬Ґва Callers (‚л§лў ойЁҐ Ї®¤Їа®Ја ¬¬л) ¤«п ўбҐе ¬ аЄҐа®ў "®Ў« -
бвЁ" вЁЇ "в®зЄ ўе®¤ ў Ї®¤Їа®Ја ¬¬г" Ё¬ҐҐв § 票Ґ None (ЌЁЄ -
ЄЁҐ).
“бв ®ўЄ Ї а ¬Ґва Statistics| Callers (‘в вЁбвЁЄ | ‚л§лў -
ойЁҐ Ї®¤Їа®Ја ¬¬л), 室п饣®бп ў Ј« ў®¬ ¬Ґо, ў б®бв®пЁҐ
Enable (‚Є«о祮) а ў®§ з гбв ®ўЄҐ § 票п All Callers (‚бҐ
ўл§лў ойЁҐ Ї®¤Їа®Ја ¬¬л) Ї а ¬Ґва ‘allers (‚л§лў ойЁҐ Ї®¤Їа®Ј-
а ¬¬) ¤«п Є ¦¤®Ј® ¬ аЄҐа "®Ў« бвЁ", гбв ®ў«Ґ®Ј® ў ®ЄҐ Areas
("ЋЎ« бвЁ"). ’Ґ¬ Ґ ¬ҐҐҐ, Ґб«Ё ‚л ўагзго гбв ®ўЁ«Ё § 票п
Ї а ¬Ґва®ў Callers (‚л§лў ойЁҐ Ї®¤Їа®Ја ¬¬) ¤«п Є ЄЁе-«ЁЎ® "®Ў-
« б⥩" ў ®ЄҐ Areas ("ЋЎ« бвЁ"), в®, ў н⮬ б«гз Ґ, гбв ®ўЄ
Ї а ¬Ґва Statistics| Callers (‘в вЁбвЁЄ | ‚л§лў ойЁҐ Ї®¤Їа®Ја ¬-
¬л) ў б®бв®пЁҐ Enable (‚Є«о祮), Ґ Ё§¬ҐЁв § 票Ґ Ї а ¬Ґва
Callers (‚л§лў ойЁҐ Ї®¤Їа®Ја ¬¬л) ¤«п в ЄЁе "®Ў« б⥩".
“бв ®ўЄ Ї а ¬Ґва Statistics| Callers (‘в вЁбвЁЄ | ‚л§лў -
ойЁҐ Ї®¤Їа®Ја ¬¬л) ў ҐЄ®в®а®© в®зЄҐ Їа®Ја ¬¬л ў б®бв®пЁҐ
Disable (ЋвЄ«о祮) гЄ §лў Ґв Їа®дЁ«Ёа®ўйЁЄг, зв®Ўл ® Ґ б®еа -
п« ЁЄ Є®© Ёд®а¬ жЁЁ Ё§ б⥪ ўл§®ў®ў, ® нв® б®ўҐа襮 Ґ
ў«ЁпҐв ¤Ґ©бвўЁҐ Ї а ¬Ґва®ў Caller (‚л§лў ой п Ї®¤Їа®Ја ¬¬ ),
гбв ®ў«Ґле ў ®ЄҐ Areas ("ЋЎ« бвЁ") (Є Є Ё ЇаЁ гбв ®ўЄҐ ¤ -
®Ј® Ї а ¬Ґва ў б®бв®пЁҐ Enable (‚Є«о祮)).
ЋЇа®б ў¬Ґбв® Ї®¤бзҐв .
Ќ б ¬®¬ ¤Ґ«Ґ, Їа®дЁ«Ёа®ўйЁЄ Ґ Ё§¬ҐапҐв ўаҐ¬п ҐЇ®б।бв-
ўҐ®, ®зҐм в®з® ўлзЁб«пҐв ҐЈ® ®б®ў ЁЁ Ёд®а¬ жЁЁ ® Є®-
«ЁзҐб⢥ ЇаҐалў Ё© в ©¬Ґа .
ќв®в бЇ®б®Ў Ї®¤бзҐв ўаҐ¬ҐЁ ¬®¦® а бб¬ ваЁў вм Є Є ®¤Ё Ё§
ўЁ¤®ў бв вЁбвЁзҐбЄ®Ј® ¬®¤Ґ«Ёа®ў Ёп (ҐЄЁ© бв вЁбвЁзҐбЄЁ© ®Їа®б).
ЏҐаЁ®¤ЁзҐбЄЁ § Їа иЁў п, Є Є п Ё§ "®Ў« б⥩" пў«пҐвбп ⥪г饩, Ё,
Ё¬Ґп ¤«п Є ¦¤®© Ё§ "®Ў« б⥩" бзҐвзЁЄ, (Є®в®ал© гўҐ«ЁзЁў Ґвбп ЇаЁ
Є ¦¤®¬ ЇаҐалў ЁЁ в ©¬Ґа , Ґб«Ё ў нв®в ¬®¬Ґв "®Ў« бвм" пў«пҐвбп
⥪г饩), Їа®дЁ«Ёа®ўйЁЄ ¬®¦Ґв ўлзЁб«Ёвм ўаҐ¬п, § ва 祮Ґ ўл-
Ї®«ҐЁҐ ¤ ®© "®Ў« бвЁ".
ЏаЁ¬Ґз ЁҐ: ‚ᥠўлиҐбЄ § ®Ґ Ё¬ҐҐв ¬Ґбв® в®«мЄ® ў б«г-
з Ґ а Ў®вл ў Ї ббЁў®¬ ०Ё¬Ґ Їа®дЁ«Ёа®ў Ёп.
Џа®дЁ«Ёа®ўйЁЄг Ё§ўҐбв® ®ЎйҐҐ ўаҐ¬п ўлЇ®«ҐЁп Їа®Ја ¬¬л.
’ Є¦Ґ Ґ¬г Ё§ўҐбв® ®ЎйҐҐ зЁб«® ЇаҐалў Ё© в ©¬Ґа , Їа®Ё§®иҐ¤иЁе
ў® ўаҐ¬п ўлЇ®«ҐЁп Їа®Ја ¬¬л. ‚६п, § ва 祮Ґ ўлЇ®«ҐЁҐ
¤ ®© "®Ў« бвЁ" ¬®¦Ґв Ўлвм ўлзЁб«Ґ® Ї® д®а¬г«Ґ:
<ўаҐ¬п ўлЇ®«ҐЁп "®Ў« бвЁ"> = <®ЎйҐҐ ўаҐ¬п ўлЇ®«ҐЁп Їа®-
Ја ¬¬л> * <§ 票Ґ бзҐвзЁЄ "®Ў« бвЁ"> / <§ 票Ґ бзҐвзЁЄ Їа®-
Ја ¬¬л>
Ќ®, б ¬®¬ ¤Ґ«Ґ, Ґ«м§п г⢥ত вм, зв® § 票Ґ ўаҐ¬ҐЁ,
ўлзЁб«Ґ®Ґ Ї® ЇаЁўҐ¤Ґ®© д®а¬г«Ґ, ў в®з®бвЁ б®ўЇ ¤ Ґв б Є®«Ё-
зҐбвў®¬ ўаҐ¬ҐЁ, § ва зҐл¬ ўлЇ®«ҐЁҐ ¤ ®© "®Ў« бвЁ". …б«Ё
‚ и Їа®Ја ¬¬ ᮤҐа¦Ёв ў ᥡҐ жЁЄ«, ў Є®в®а®¬, б з бв®в®©, Єа в-
®© з бв®вҐ ЇаҐалў Ёп в ©¬Ґа Їа®Ёб室Ёв ®Ўа 饨Ґ Є ҐЄ®в®а®©
Ї®¤Їа®Ја ¬¬Ґ ( ЇаЁ¬Ґа Є Ї®¤Їа®Ја ¬¬Ґ ЈҐҐа жЁЁ §ўгЄ ®¤®© в®-
«м®бвЁ), в® Ў®«миЁбвў® ¬®¬Ґв®ў ўаҐ¬ҐЁ, ў Є®в®алҐ Ўг¤гв ЈҐ-
ҐаЁа®ў вмбп Ё¬Їг«мбл в ©¬Ґа ¬®¦Ґв ЇаЁ©вЁбм ўлЇ®«ҐЁп ҐЄ®-
в®а®© бва®ЄЁ (Ё«Ё "®Ў« бвЁ"). ЋЇЁб ®Ґ пў«ҐЁҐ १® б ¬®¦Ґв
ў®§ЁЄгвм ¤ ¦Ґ ў б«гз Ґ, Є®Ј¤ а бб¬ ваЁў Ґ¬ п бва®Є Ґ ЇаЁ ¤-
«Ґ¦Ёв Є зЁб«г ®б®ўле Ї®вॡЁвҐ«Ґ© ўаҐ¬ҐЁ ўлЇ®«ҐЁп ‚ 襩 Їа®-
Ја ¬¬л. Џ®¤®ЎлҐ бЁвг жЁЁ ।ЄЁ, ® ўЇ®«Ґ ў®§¬®¦л.
…б«Ё ‚л Ї®¤®§аҐў ҐвҐ, зв® ў®§ЁЄ« Ї®¤®Ў п бЁвг жЁп б «®-
¦ҐЁҐ¬ з бв®в, в® Ё§¬ҐЁвҐ § 票Ґ Ї а ¬Ґва Statistics|
Profiling Options| Clock speed value (‘в вЁбвЁЄ | Џ а ¬Ґвал Їа®-
дЁ«Ёа®ў Ёп| ‘Є®а®бвм а Ў®вл з б®ў) Ё ба ўЁвҐ Їа®дЁ«м, Ї®«гзҐ-
л© Ї®б«Ґ ўҐбҐЁп нв®Ј® Ё§¬ҐҐЁп, б ЇаҐ¤л¤гйЁ¬ Їа®дЁ«Ґ¬.
€бЇ®«м§®ў ЁҐ Ї ¬пвЁ Їа®дЁ«Ёа®ўйЁЄ®¬.
Ќ б«Ґ¤го饬 аЁбгЄҐ Ї®Є § ® а бЇаҐ¤Ґ«ҐЁҐ Ї ¬пвЁ ЇаЁ Ї®«г-
票Ё Їа®дЁ«п Їа®Ја ¬¬л б Ї®¬®ймо бЁб⥬л Turbo Profiler.
ђЁб.2.2 Љ ав Ї ¬пвЁ бЁб⥬л Turbo Profiler.
„«п § Ї®¬Ё Ёп Ёд®а¬ жЁЁ ®Ў "®Ў« бвпе" Їа®дЁ«Ёа®ўйЁЄ Ёб-
Ї®«м§гҐв ¤Ё ¬ЁзҐбЄЁ-а бЇаҐ¤Ґ«пҐ¬го ®Ў« бвм Ї ¬пвЁ (far heap).
…б«Ё ‚л, ў Їа®жҐбᥠўлЇ®«ҐЁп Їа®Ја ¬¬л, ¤®Ў ўЁвҐ ®ўлҐ "®Ў« -
бвЁ", в® нв , ¤Ё ¬ЁзҐбЄЁ-а бЇаҐ¤Ґ«пҐ¬ п ®Ў« бвм Ї ¬пвЁ, ¬®¦Ґв
а бЇа®бва Ёвмбп вг з бвм Ї ¬пвЁ, Є®в®а п § १ҐаўЁа®ў ¤«п
Їа®Ја ¬¬л Ї®«м§®ў ⥫п, ¤«п в®Ј®, зв®Ўл а §¬ҐбвЁвм ў Ґ© ®ўлҐ
ЇҐаҐ¬ҐлҐ "®Ў« б⥩" Ё ЎгдҐал. Џ®н⮬г, Ґб«Ё ‚л ў®бЁвҐ Ё§¬ҐҐ-
Ёп ў а §¬ҐвЄг "®Ў« б⥩" ў® ўаҐ¬п ўлЇ®«ҐЁп Їа®Ја ¬¬л, ‚ ¬ Ґ-
®Ўе®¤Ё¬® Ї®ўв®а® § ЇгбвЁвм Їа®Ја ¬¬г б Ї®¬®ймо Run| Program
Reset (‚лЇ®«ҐЁҐ| Џ®ўв®а®Ґ ўлЇ®«ҐЁҐ Їа®Ја ¬¬л). …б«Ё ‚л нв®Ј®
Ґ ᤥ« ҐвҐ, ⮠१г«мв вл Їа®дЁ«Ёа®ў Ёп Ўг¤гв б®ўҐа襮 Ґ-
ЇаҐ¤бЄ §гҐ¬л, ‚ и Є®¬ЇмовҐа ¬®¦Ґв Їа®бв® "§ ўЁбгвм".