Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
3
Добавлен:
01.05.2014
Размер:
25.8 Кб
Скачать
                                   ѓ‹Ђ‚Ђ 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 (‚лЇ®«­Ґ­ЁҐ| Џ®ўв®а­®Ґ ўлЇ®«­Ґ­ЁҐ Їа®Ја ¬¬л). …б«Ё ‚л нв®Ј®
­Ґ ᤥ« ҐвҐ,  ⮠१г«мв вл  Їа®дЁ«Ёа®ў ­Ёп Ўг¤гв  б®ўҐа襭­® ­Ґ-
ЇаҐ¤бЄ §гҐ¬л, ‚ и Є®¬ЇмовҐа ¬®¦Ґв Їа®бв® "§ ўЁб­гвм".
Соседние файлы в папке TPROFDOC