[pic]
[pic] в«ЯТсбУЯФуСЎЎЩ® ¬«јїФСФ Й«ЯЯї®Я¬«® цСсСУбµїї
»« уЩЯЮСјТ «нУбє«убЎїЇ
жбјбpЯ¬ї® ъ«ЯТсбpЯФуСЎЎЩ® бЭp«¬«ЯјїюСЯ¬ї®
ТЎїуСpЯїФСФ їјСЎї б¬бсСјї¬б ж.Е. и«У«ЅСуб
о.З.и«pбнЅїЎ
ЕPДвPЗоокPДйЗмка, ДPкамЖкPДйЗммДа мЗ ДьЬаиЖш
фюСнЎ«С »«Я«нїС
жбјбpб 1994
[pic]
фди 681.142.2
Еp«ъpбјјїp«убЎїС, «pїСЎФїp«убЎЎ«С Ўб «нЫС¬ФЩ: фюСнЎ«С »«Я«нїС/
о.З.и«pбнЅїЎ. жбјбУ. ъ«ЯТс. бЭУ«¬«Яј. ТЎ-Ф; жбјбУб, 1994. 97 Я.
JSBN 5-230-16-955-9
Е«Я«нїС »«ЯуґЪСЎ« «сЎ«јТ їє «ЯЎ«уЎЩХ Ўб»pбуЅСЎї® Я«уpСјСЎЎ«ъ«
»p«ъpбјјїp«убЎїґ, ЯуґєбЎЎ«јТ Я «нЫС¬ФЎ«-«pїСЎФїp«убЎЎЩј »«сХ«с«ј ¬
pбєpбн«Ф¬С »p«ъpбјј. Д»їЯЩубЇФЯґ «ЯЎ«уЎЩС ¬«ЎµС»µїї Фᬫъ« »«сХ«сб, јСФ«сЩ
ї ЯpСсЯФуб Съ« pСбЅїєбµїї, у Я«у«¬Т»Ў«ЯФї Я«ЯФбуЅґЇЪїС «Я«нЩ® ЯФїЅэ
»p«ъpбјјїp«убЎїґ.
й »СpуТЇ «юСpСсэ «pїСЎФїp«убЎ« Ўб ЯФТсСЎФ«у, їєТюбЇЪїХ їЎх«pјбФї¬Т ї
ЯуґєбЎЎЩХ Я єбсбюбјї »p«ъpбјјїp«убЎїґ »pї¬ЅбсЎЩХ їЎх«pјбµї«ЎЎЩХ ЯїЯФСј.
о«ЄСФ нЩФэ pС¬«јСЎс«убЎ« »pї їєТюСЎїї сїЯµї»ЅїЎ "Еp«ъpбјјїp«убЎїС",
"ЖСХЎ«Ѕ«ъїґ »p«ъpбјјїp«убЎїґ", "ДЯЎ«уЩ їЎх«pјбµї«ЎЎ«® ФСХЎ«Ѕ«ъїї",
"о«сСЅїp«убЎїС Ўб Шйо". PС¬«јСсТСФЯґ сЅґ їЯ»«Ѕэє«убЎїґ у ТюСнЎ«ј »p«µСЯЯС
Я»СµїбЅэЎ«ЯФС® "Еpї¬ЅбсЎбґ јбФСјбФї¬б", "ЗуФ«јбФїєїp«убЎЎЩС ЯїЯФСјЩ
«нpбн«Ф¬ї їЎх«pјбµїї ї Т»pбуЅСЎїґ", "Еp«ъpбјјЎ«С «нСЯ»СюСЎїС уЩюїЯЅїФСЅэЎЩХ
ї буФ«јбФїєїp«убЎЎЩХ ЯїЯФСј". йЩ»«ЅЎСЎ« Ўб ¬бхСсpС "кЎх«pјбµї«ЎЎЩС ЯїЯФСјЩ
ї ФСХЎ«Ѕ«ъїї".
ЕСюбФбСФЯґ »« УСЮСЎїЇ УСсᬵї«ЎЎ«-їєсбФСЅэЯ¬«ъ« Я«уСФб жбјбУЯ¬«ъ«
ъ«ЯТсбУЯФуСЎЎ«ъ« бЭУ«¬«ЯјїюСЯ¬«ъ« ТЎїуСУЯїФСФб їјСЎї б¬бсСјї¬б ж.Е.и«У«ЅСуб
PѵѡєСЎФ жјїpЎ«у ж.й.
JSBN 5-230-16-955-9 жбјбpЯ¬ї® ъ«ЯТсбpЯФуСЎЎЩ® бЭp«¬«ЯјїюСЯ¬ї® ТЎїуСpЯїФСФ, 1994
ЕPадкжпДйка
мбЯФ«ґЪїС »«Я«нїС ЎС ґуЅґСФЯґ pТ¬«у«сЯФу«ј »« ¬б¬«јТ-Ѕїн« ґєЩ¬Т
»p«ъpбјјїp«убЎїґ. ь«ЅСС Ф«ъ«, µСЅэ Съ« єб¬ЅЇюбСФЯґ ЎС у Ф«ј, юФ«нЩ ЎбТюїФэ
ФСХЎї¬С »p«ъpбјјїp«убЎїґ. й ЎСъ« у«ЮСЅ јбФСpїбЅ, ЯуґєбЎЎЩ® Я ¬«ЎµС»µїС®
«нЫС¬ФЎ«-«pїСЎФїp«убЎЎ«ъ« »«сХ«сб ¬ pбєpбн«Ф¬С »p«ъpбјј, у Я««ФуСФЯФуїї Я
¬«Ф«p«® «¬pТЄбЇЪї® ЎбЯ pСбЅэЎЩ® јїp їЎФСp»pСФїpТСФЯґ ¬б¬ Я«у«¬Т»Ў«ЯФэ
уєбїј«ЯуґєбЎЎЩХ ї уєбїј«сСЯФуТЇЪїХ «нЫС¬Ф«у. о«сСЅїp«убЎїС єбсбю pСбЅэЎ«ъ«
јїpб у pбј¬бХ ЭФ«® ¬«ЎµС»µїї ЯуґєбЎ« Я «»їЯбЎїСј (Я»Сµїхї¬бµї®) «нЫС¬Ф«у
pСбЅэЎ«ъ« јїpб у бсС¬убФЎЩХ ¬бФСъ«pїґХ ґєЩ¬б »p«ъpбјјїp«убЎїґ, юФ« ФpСнТСФ
Ў«у«ъ« уєъЅґсб Ўб ТЄС ЯЅ«ЄїуЮїСЯґ јСФ«сЩ »p«ъpбјјїp«убЎїґ ї ЯуґєбЎ« у
їєуСЯФЎ«ј ЯјЩЯЅС Я »СpС«ЯјЩЯЅСЎїСј јЎ«ъїХ Х«p«Ю« їєуСЯФЎЩХ ї ТЯФ«ґуЮїХЯґ
»«ЎґФї®.
ДЯЎ«уЎбґ µСЅэ сбЎЎ«ъ« »«Я«нїґ єб¬ЅЇюбСФЯґ у Ф«ј, юФ«нЩ с«ЎСЯФї с« юїФбФСЅґ
у ЯЄбФ«® Ѕб¬«ЎїюЎ«® х«pјС «ЯЎ«уЎЩС ¬«ЎµС»µїї «нЫС¬ФЎ«-«pїСЎФїp«убЎЎ«ъ«
»«сХ«сб, »p«їЅЅЇЯФpїp«убФэ їХ ї Ях«pјїp«убФэ «нЪСС »pСсЯФбуЅСЎїС «н ЭФ«ј
Ўб»pбуЅСЎїї, ¬«Ф«p«С »«єу«ЅїФ уЎїјбФСЅэЎ«јТ юїФбФСЅЇ ЅСъ¬« »СpС®Фї «Ф
Тp«уЎґ »«ЎїјбЎїґ »«сХ«сб у µСЅ«ј ¬ Тp«уЎЇ ТјСЎїґ Съ« pСбЅїє«убФэ у
pбєpбн«Ф¬бХ ¬«Ў¬pСФЎЩХ »p«ъpбјј. дЅґ ЭФ«ъ« у «нЪСј ЯЅТюбС сбЄС ЎС
«нґєбФСЅэЎ« їЯ»«Ѕэє«убФэ Я«уpСјСЎЎЩС «нЫС¬ФЎ«-«pїСЎФїp«убЎЎЩС ґєЩ¬ї (у«
јЎ«ъ«ј "»СpСъpТЄСЎЎЩС" Я»СµїбЅэЎЩјї »«ЎґФїґјї). оЎ«ъїС бЯ»С¬ФЩ «нЫС¬ФЎ«-
«pїСЎФїp«убЎЎ«ъ« »«сХ«сб ј«ъТФ нЩФэ pСбЅїє«убЎЩ ї у їєуСЯФЎ«® ФСХЎї¬С
ј«сТЅэЎ«ъ« »p«ъpбјјїp«убЎїґ Я їЯ»«Ѕэє«убЎїСј бнЯФpбъїp«убЎїґ Фї»«у,
јСХбЎїєј«у їј»«pФб-Э¬Я»«pФб, »p«µСЯЯ«у, Я«»p«ъpбјј ї Ф.с.
ЗуФ«p ЯюїФбЅ нЩ Яу«Ї єбсбюТ уЩ»«ЅЎСЎЎ«®, СЯЅї нЩ Т юїФбФСЅґ Ўб «ЯЎ«уС ЭФ«ъ«
»«Я«нїґ ЯЅ«ЄїЅЯґ Я«нЯФуСЎЩ® ¬pїФїюСЯ¬ї® уєъЅґс Ўб «нЫС¬ФЎ«-«pїСЎФїp«убЎЎ«С
¬«ЎЯФpТїp«убЎїС »p«ъpбјјЎЩХ ј«сСЅС®. Жᬫ® уєъЅґс «Я«нСЎЎ« убЄСЎ, »«Я¬«Ѕэ¬Т
»p«ъpбјјїp«убЎїС - нЩЯФp« pбєуїубЇЪбЯґ «нЅбЯФэ єЎбЎїґ. оЎ«ъїС »«ЎґФїґ
«нЫС¬ФЎ«-«pїСЎФїp«убЎЎ«ъ« »«сХ«сб Ўб ЯСъ«сЎґЮЎї® сСЎэ ЎСЅэєґ »pїєЎбФэ
у»«ЅЎС ЯЅ«ЄїуЮїјїЯґ ЎС Ф«Ѕэ¬« у јСФ«сїюСЯ¬«ј, ¬«ЎЯФpТ¬ФїуЎ«ј, Ў« ї у
¬«ЎµС»ФТбЅэЎ«ј «ФЎ«ЮСЎїї. ДЎї ЎС їјСЇФ ЯФp«ъ« «»pСсСЅСЎЎ«® х«pјбЅэЎ«®
јбФСјбФїюСЯ¬«® «ЯЎ«уЩ ї »«ЅЎ«ЯФэЇ нбєїpТЇФЯґ Ўб їЎФТїµїї ї "єсpбу«ј
ЯјЩЯЅС". й ЭФ«ј »ЅбЎС їЯ»«Ѕэє«убЎїС «нЫС¬ФЎ«-«pїСЎФїp«убЎЎ«ъ« »«сХ«сб у
«сЎїХ «нЅбЯФґХ «¬бєЩубСФЯґ уСЯэјб »Ѕ«с«Фу«pЎЩј, у сpТъїХ - ЎСФ.
цpбъјСЎФЩ »p«ъpбјј, »pїуСсСЎЎЩС у »«Я«нїї, «х«pјЅСЎЩ Я їЯ»«Ѕэє«убЎїСј
Ў«Фбµїї, »pїЎґФ«® у ґєЩ¬С о«сТЅб-2. йЩн«p ЭФ«ъ« ґєЩ¬б «ЯЎ«убЎ Ўб суТХ
«нЯФ«ґФСЅэЯФубХ: Фpбсїµїґ ¬«ЅЅС¬Фїуб, у ¬«Ф«p«ј pбн«ФбСФ буФ«p, ї
уЎТФpСЎЎґґ ЯФp«®Ў«ЯФэ о«сТЅЩ, »«єу«ЅґЇЪбґ pбЯЮїpґФэ »p«ъpбјјЎЩС pбєpбн«Ф¬ї
Ўб ЯФp«ъ«® «ЯЎ«уС. йјСЯФС Я ФСј о«сТЅб-2 ґуЅґСФЯґ »pСсЯФбуїФСЅСј ъpТ»»Щ
"»бЯ¬бЅ«їс«у", ¬«Ф«pбґ Юїp«¬« pбЯ»p«ЯФpбЎСЎб.
Е«Я«нїС pбЯЯюїФбЎ« Ўб юїФбФСЅґ, ¬«Ф«pЩ® їјССФ ЎС¬«Ф«pЩ® «»ЩФ
»p«ъpбјјїp«убЎїґ Ўб ґєЩ¬С, їјСЇЪСј ЯpСсЯФуб бнЯФpбъїp«убЎїґ Фї»«у, Ў«
ујСЯФС Я ФСј ЎС «Фґъ«ЪСЎ н«ЅэЮїј ъpТє«ј ЯФбpЩХ »p«нЅСј у ФСХЎ«Ѕ«ъїї
»p«ъpбјјїp«убЎїґ, Я»«Я«нСЎ «ЪТФїФэ ЯФp«®Ў«ЯФэ јбФСјбФїюСЯ¬«® їЎФСp»pСФбµїї
«ФсСЅэЎЩХ јСХбЎїєј«у ЯФpТ¬ФТpїєбµїї ї ъ«Ф«у ЯјСЎїФэ ЯЅ«ЄїуЮїСЯґ їЅї Ф«Ѕэ¬«
Я¬ЅбсЩубЇЪїСЯґ Т ЎСъ« ЯФСpС«Фї»Щ. йЯС ЭФї ТЯЅ«уїґ, »«-уїсїј«јТ, ЎС«нХ«сїјЩ
сЅґ Ф«ъ« у«Я»pїґФїґ јбФСpїбЅб, Ўб ¬«Ф«p«С pбЯЯюїФЩубСФ буФ«p.
Е«Яј«ФpїФС Ўб Х«p«Ю« їєуСЯФЎЩ® йбј јїp »p«ъpбјјїp«убЎїґ юСpСє «нЫС¬ФЎ«-
«pїСЎФїp«убЎЎЩС «ю¬ї - ј«ЄСФ нЩФэ Ф«, юФ« йЩ ТуїсїФС, сбЯФ Ў«уЩ® їј»ТЅэЯ ¬
pбєуїФїЇ йбЮїХ Я»«Я«нЎ«ЯФС® у ЭФ«® «нЅбЯФї.
I. PЗзйкЖка иДмыаЕыкл жЖPфиЖфPкзЗыкк й fзшиЗт ЕPДвPЗоокPДйЗмкf
Е«ЎґФїС ЯФpТ¬ФТpЩ уЯСъсб бЯЯ«µїїpТСФЯґ Я« ЯЅ«ЄЎЩј «нЫС¬Ф«ј, «нЅбсбЇЪїј
Яу«®ЯФу«ј µСЅ«ЯФЎ«ЯФї, ї ујСЯФС Я ФСј Я«ЯФбуЅСЎЎЩј їє »p«ЯФЩХ ¬«ј»«ЎСФ
(юбЯФС®, ЭЅСјСЎФ«у) »ТФСј їЯ»«Ѕэє«убЎїґ «»pСсСЅСЎЎ«® ЯїЯФСјЩ »pбуїЅ.
Еp«ъpбјјїp«убЎїС ј«ЄЎ« їЎФСp»pСФїp«убФэ ¬б¬ їЯ¬ТЯЯФу« pбєЅ«ЄСЎїґ ї
¬ЅбЯЯїхї¬бµїї µСЅ«ъ« Ўб юбЯФї- сС¬«ј»«єїµїї pСЮбСј«® єбсбюї. й ЭФ«ј »ЅбЎС
ЯФpТ¬ФТpїєбµїЇ у »p«ъpбјјїp«убЎїї ј«ЄЎ« Фpб¬Ф«убФэ ¬б¬ »pбуїЅб Фᬫ®
сС¬«ј»«єїµїї. й«єј«ЄЎб, pбєТјССФЯґ, сС¬«ј»«єїµїґ ї нСє »pбуїЅ, Ў« у ЭФ«ј
ЯЅТюбС (¬б¬ ї у ЅЇн«® їъpС нСє »pбуїЅ) »«ЎґФэ, ¬б¬ їє юбЯФС® «нpбєТСФЯґ
ЯФpТ¬ФТpб, ФpТсЎ«, б у «нЪСј ЯЅТюбС, ЎСу«єј«ЄЎ«.
кЯФ«pїюСЯ¬ї ЯФpТ¬ФТpїєбµїґ у »p«ъpбјјїp«убЎїї ЎбюїЎбЅбЯэ Я ууСсСЎїґ у ґєЩ¬ї
»p«ъpбјјїp«убЎїґ Т»pбуЅґЇЪїХ ЯФpТ¬ФТp - «»СpбФ«p«у ТЯЅ«уЎ«ъ« »СpСХ«сб,
уЩн«pб, µї¬Ѕ«у Я pбєЅїюЎЩјї »pбуїЅбјї »«уФ«pСЎїґ ї уЩХ«сб ї Ф.». ыСЅэ Фᬫ®
ЯФpТ¬ФТpїєбµїї єб¬ЅЇюбЅбЯэ у »«уЩЮСЎїї юїФбСј«ЯФї ї »«ЎїјбСј«ЯФї
pбєpбнбФЩубСјЩХ »p«ъpбјј. Еp«ъpбјјїp«убЎїС Я їЯ»«Ѕэє«убЎїСј «»СpбФ«pб
нСєТЯЅ«уЎ«ъ« »СpСХ«сб (GO TO) у ЭФ«ј »ЅбЎС ЯюїФбЅ«Яэ ЎСЄСЅбФСЅэЎЩј, ЎС
у»їЯЩубЇЪїјЯґ у ЯїЯФСјТ »pбуїЅ ЯФpТ¬ФТpїєбµїї. кє ЎС¬«Ф«pЩХ ґєЩ¬«у
»p«ъpбјјїp«убЎїґ ЭФ«Ф «»СpбФ«p нЩЅ у««нЪС ТсбЅСЎ, юФ«нЩ ЎС уу«сїФэ
»p«ъpбјјїЯФ«у у їЯ¬ТЮСЎїС »їЯбФэ Ѕб¬«ЎїюЎЩС, ЭххС¬ФїуЎЩС, Х«p«Ю«
pбн«ФбЇЪїС, Ў« ФpТсЎ« »«ЎїјбСјЩС ї ЎСЯФpТ¬ФТpЎЩС (!) »p«ъpбјјЩ. (й»p«юСј,
у н«ЅСС »«єсЎїХ уСpЯїґХ ЭФїХ ЄС ґєЩ¬«у "ЎСТс«нЎЩ®" GOTO ЎС«ЄїсбЎЎ«
"у«Я¬pСЯбЅ", ЎСЯј«Фpґ Ўб уЯЇ Съ« "ЎСЯФpТ¬ФТpЎ«ЯФэ").
й»«ЯЅСсЯФуїї ЯЅ«ЄїЅ«Яэ јЎСЎїС, юФ« ЯФpТ¬ФТpїєбµїґ - ЭФ« ЯФїЅэ
»p«ъpбјјїp«убЎїґ. о«ЄЎ« »їЯбФэ »p«ъpбјјЩ, ЯЅСсТґ ФᬫјТ ЯФїЅЇ (ї їЯ»«ЅэєТґ
GOTO), б ј«ЄЎ« »їЯбФэ у»«ЅЎС ЎСЯФpТ¬ФТpЎ« ї ујСЯФС Я ФСј, нСє GOTO.
fєЩ¬ї »p«ъpбјїp«убЎїґ, у ¬«Ф«pЩС нЩЅї ууСсСЎЩ Т»pбуЅґЇЪїС ЯФpТ¬ФТpЩ,
«¬бєбЅїЯэ »СpуЩј Юбъ«ј Ўб »ТФї «Ф бЯЯСјнЅСpб с« Я«уpСјСЎЎЩХ ґєЩ¬«у (ґєЩ¬ї
»Сpу«ъ« »«¬«ЅСЎїґ, Ўб»pїјСp, FORTRAN). жЅСсТЇЪїј ЭФб»«ј у pбєуїФїї
¬«ЎµС»µї® ЯФpТ¬ФТpїєбµїї ґуїЅ«Яэ «Я«єЎбЎїС ЎС«нХ«сїј«ЯФї ЯФpТ¬ФТpїєбµїї
сбЎЎЩХ. Е«ґуЅСЎїС Фб¬їХ ЯФpТ¬ФТp, ¬б¬ єб»їЯї, »«Ѕ«ЄїЅ« ЎбюбЅ« їЯ»«Ѕэє«убЎїЇ
у ґєЩ¬бХ »p«ъpбјјїp«убЎїґ јСХбЎїєј«у бнЯФpбъїp«убЎїґ Фї»«у (ґєЩ¬ї уФ«p«ъ«
»«¬«ЅСЎїґ, »pїјСp - PL1). PбєуїФїС ЭФїХ јСХбЎїєј«у, їЎФСp»pСФбµїґ Фї»б ¬б¬
бЅъСнpЩ (јЎ«ЄСЯФу« «нЫС¬Ф«у + јЎ«ЄСЯФу« «»Сpбµї® Ўбс Ўїјї) ї їЯ»«Ѕэє«убЎїС
ј«сТЅґ ¬б¬ »p«ъpбјјЎ«ъ« Э¬уїубЅСЎФб бнЯФpб¬ФЎ«ъ« Фї»б ЯуґєбЎ« Я »«ґуЅСЎїСј
ґєЩ¬«у ФpСФэСъ« »«¬«ЅСЎїґ (Clu, о«сТЅб-2 ї сp.). ДФЅїюїФСЅэЎ«® «Я«нСЎЎ«ЯФэЇ
ЭФїХ ї їј »«с«нЎЩХ ґєЩ¬«у ґуЅґСФЯґ ЎбЅїюїС pбєуїФЩХ ЯpСсЯФу бнЯФpбъїp«убЎїґ
Фї»«у. й ЭФ«ј »ЅбЎС Х«p«Ю« їєуСЯФЎбґ ФСХЎї¬б ј«сТЅэЎ«ъ« »p«ъpбјјїp«убЎїґ
«¬бєбЅбЯэ ТсбюЎ«® «ЯЎ«у«®, Ўб ¬«Ф«p«® ¬«ЎµС»µїґ бнЯФpбъїp«убЎїґ ј«ъЅб
»«ЅТюїФэ Ў«уЩС с«»«ЅЎїФСЅэЎЩС ¬бюСЯФуб. жpСсї ЎїХ у »СpуТЇ «юСpСсэ
у«єј«ЄЎ«ЯФї їЎ¬б»ЯТЅґµїї ї јСХбЎїєјЩ їј»«pФб-Э¬Я»«pФб. кЎ¬б»ЯТЅґµїґ
»«єу«ЅґСФ pбЯЯјбФpїубФэ ј«сТЅэ ¬б¬ Ўбн«p »p«ъpбјјЎЩХ «нЫС¬Ф«у, »«јСЪСЎЎЩХ у
«н«Ѕ«ю¬Т - ¬б»ЯТЅТ. Жб¬бґ «н«Ѕ«ю¬б ј«ЄСФ нЩФэ "ЎС»У«єУбюЎ«®", сСЅбЇЪС®
ЎСу«єј«ЄЎЎЩј їЯ»«Ѕэє«убЎїС «нЫС¬Ф«у, «»pСсСЅСЎЎЩХ у ј«сТЅС, уЎС Съ«,
"»«ЅТ»p«єpбюЎ«®", - у ЭФ«ј ЯЅТюбС уЎС ј«сТЅґ їєуСЯФЎЩ Ф«Ѕэ¬« «нЪїС Яу«®ЯФуб
«нЫС¬Фб (Ўб»pїјСp, єбъ«Ѕ«у«¬ »p«µСсТpЩ), ї »«ЅЎ«ЯФэЇ "»p«єpбюЎ«®" (єб
»pСсСЅбјї ј«сТЅґ ј«ЄЎ« їЯ»«Ѕэє«убФэ уЯС Яу«®ЯФуб Съ« «нЫС¬Ф«у). оСХбЎїєјЩ
їј»«pФб-Э¬Я»«pФб pСъТЅїpТЇФ "ЯФѻѡэ »p«єpбюЎ«ЯФї" ¬б»ЯТЅЩ ј«сТЅґ »ТФСј
їЯ»«Ѕэє«убЎїґ Я««ФуСФуСФЯФуТЇЪїХ сС¬Ѕбpбµї® «»pСсСЅСЎЎЩХ «нЫС¬Ф«у.
дуб «ФјСюСЎЎЩХ бЯ»С¬Фб «»pСсСЅґЇФ ґєЩ¬ї, ¬«Ф«pЩС ј«ЄЎ« ЎбєубФэ ґєЩ¬бјї,
«pїСЎФїp«убЎЎЩјї Ўб «нЫС¬ФЩ. й Фб¬їХ ґєЩ¬бХ »p«ъpбјјб «»pСсСЅґСФЯґ ¬б¬
Ўбн«p ј«сТЅС®, ¬бЄсЩ® їє ¬«Ф«pЩХ Я«сСpЄїФ у ЯСнС «»pСсСЅСЎїС бнЯФpб¬ФЎ«ъ«
Фї»б Ж, сС®ЯФуї® Ўбс «нЫС¬Фбјї ЭФ«ъ« Фї»б Ft ї уЎТФpСЎЎїХ ЯХСј »«уСсСЎїґ
«нЫС¬Ф«у Wt. T ї Ft Э¬Я»«pФїpТЇФЯґ "»«ЅТ»p«єpбюЎЩј Э¬Я»«pФ«ј", Wt -
"ЎСуїсїјЩ" уЎС ј«сТЅґ. Жб¬їј «нpбє«ј, ЅЇн«® ј«сТЅэ «»pСсСЅґСФЯґ Фpїбс«®
M=, б јСХбЎїєјЩ їј»«pФб-Э¬Я»«pФб «»pСсСЅґЇФ ЯФбФїюСЯ¬їС
јСЄј«сТЅэЎЩС Яуґєї.
й ЭФ«® їЎФСp»pСФбµїї ј«сТЅэ с«ЅЄСЎ pбЯЯјбФpїубФэЯґ ¬б¬ »p«ъpбјјЎЩ®
Э¬уїубЅСЎФ «»pСсСЅСЎЎ«ъ« ¬ЅбЯЯб «нЫС¬Ф«у, Я«сСpЄбЪї® у ЯСнС уЯЇ їЎх«pјбµїЇ
«н «нЫС¬ФбХ ЭФ«ъ« ¬ЅбЯЯб. мб»pїјСp, ј«сТЅэ, pСбЅїєТЇЪї® ¬ЅбЯЯ «нЫС¬Ф«у
ЖДщиЗ, с«ЅЄСЎ Я«сСpЄбФэ «»їЯбЎїС бнЯФpб¬ФЎ«ъ« Фї»б "Ф«ю¬ї" (T) ї сС®ЯФуїґ
Ўбс «нЫС¬Фбјї ¬ЅбЯЯб ЖДщиЗ (Ft), Ўб»pїјСp, ЯЅСсТЇЪїС:
PROCEDURE Create (X,Y:CARDINAL): ЖДщиЗ;
(ж«єсбФэ Ф«ю¬Т Я ¬««pсїЎбФбјї X,Y).
PROCEDURE Destroy (VAR T: ЖДщиЗ); (фсбЅїФэ Ф«ю¬Т Ж).
PROCEDURE Sm (T: ЖДщиЗ; New_X, New_Y: CARDINAL);
(ЕСpСјСЯФїФэ Ф«ю¬Т Ж у Ў«уЩС ¬««pсїЎбФЩ New_X, New_Y).
Wt у ЭФ«ј »pїјСpС с«ЅЄЎЩ pСбЅїє«убФэ Я¬pЩФЩС у ј«сТЅС јСХбЎїєјЩ, ЯуґєбЎЎЩС
Я pСбЅїєбµїС® Ft. й «нЪСј ЯЅТюбС Wt ј«ъТФ нЩФэ ЯуґєбЎЩ Я Я«єсбЎїСј
»p«µСЯЯ«у "ЄїєЎї" «нЫС¬Ф«у ¬ЅбЯЯб. мб»pїјСp, «»їЯбЎїС ¬ЅбЯЯб "ЖДщиЗ,
дйкефЦЗfжf ЕД ШиPЗмф оДмкЖДPЗ" с«ЅЄЎ« їЎ¬б»ЯТЅїp«убФэ у ЯСнС »p«µСЯЯЩ
Фᬫъ« суїЄСЎїґ.
Е«сюСp¬ЎСј, юФ« ј«сТЅэ ¬б¬ »p«ъpбјјЎЩ® Э¬уїубЅСЎФ ¬ЅбЯЯб Я«сСpЄїФ
у ЯСнС «»їЯбЎїe Ф«Ѕэ¬« Яу«®ЯФу ЭФ«ъ« ¬ЅбЯЯб. ДнЫС¬ФЩ ¬ЅбЯЯб Я«єсбЇФЯґ уЎС
ј«сТЅґ, б їХ юїЯЅ« у «нЪСј ЯЅТюбС ЎС»pСсЯ¬бєТСј« (у »pїуСсСЎЎ«ј »pїјСpС -
ЭФ« јЎ«ЄСЯФу« «сЎ«уpСјСЎЎ« суїЄТЪїХЯґ Ф«юС¬). ШФ« «нЯФ«ґФСЅэЯФу« »pїу«сїФ ¬
Ф«јТ, юФ« »СpСјСЎЎЩС ¬б¬ »p«ъpбјјЎЩС Э¬уїубЅСЎФЩ «нЫС¬Ф«у ¬ЅбЯЯб ЎС
«»pСсСЅґЇФЯґ у ј«сТЅС-¬ЅбЯЯС ї Я««ФуСФЯФуСЎЎ« ЎС Э¬Я»«pФїpТЇФЯґ єб Съ«
»pСсСЅЩ. (й ј«сТЅС-¬ЅбЯЯС ЖДщиЗ ЎС «»pСсСЅСЎб Ўї «сЎб ¬«Ў¬pСФЎбґ Ф«ю¬б,
«»pСсСЅСЎЩ ЅїЮэ »pбуїЅб ¬«ЎЯФpТїp«убЎїґ Ф«юС¬). й ЭФ«ј ЯјЩЯЅС Э¬Я»«pФ
»СpСјСЎЎЩХ-«нЫС¬Ф«у (юбЯФ« pбєpСЮСЎЎЩ® х«pјбЅэЎ«) с«ЅЄСЎ pбЯЯјбФpїубФэЯґ
¬б¬ ЎбpТЮСЎїС ЯФїЅґ «нЫС¬ФЎ«-«pїСЎФїp«убЎЎ«ъ« »p«ъpбјјїp«убЎїґ.
fєЩ¬ї, «pїСЎФїp«убЎЎЩС Ўб «нЫС¬ФЩ, ґуЅґЇФЯґ »pСсФСюС® «нЫС¬ФЎ«-
«pїСЎФїp«убЎЎЩХ ґєЩ¬«у. Е«ЯЅСсЎїС Хбpб¬ФСpїєТЇФЯґ ЎбЅїюїСј Я»СµїхїюСЯ¬«ъ«
јСХбЎїєјб, pСбЅїєТЇЪСъ« «ФЎ«ЮСЎїґ ¬ЅбЯЯ-»«с¬ЅбЯЯ (Фї»-»«сФї»), ЯуґєбЎЎ«ъ« Я
їЯ»«Ѕэє«убЎїСј јСХбЎїєј«у ЎбЯЅСс«убЎїґ Яу«®ЯФу, «ЯЎ«убЎЎЩХ Ўб
Фб¬Я«Ў«јїюСЯ¬їХ ј«сСЅґХ «н«нЪСЎїґ. Жб¬Я«Ў«јїґ ¬б¬ ЎбТ¬б ЯЅ«ЄїЅбЯэ у 19-ј
уС¬С у pСєТЅэФбФС ЯїЯФСјбФїєбµїї ЎбнЅЇсСЎї® у нї«Ѕ«ъїї (у »СpуТЇ «юСpСсэ).
Жб¬бґ ЯїЯФСјбФїєбµїґ єб¬ЅЇюбЅбЯэ у ТЯФбЎ«уЅСЎїї «ФЎ«ЮСЎї® «нЪСъ« ¬
юбЯФЎ«јТ, Ўб»pїјСp:
"оЅС¬«»їФбЇЪСС" *> "ДнСєэґЎб" *> "яїј»бЎєС".
иЅбЯЯ (»Сpу«ЎбюбЅэЎ« їЯ»«Ѕэє«убЅЯґ ФСpјїЎ "Фб¬Я«Ў") "оЅС¬«»їФбЇЪСС"
Хбpб¬ФСpїєТСФЯґ «нЪїјї Яу«®ЯФубјї, »«с¬ЅбЯЯ "ДнСєэґЎб" у с«»«ЅЎСЎїС ¬ ЭФїј
Яу«®ЯФубј «нЅбсбСФ ТФ«юЎґЇЪїјї (юбЯФЎЩјї) Яу«®ЯФубјї, »pїЯТЪїјї Ф«Ѕэ¬«
«нСєэґЎбј, ї Ф. с. Жб¬їј «нpбє«ј, їЯ»«Ѕэє«убЎЎЩ® Ўбјї Яїју«Ѕ "*>" Т¬бєЩубСФ
Ўб»pбуЅСЎїС pбЯЮїpСЎїґ (с«»«ЅЎСЎїґ) Яу«®ЯФу ¬ЅбЯЯб Съ« »«с¬ЅбЯЯбјї.
оСХбЎїєј ЎбЯЅСс«убЎїґ Яу«®ЯФу у «нЫС¬ФЎ«-«pїСЎФїp«убЎЎЩХ ґєЩ¬бХ »«єу«ЅґСФ
»«уЩЯїФэ Ѕб¬«ЎїюЎ«ЯФэ »p«ъpбјј »ТФСј їЯ»«Ѕэє«убЎїґ сС¬Ѕбpбµї® "¬ЅбЯЯ-
»«с¬ЅбЯЯ" ї їХ ЎбсСЄЎ«ЯФэ, »«Я¬«Ѕэ¬Т ЅЇн«® »«с¬ЅбЯЯ ј«ЄСФ нЩФэ pбєpбн«ФбЎ
Ўб «ЯЎ«уС ТЄС Я«єсбЎЎ«ъ« (ї «ФЅбЄСЎЎ«ъ«!) Ўбс¬ЅбЯЯб. кЯ»«Ѕэє«убЎїС ЭФ«ъ«
јСХбЎїєјб ЎС»«ЯpСсЯФуСЎЎ« ЯуґєбЎ« Я у«єј«ЄЎ«ЯФэЇ pбЯЯЅ«СЎїґ Яу«®ЯФу
»pСсјСФЎ«® «нЅбЯФї, сЅґ ¬«Ф«p«® pбєpбнбФЩубЇФЯґ »p«ъpбјјЩ, ї «»pСсСЅСЎїґ
«ФЎ«ЮСЎї® ¬ЅбЯЯ-»«с¬ЅбЯЯ. збјСФїј, юФ« у« јЎ«ъїХ «нЅбЯФґХ «»pСсСЅСЎїС Фб¬їХ
«ФЎ«ЮСЎї® »p«нЅСјбФїюЎ«.
аЪС «сЎб «ФЅїюїФСЅэЎбґ «Я«нСЎЎ«ЯФэ «нЫС¬ФЎ«-«pїСЎФїp«убЎЎЩХ ґєЩ¬«у
єб¬ЅЇюбСФЯґ у «pъбЎїєбµїї уєбїј«сС®ЯФуї® «нЫС¬Ф«у Ўб «ЯЎ«уС "»«ЯЩЅ¬ї
Я««нЪСЎї®". Е«ґуЅСЎїС Фб¬їХ јСХбЎїєј«у уєбїј«сС®ЯФуї® хб¬ФїюСЯ¬ї pбєpТЮбСФ
¬«ЎµС»µїЇ «pъбЎїєбµїї уЩюїЯЅїФСЅэЎЩХ »p«µСЯЯ«у Ўб Шйо, «ЯЎ«убЎЎ«® Ўб
Фpбсїµї«ЎЎ«® бpХїФС¬ФТpС х«Ў мС®јбЎб. ШФб бpХїФС¬ФТpб, ЯуґєбЎЎбґ Я
»pїЎµї»«ј ХpбЎїј«® »p«ъpбјјЩ ї СС »«ЯЅСс«убФСЅэЎЩј уЩ»«ЅЎСЎїСј Ўб «сЎ«ј (!)
»p«µСЯЯ«pС, «¬бєЩубСФЯґ јбЅ« »pїЯ»«Я«нЅСЎЎ«® сЅґ ј«сСЅїp«убЎїґ ЯїФТбµї®,
¬«ъсб ЎСЯ¬«Ѕэ¬« б¬ФїуЎЩХ «нЫС¬Ф«у хТЎ¬µї«ЎїpТЇФ «сЎ«уpСјСЎЎ« ї јСЎґЇФ Яу«ї
Я«ЯФ«ґЎїґ у pСєТЅэФбФС «нјСЎб Я««нЪСЎїґјї. Pбєpбн«Ф¬б Ў«уЩХ бpХїФС¬ФТpЎЩХ
pСЮСЎї®, бсС¬убФЎЩХ ¬«ЎµС»µїї "«нјСЎб Я««нЪСЎїґјї", Яу«®ЯФуСЎЎ«® «нЫС¬ФЎ«-
«pїСЎФїp«убЎЎ«јТ »«сХ«сТ, ЯуґєбЎб Я Я«єсбЎїСј јЎ«ъ«»p«µСЯЯ«pЎЩХ
¬«ЎхїъТpбµї® Шйо. й Ф« ЄС уpСјґ «нјСЎ Я««нЪСЎїґјї јСЄсТ «нЫС¬Фбјї ј«ЄСФ
нЩФэ Яј«сСЅїp«убЎ ї у «нЩюЎЩХ «сЎ«»p«µСЯЯ«pЎЩХ Шйо Я »«ј«ЪэЇ Х«p«Ю«
їєуСЯФЎЩХ ЯpСсЯФу, «нСЯ»СюїубЇЪїХ Ѕ«ъїюСЯ¬ї® »бpбЅЅСЅїєј уЩ»«ЅЎСЎїґ
«сЎ«уpСјСЎЎЩХ б¬ФїуЎ«ЯФС®: Я«»p«ъpбјј, »p«µСЯЯ«у, »ЅбЎїpТСјЩХ »p«ъpбјј,
Я«нЩФї®ЎЩХ уєбїј«сС®ЯФуї® ї їЯ»«Ѕэє«убЎїґ јСФ«с«у сїЯ¬pСФЎ«-Я«нЩФї®Ў«ъ«
Т»pбуЅСЎїґ.
й µСЅ«ј «нЫС¬ФЎ«-«pїСЎФїp«убЎЎЩ® »«сХ«с ¬ pбєpбн«Ф¬С »p«ъpбјј їЎФСъpїpТСФ у
ЯСнС ¬б¬ јСФ«сЩ ЯФpТ¬ФТpїєбµїї Т»pбуЅСЎїґ, Фб¬ ї ЯФpТ¬ФТpїєбµїЇ сбЎЎЩХ. Еpї
ЭФ«ј »«ЎґФїС «нЫС¬Фб (¬«Ф«p«С х«pјбЅэЎ« Фб¬ ї ЎС «»pСсСЅСЎ«), ЯФp«ъ«
ъ«у«pґ, ЎС Я«сСpЄїФ у ЯСнС ¬б¬їХ-Ф« »pїЎµї»їбЅэЎЩХ «ФЅїюї® у ЭФїХ
pбєЎ«уїсЎ«ЯФґХ ЯФpТ¬ФТpїєбµїї. ДнЫС¬Ф«ј ј«ЄСФ нЩФэ ї ¬«ЎЯФбЎФб, ї
»СpСјСЎЎбґ, ї »p«µСсТpб, ї »p«µСЯЯ. й ЭФ«ј »ЅбЎС »p«Фїу«»«ЯФбуЅСЎїС
¬бФСъ«pї® ЯФбФїюСЯ¬«ъ« ї сїЎбјїюСЯ¬«ъ« Ўб ¬«ЎµС»ФТбЅэЎ«ј Тp«уЎС ФСpґСФ
ЯјЩЯЅ. ДнЫС¬ФЩ у »p«ъpбјјбХ "p«ЄсбЇФЯґ" ї "ТјїpбЇФ", јСЎґЇФ Яу«С Я«ЯФ«ґЎїС,
єб»ТЯ¬бЇФ ї «ЯФбЎбуЅїубЇФ »p«µСЯЯЩ, "ТнїубЇФ" ї "у«єp«ЄсбЇФ" сpТъїС
«нЫС¬ФЩ, Ф. С. у«Я»p«їєу«сґФ уЯС «ФФСЎ¬ї ґуЅСЎї® pСбЅэЎ«ъ« јїpб. Е«с
«нЫС¬Ф«ј ј«ЄЎ« »«сpбєТјСубФэ ЎС¬«Ф«p«С бнЯФpб¬ФЎ«С »«ЎґФїС, Ўб»pїјСp,
"ТpбуЎСЎїС" їЅї "ъpбхї¬ хТЎ¬µїї"; »«ЎґФїС, їјїФїpТЇЪСС pСбЅэЎТЇ ЯїЯФСјТ їЅї
»p«µСЯЯ: "ФС»Ѕ««нјСЎЎї¬", "ЯФбЎ«¬", "буФ«ј«нїЅэ". й ЭФ«ј »ЅбЎС «нЫС¬Ф - ЭФ«
ЯТЪЎ«ЯФэ »p«µСЯЯб їЅї ґуЅСЎїґ, ¬«Ф«pТЇ Я»«Я«нЎЩ уЩсСЅїФэ ЎбЮ «»ЩФ, єЎбЎїґ ї
їЎФТїµїґ.
ДнЫС¬ФЎ«-«pїСЎФїp«убЎЎ«С »p«ъpбјјїp«убЎїС ¬б¬ ї »p«ъpбјјїp«убЎїС у««нЪС
«ЯФбСФЯґ їЯ¬ТЯЯФу«ј, ъсС їЎФТїµїґ їъpбСФ «юСЎэ н«ЅэЮТЇ p«Ѕэ. м« у «ФЅїюїС
«Ф «нЩюЎ«ъ« »p«ъpбјјїp«убЎїґ ЭФ«Ф »«сХ«с »pСсЅбъбСФ Ў«уТЇ »бЅїФpТ јСФ«с«у ї
їЎЯФpТјСЎФ«у сЅґ pСбЅїєбµїї йбЮїХ »pСсЯФбуЅСЎї® « »p«µСЯЯбХ pСбЅэЎ«ъ«
јїpб.
II. жЕаыкцкиЗыкf ДьЬаиЖДй мЗ ДжмДйа ЗьжЖPЗвкPДйЗмкf
Е«ЎґФїС ¬ЅбЯЯб «нЫС¬Ф«у.- кјјбЎСЎФЎЩС Яу«®ЯФуб ¬ЅбЯЯб.- ШЅСјСЎФ ХpбЎСЎїґ.-
ЗъpСъїp«убЎїС Яу«®ЯФу.- жїъЎбФТpЩ.- ЕpСсЯФбуЅСЎїС «нЫС¬Ф«у єЎбюСЎїґјї.-
и«ЎЯФбЎФЩ Фї»б.- ЕСpСюїЯЅїјЩ® Фї».- оЎ«ЄСЯФуСЎЎЩ® Фї».
й «нЫС¬ФЎ«-«pїСЎФїp«убЎЎ«ј »«сХ«сС ¬ pбєpбн«Ф¬С »p«ъpбјј µСЎФpбЅэЎЩј
ґуЅґСФЯґ »«ЎґФїС ¬ЅбЯЯб «нЫС¬Ф«у. иЅбЯЯ «»pСсСЅґСФЯґ ¬б¬ јЎ«ЄСЯФу«
«нЫС¬Ф«у, «нЅбсбЇЪїХ уЎТФpСЎЎїјї (їјјбЎСЎФЎЩјї) Яу«®ЯФубјї, »pїЯТЪїјї
ЅЇн«јТ «нЫС¬ФТ ¬ЅбЯЯб. ЕpїюСј Я»Сµїхї¬бµїґ («»pСсСЅСЎїС) ¬ЅбЯЯб »p«у«сїФЯґ
»ТФСј «»pСсСЅСЎїґ Съ« їјјбЎСЎФЎЩХ Яу«®ЯФу, ¬«Ф«pЩС у ЭФ«ј »ЅбЎС їъpбЇФ p«Ѕэ
¬ЅбЯЯ««нpбєТЇЪїХ »pїєЎб¬«у. мб»pїјСp, Яу«®ЯФу« "їјСФэ ТЯ»СубСј«ЯФэ" »pїЯТЪС
уЯСј «нТюбСјЩј (ЯФТсСЎФбј, Ю¬«ЅэЎї¬бј, ¬ТpЯбЎФбј ї »p.) ї ґуЅґСФЯґ
¬ЅбЯЯ««нpбєТЇЪїј »pїєЎб¬«ј ¬ЅбЯЯб ДьфщЗаошл. й ¬бюСЯФуС сpТъїХ »pїєЎб¬«у
ЭФ«ъ« ¬ЅбЯЯб ј«ъТФ їЯ»«Ѕэє«убФэЯґ, Ўб»pїјСp, "у«єpбЯФ", "Тp«уСЎэ
їЎФСЅЅС¬Фб", "Я»«Я«нЎ«ЯФэ ¬ єб»«јїЎбЎїЇ јбФСpїбЅб" ї Ф.». ж«у«¬Т»Ў«ЯФэ
»«с«нЎЩХ Яу«®ЯФу ї «»pСсСЅґСФ ¬ЅбЯЯ "«нТюбСјЩХ".
Е«ЎґФїС Яу«®ЯФуб ґуЅґСФЯґ, Фб¬їј «нpбє«ј, »СpуїюЎЩј у «»pСсСЅСЎїї ¬ЅбЯЯб.
ж»Сµїхї¬бµїґ ¬ЅбЯЯб Ўї¬б¬ ЎС ЯуґєбЎб Я єбсбЎїСј єЎбюСЎї® Яу«®ЯФу, н«ЅСС
Ф«ъ«, »pїјСЎїФСЅэЎ« ¬ ¬ЅбЯЯТ ъ«у«pїФэ « Фб¬їХ єЎбюСЎїґХ ЎС їјССФ ЯјЩЯЅб -
«нЅбсбЎїС єЎбюСЎїґјї ґуЅґСФЯґ »pСp«ъбФїу«® «нЫС¬Фб. Д»pСЅСЅґґ ¬ЅбЯЯ
ДьфщЗаошл, јЩ єбсбСј ¬«ЎСюЎ«С јЎ«ЄСЯФу« Съ« Яу«®ЯФу (ТЯ»СубСј«ЯФэ, у«єpбЯФ
ї »p.). Д»pСсСЅґґ «нЫС¬Ф ¬ЅбЯЯб (Ўб»pїјСp, Я хбјїЅїС® ЕСФp«у), јЩ с«ЅЄЎЩ
«»pСсСЅїФэ єЎбюСЎїґ ЭФїХ Яу«®ЯФу: фЯ»СубСј«ЯФэ (ЕСФp«уб):= ДФЅїюЎї¬; й«єpбЯФ(ЕСФp«уб):= 20.
ШФ«Ф бЯ»С¬Ф «»pСсСЅґСФ ¬ЅбЯЯ ¬б¬ »«ЎґФїС Э¬ЯФСЎЯї«ЎбЅэЎ«С, б «нЫС¬Ф ¬ЅбЯЯб
- ¬б¬ їЎФСЎЯї«ЎбЅэЎ«С »«ЎґФїС.
ж сpТъ«® ЯФ«p«ЎЩ ЅЇн«® ¬ЅбЯЯ ґуЅґСФЯґ јЎ«ЄСЯФу«ј, Я«ЯФбу «нЫС¬Ф«у ¬«Ф«p«ъ«
ј«ЄСФ јСЎґФэЯґ у сїЎбјї¬С pбн«ФЩ »p«ъpбјјЩ («нТюбСјЩС »pїХ«сґФ ї ТХ«сґФ, б
¬ЅбЯЯ «ЯФбСФЯґ). иЅбЯЯ ¬б¬ јЎ«ЄСЯФу« у ЅЇн«® ј«јСЎФ уpСјСЎї Хбpб¬ФСpїєТСФЯґ
Ўбн«p«ј »pїЎбсЅСЄбЪїХ СјТ «нЫС¬Ф«у ї ј«ЄСФ нЩФэ єбсбЎ »СpСюїЯЅСЎїСј
(Я»їЯ¬«ј «нТюбСјЩХ): ЕСФp«у, кубЎ«у, жїс«p«у, яФСpЎнСpъ.
ШФї суб Я»«Я«нб єбсбЎїґ ¬ЅбЯЯб ЯТЪСЯФуТЇФ ЎСєбуїЯїј« «сїЎ «Ф сpТъ«ъ«.
ж«ЯФбу їјјбЎСЎФЎЩХ Яу«®ЯФу ЯФбФїюСЎ ї «»pСсСЅґСФ Я«сСpЄбФСЅэЎЩ®
ЯСјбЎФїюСЯ¬ї® бЯ»С¬Ф Я»Сµїхї¬бµїї ¬ЅбЯЯб. ж«ЯФбу «нЫС¬Ф«у ¬ЅбЯЯб сїЎбјїюСЎ
ї «»pСсСЅґСФ бЯЯ«µїбФїуЎЩ® (ъpТ»»«у«®) бЯ»С¬Ф ¬ЅбЯЯб. жСјбЎФїюСЯ¬ї® бЯ»С¬Ф
pСбЅїєТСФЯґ у »p«ъpбјјїp«убЎїї Я їЯ»«Ѕэє«убЎїСј бнЯФpб¬ФЎЩХ Фї»«у,
бЯЯ«µїбФїуЎЩ® - Ўб «ЯЎ«уС їЯ»«Ѕэє«убЎїґ јЎ«ЄСЯФуСЎЎЩХ Фї»«у.
мСєбуїЯїј«ЯФэ суТХ бЯ»С¬Ф«у «»їЯбЎїґ ¬ЅбЯЯб єб¬ЅЇюбСФЯґ у Ф«ј, юФ«
ЯТЪСЯФу«убЎїС ¬бЄс«ъ« їє ЎїХ Ўї¬б¬ ЎС ЯуґєбЎ« Я ЯТЪСЯФу«убЎїСј сpТъ«ъ«.
аЯЅї јЎ«ЄСЯФу« ¬ЅбЯЯ««нpбєТЇЪїХ »pїєЎб¬«у »ТЯФ«, ¬ЅбЯЯ ФСј ЎС јСЎСС ј«ЄСФ
ЯТЪСЯФ«убФэ ¬б¬ бЯЯ«µїбµїґ ЎС¬«Ф«pЩХ х«pјбЅэЎЩХ «нЫС¬Ф«у (Яїју«Ѕ«у,
єЎб¬«у). й »pїуСсСЎЎ«ј »pїјСpС хбјїЅїґ - уЯСъ« ЅїЮэ їсСЎФїхї¬бФ«У «нЫС¬Фб,
«Ўб ЎС уХ«сїФ у Я«ЯФбу їјјбЎСЎФЎЩХ Яу«®ЯФу ї »«Ф«јТ ЎС ЎСЯСФ Ўї¬б¬«®
ЯСјбЎФїюСЯ¬«® ЎбъУТє¬ї - јЩ ј«ъЅї нЩ єбјСЎїФэ хбјїЅїЇ "ЕСФУ«у" ЯФУ«¬«®
"тттт", б хбјїЅїЇ "яФСУЎнСУъ" ЯФУ«¬«® "ьСУъЮФСУЎ". аЯЅї бЯЯ«µїбµїґ,
«нУбєТСјбґ ¬ЅбЯЯ«ј, »ТЯФб, ¬ЅбЯЯ ФСј ЎС јСЎСС ЯСјбЎФїюСЯ¬ї ЯТЪСЯФуТСФ ¬б¬
»«ФСЎµїбЅэЎ« у«єј«ЄЎ«С јЎ«ЄСЯФу« «нЫС¬Ф«у, Х«Фґ ї »ТЯФ«С у ЎбЯФ«ґЪї® ј«јСЎФ
уУСјСЎї.
ЕТЯФэ З ґуЅґСФЯґ јЎ«ЄСЯФу«ј «нЫС¬Ф«у б, «нЅбсбЇЪїХ Яу«®ЯФубјї Й:
З={a/P(A)}. йуСсСј «ФЎ«ЮСЎїС: "is-a"-"ґуЅґСФЯґ «нЫС¬Ф«ј ¬ЅбЯЯб" ї "has-a"-
"«нЅбсбСФ Яу«®ЯФубјї". ШФї «ФЎ«ЮСЎїґ ј«ъТФ нЩФэ ЯуґєбЎЩ Ѕ«ъїюСЯ¬«® ЯуґєэЇ
"Ф«ъсб ї Ф«Ѕэ¬« Ф«ъсб" (), «»УСсСЅґЇЪС® б¬Яї«јТ ЯТЪСЯФу«убЎїґ ¬ЅбЯЯб:
_V_ a: a is-a A(P) a has-a P(A). (зсСЯэ _V_ - ¬убЎФ«У «нЪЎ«ЯФї).
P(A) у¬ЅЇюбСФ у ЯСнґ Яу«®ЯФуб суТХ УбєЎ«уїсЎ«ЯФС®: "«нЅбсбФэ юСј Ѕїн«" ї
"«нЅбсбФэ Я»«Я«нЎ«ЯФэЇ (у«єј«ЄЎ«ЯФэЇ) ЯсСЅбФэ юФ« Ѕїн«". мб»УїјСУ,
"«нЅбсбФэ µуСФ«ј" ("їјСФэ µуСФ" їЅї у сбЅэЎС®ЮСј »У«ЯФ« "µуСФ"). ШФб
УбєЎ«уїсЎ«ЯФэ Яу«®ЯФу ЯуґєбЎб Я »УСсЯФбуЅСЎїСј (ХУбЎСЎїСј) у »бјґФї ЅЇн«ъ«
«нЫС¬Фб їЎсїуїсТбЅэЎ«ъ« єЎбюСЎїґ Яу«®ЯФуб. ж»Сµїхї¬бµїґ Фб¬їХ Яу«®ЯФу
ЎбєЩубСФЯґ Я»Сµїхї¬бµїС® »УСсЯФбуЅСЎїґ. ДЎб «»УСсСЅґСФ УбєјСУ «нЅбЯФї
»бјґФї, ЎС«нХ«сїј«® сЅґ ХУбЎСЎїґ єЎбюСЎїґ Яу«®ЯФуб, ї уїс Съ« їЎФСУ»УСФбµїї
(Яј. сбЅСС). ж»Сµїхї¬бµїґ Яу«®ЯФу "«нЅбсбЎїґ Я»«Я«нЎ«ЯФґјї" ЎбєЩубСФЯґ
хТЎ¬µї«ЎбЅэЎ«® Я»Сµїхї¬бµїС® - ЭФ« «»їЯбЎїС сС®ЯФуї® (»У«µСсТУ, хТЎ¬µї®),
¬«Ф«УЩС ј«ъТФ уЩ»«ЅЎїФэ «нЫС¬ФЩ ¬ЅбЯЯб. ибЄс«С Фб¬«С сС®ЯФуїС Фб¬ЄС
ґуЅґСФЯґ єЎбюСЎїСј хТЎ¬µї«ЎбЅэЎ«ъ« Яу«®ЯФуб, ¬«Ф«У«С ј«ЄСФ ХУбЎїФэЯґ у
їЎсїуїсТбЅэЎ«® »бјґФї «нЫС¬Фб. мб»УїјСУ, хТЎ¬µї«ЎбЅэЎ«С Яу«®ЯФу«
"їєуСЯФїФэ" «»УСсСЅґСФ Я»«Я«нЎ«ЯФэ «сЎ«ъ« «нЫС¬Фб »СУСсбубФэ їЎх«УјбµїЇ
сУТъ«јТ. ДЎ« ј«ЄСФ їјСФэ у ¬бюСЯФуС єЎбюСЎї® Фб¬їС јСФ«сЩ (Я»«Я«нЩ)
їєуСЪСЎїґ, ¬б¬ "»«єу«ЎїФэ (»« ФСЅСх«ЎТ)", "»«ЯЅбФэ (»їЯэј«)", "»УїСХбФэ
(ЅїюЎ«)". ж»Сµїхї¬бµїґ »УСсЯФбуЅСЎїґ Яу«®ЯФуб "їєуСЯФїФэ" ХУбЎїФ «сЎ« їє
ФУСХ єЎбюСЎї® (»«єу«ЎїФэ, »«ЯЅбФэ, »УїСХбФэ), хТЎ¬µї«ЎбЅэЎбґ Я»Сµїхї¬бµїґ
«»УСсСЅґСФ «»їЯбЎїС Я««ФуСФЯФуТЇЪїХ јСФ«с«у.
иЅЇюСуЩј »«ЎґФїСј сЅґ Я»Сµїхї¬бµїї »УСсЯФбуЅСЎїґ ґуЅґСФЯґ »«ЎґФїС ЭЅСјСЎФб
ХУбЎСЎїґ. мб»УїјСУ, єЎбюСЎїґ Яу«®ЯФуб "у«єУбЯФ" ј«ъТФ ХУбЎїФэЯґ у «нЫС¬ФЎ«®
»бјґФї у «сЎ«ј јбЮїЎЎ«ј ЯЅ«уС (WORD) їЅї нб®ФС (BYTE). Жї»Щ WORD ї BYTE
«ФЎ«ЯґФЯґ ¬ ¬бФСъ«Уїї јбЮїЎЎ«-«УїСЎФїУ«убЎЎЩХ ¬«Ў¬УСФЎЩХ Фї»«у. ДЎї
«»УСсСЅґЇФ Ф«Ѕэ¬« УбєјСУЩ ЭЅСјСЎФб ХУбЎСЎїґ ї «ЯФбуЅґЇФ »У«ъУбјјїЯФТ »«ЅЎТЇ
Яу«н«сТ сЅґ «»УСсСЅСЎїґ їЎФСУ»УСФбµїї єЎбюСЎїґ, ХУбЎґЪСъ«Яґ у Фᬫј
ЭЅСјСЎФС. и ¬«Ў¬УСФЎЩј Фї»бј «ФЎ«ЯґФЯґ уЯС Фї»Щ ґєЩ¬б »У«ъУбјјїУ«убЎїґ,
їЎФСУ»УСФбµїґ ¬«Ф«УЩХ «»УСсСЅґСФЯґ јСХбЎїєјбјї, уЯФУ«СЎЎЩјї у ґєЩ¬.
мб»УїјСУ, Фї» CARDINAL, «нЫС¬ФЩ ¬«Ф«У«ъ« їЎФСУ»УСФїУТЇФЯґ ¬б¬ ЎбФТУбЅэЎЩС
юїЯЅб, Фї» INTEGER, їЎФСУ»УСФїУТСјЩ® ¬б¬ µСЅ«С Я« єЎб¬«ј, REAL -
сС®ЯФуїФСЅэЎ«С юїЯЅ« ї сУ. йЯФУ«СЎЎ«ЯФэ јСХбЎїєјб їЎФСp»УСФбµїї ¬«Ў¬УСФЎЩХ
Фї»«у єбсбСФ ї УбєјСУЩ ЭЅСјСЎФ«у ХУбЎСЎїґ «нЫС¬Ф«у Я««ФуСФЯФуТЇЪїХ Фї»«у.
Жб¬їС УбєјСУЩ ј«ъТФ нЩФэ «»УСсСЅСЎЩ Я »«ј«ЪэЇ Я»СµїбЅэЎЩХ хТЎ¬µї®: SIZE
() ї TSIZE (). мб»pїјСp, TSIZE (CARDINAL) = 2 (нб®Фб); SIZE
(V) = 2 (нб®Фб) / V is-a CARDINAL. (зсСЯэ / уЩ»«ЅЎґСФ У«Ѕэ »УСхї¬Яб
ТЯЅ«уїґ). й УбєЎЩХ УСбЅїєбµїґХ ї уСУЯїґХ ґєЩ¬б »У«ъУбјјїУ«убЎїґ сЅґ
»УСсЯФбуЅСЎїґ «нЫС¬Ф«у «сЎ«ъ« ї Ф«ъ« ЄС ¬«Ў¬УСФЎ«ъ« Фї»б ј«ъТФ
їЯ»«Ѕэє«убФэЯґ УбєЎЩС ЭЅСјСЎФЩ ХУбЎСЎїґ. мб»УїјСУ, TSIZE (ADDRESS) =
2(нб®Фб) сЅґ 16-УбєУґсЎ«® Шйо у ґєЩ¬С о«сТЅб-2 (УСбЅїєбµїґ Ўб Шйо жо-4), у
Ф« ЄС уУСјґ TSIZE (ADDRESS) = 4 сЅґ сУТъ«® уСУЯїї ЭФ«ъ« ЄС ґєЩ¬б »Уї
УСбЅїєбµїї Ўб ЕШйо Фї»б IBM PC.
ЗнЯФУб¬ФЎЩ® Фї» ¬«ЎЯФУТїУТСФЯґ »«Ѕэє«убФСЅСј Ўб «ЯЎ«уС бъУСъїУ«убЎїґ
¬«Ў¬УСФЎЩХ Фї»«у. Жб¬«С бъУСъїУ«убЎїС ЯуґєбЎ« Я «нЫСсїЎСЎїСј ЎСЯ¬«Ѕэ¬їХ
Яу«®ЯФу «нЫС¬Фб у ЯїЯФСјТ ¬ЅбЯЯ««нpбєТЇЪїХ »pїєЎб¬«у, «»УСсСЅґЇЪїХ Ў«уЩ®
¬ЅбЯЯ. ЗъУСъїУ«убЎїС УСбЅїєТСФ «ФЎ«ЮСЎїС "Я«ЯФ«їФ їє" (con-of). мб»УїјСУ,
«ФЎ«ЮСЎїС A con-of (B,C), ъсС З,й,ж - Яу«®ЯФуб, ј«ЄСФ нЩФэ УСбЅїє«убЎ« у
ґєЩ¬С »У«ъУбјјїУ«убЎїґ сС¬ЅбУбµїС®, ЯуґєбЎЎ«® Я «»УСсСЅСЎїСј Х«У«Ю«
їєуСЯФЎ«ъ« Фї»б єб»їЯї:
TYPE A=RECORD
: B;
: C
END
Жб¬їј «нУбє«ј, єб»їЯэ - ЭФ« бъУСъбФ, Я«ЯФбуЅСЎЎЩ® їє УбєЎ«У«сЎЩХ Яу«®ЯФу.
ЗъУСъїУ«убЎїС «сЎ«У«сЎЩХ Яу«®ЯФу ЯуґєбЎ« Я їЯ»«Ѕэє«убЎїСј »«ЎґФїґ јбЯЯїуб.
мб»УїјСУ, сС¬ЅбУбµїґ
TYPE A = ARRAY [1:3] OF B
«»УСсСЅґСФ бъУСъбФ З con-of(B,B,B). ЙбєјСУ ЭЅСјСЎФб ХУбЎСЎїґ «нЫС¬Фб-
бъУСъбФб «»УСсСЅґСФЯґ »У«ЯФЩј ЯТјјїУ«убЎїСј УбєјСУ«у ЭЅСјСЎФ«у ХУбЎСЎїґ Съ«
¬«ј»«ЎСЎФ, сЅґ »«ЯЅСсЎСъ« »УїјСУб:
TSIZE (A) = 6 / TSIZE(B)=2.
ж»Сµїхї¬бµїґ їјјбЎСЎФЎЩХ Яу«®ЯФу Фї»б "«нЅбсбФэ Я»«Я«нЎ«ЯФэЇ" (Я»Сµїхї¬бµїґ
јСФ«с«у, сС®ЯФуї®) ЯуґєбЎб Я їЯ»«Ѕэє«убЎїСј «Я«н«® УбєЎ«уїсЎ«ЯФї
бнЯФУбъїУ«убЎїґ - «»pСсСЅСЎїСј ЯїъЎбФТУ, pСбЅїєТСјЩХ «нЩюЎ« »У«µСсТУЎЩјї
Фї»бјї. Е«ЎґФїС ЯїъЎбФТУЩ ЯуґєбЎ« Я Я«у«¬Т»Ў«ЯФэЇ «»СУбµї® (сС®ЯФуї®),
»У«їєу«сїјЩХ Ўбс «нЫС¬Ф«ј. Жб¬бґ Ф«ю¬б єУСЎїґ »«сУбєТјСубСФ "»бЯЯїуЎ«ЯФэ"
«нЫС¬Фб - уСсэ сС®ЯФуїС »У«їєу«сїФЯґ Ўбс Ўїј. мб»УїјСУ, «нЫС¬Ф ¬ЅбЯЯб
йшипЧщЗЖапЈ ј«ЄЎ« й¬ЅЇюїФэ ї йЩ¬ЅЇюїФэ. жТЪСЯФуТСФ ї »Уґј« »У«Фїу«»«Ѕ«ЄЎбґ
Ф«ю¬б єУСЎїґ (ФС«Уїґ б¬Ф«У«у, ґєЩ¬ ЗиЖДЙ), у Я««ФуСФЯФуїї Я ¬«Ф«У«® «нЫС¬Ф
Я»«Я«нСЎ »У«їєу«сїФэ сС®ЯФуїґ (б¬ФїуСЎ), у ЭФ«ј ЯЅТюбС ЯїъЎбФТУб - ЭФ«
Я«у«¬Т»Ў«ЯФэ Съ« Я»«Я«нЎ«ЯФС®.
дЅґ «»pСсСЅСЎїґ ЯїъЎбФТУ їЯ»«ЅэєТЇФЯґ »У«µСсТУЎЩС Фї»Щ. й «нЪСј ЯЅТюбС
ЅЇн«® »У«µСсТУЎЩ® Фї» «»УСсСЅґСФ:
- ¬ЅбЯЯ у«єј«ЄЎЩХ сС®ЯФуї®;
- ¬ЅбЯЯЩ «нЫС¬Ф«у, Ўбс ¬«Ф«УЩјї ј«ъТФ нЩФэ
»У«їєуСсСЎЩ ЭФї сС®ЯФуїґ.
мб»УїјСУ, Я»Сµїхї¬бµїґ
TYPE DST = PROCEDURE (VAR йшипЧщЗЖапЈ)
«»УСсСЅґСФ у«єј«ЄЎЩС сС®ЯФуїґ Ўбс «нЫС¬Фбјї ¬ЅбЯЯб йшипЧщЗЖапЈ. пЇнбґ
»У«µСсТУб, «»їЯбЎЎбґ у »У«ъУбјЎ«ј ј«сТЅС ї їјСЇЪбґ єбъ«Ѕ«у«¬ х«УјбЅэЎ«
Я«у»бсбЇЪї® Я сС¬ЅбУбµїС® DST, ј«ЄСФ УбЯЯјбФУїубФэЯґ ¬б¬ «нЫС¬Ф ¬ЅбЯЯб DST.
мб»УїјСУ, сС®ЯФуїґ "у¬ЅЇюїФэ" ї "уЩ¬ЅЇюїФэ" ј«ъТФ УбЯЯјбФУїубФэЯґ ¬б¬
ЭЅСјСЎФЩ ¬ЅбЯЯб DST Ф«Ѕэ¬« »Уї ТЯЅ«уїї, юФ« єбъ«Ѕ«у¬ї »У«µСсТУ, «»їЯЩубЇЪїХ
ЭФї сС®ЯФуїґ, «»УСсСЅСЎЩ у ЯЅСсТЇЪСј уїсС :
PROCEDURE й¬ЅЇюїФэ (VAR S: йшипЧщЗЖапЈ);
PROCEDURE йЩ¬ЅЇюїФэ (VAR S: йшипЧщЗЖапЈ);.
ЖСУјїЎ ЯїъЎбФТУб «ФЎ«ЯїФЯґ ¬ јбФСјбФї¬С, у »У«ъУбјїУ«убЎїї «Ў їЯ»«ЅэєТСФЯґ
¬б¬ ЯїЎ«Ўїј »«ЎґФїґ ¬ЅбЯЯ сС®ЯФуї® (јСФ«с«у). й о«сТЅС-2 ЯТЪСЯФуТСФ
¬«Ў¬УСФЎЩ® »У«µСсТУЎЩ® Фї», «нЫС¬Фбјї ¬«Ф«У«ъ« ґуЅґЇФЯґ »У«µСсТУЩ нСє
»бУбјСФУ«у:
ЖYPE PROC = PROCEDURE (); .
ШЅСјСЎФЩ ХУбЎСЎїґ Фб¬їХ «нЫС¬Ф«у ХбУб¬ФСУїєТЇФЯґ «ФЎ«ЮСЎїСј TSIZE (PROC) =
TSIZE (ADDRESS), Ф.С. у ¬бюСЯФуС «нЫС¬Ф«у ЭФ«ъ« ¬«Ў¬УСФЎ«ъ« »У«µСсТУЎ«ъ«
Фї»б їЯ»«ЅэєТЇФЯґ бсУСЯб уХ«с«у у Я««ФуСФЯФуТЇЪїС »У«µСсТУЩ (Ф«ю¬ї єб»ТЯ¬б
- б¬Фїубµїї »У«µСсТУ). ШФ« «ФЎ«ЮСЎїС Я»pбуСсЅїу« сЅґ ЅЇн«ъ« »p«µСсТpЎ«ъ«
Фї»б. й ЭФ«ј ЯјЩЯЅС Я»Сµїхї¬бµїґ »УСсЯФбуЅСЎїґ јСФ«с«у ЎїюСј ЎС «ФЅїюбСФЯґ
«Ф Я»Сµїхї¬бµїї »УСсЯФбуЅСЎїґ ЅЇнЩХ сУТъїХ ЎС»У«µСсТУЎЩХ ¬ЅбЯЯ«у.
й ЅЇн«ј ЭЅСјСЎФС ХУбЎСЎїґ, ЯуґєбЎЎ«ј Я «»УСсСЅСЎЎЩј ¬ЅбЯЯ«ј, ХУбЎїФЯґ
»УСсЯФбуЅСЎїС «нЫС¬Фб ЭФ«ъ« ¬ЅбЯЯб. Жб¬«С »УСсЯФбуЅСЎїС «нУбєТСФЯґ
єЎбюСЎїґјї, єб»їЯбЎЩјї у ЭЅСјСЎФ ХУбЎСЎїґ. пЇн«С Яу«®ЯФу« у Шйо Я
«ъУбЎїюСЎЎ«® УбєУґсЎ«® ЯСФ¬«® (б «Ўб уЯСъсб «ъУбЎїюСЎб) ј«ЄСФ
»УСсЯФбуЅґФэЯґ ¬«ЎСюЎЩј јЎ«ЄСЯФу«ј єЎбюСЎї®. мб»УїјСУ, Яу«®ЯФу«,
ХбУб¬ФСУїєТСј«С Фї»«ј CARDINAL, ј«ЄСФ нЩФэ »УСсЯФбуЅСЎ« 2n УбєЅїюЎЩјї
єЎбюСЎїґјї ЎбФТУбЅэЎЩХ юїЯСЅ, єсСЯэ n - УбєУґсЎ«ЯФэ Шйо. дЅґ 16-УбєУґсЎ«ъ«
ЯЅ«уб ЭФ«Ф Я»С¬ФУ єЎбюСЎї® у¬ЅЇюбСФ ЎбФТУбЅэЎЩС юїЯЅб «Ф 0 с« 216 - 1 = 65
535. жу«®ЯФу«, Хбpб¬ФСpїєТСј«С Фї»«ј CHAR (ЅїФСУб), ј«ЄСФ нЩФэ »УСсЯФбуЅСЎ« 28 = 256 УбєЅїюЎЩјї Яїју«Ѕбјї (їє Ўбн«Уб ASCII ї ъpбхїюСЯ¬їХ Яїју«Ѕ«у),
»«Я¬«Ѕэ¬Т ЭЅСјСЎФ ХУбЎСЎїґ Фᬫъ« Яу«®ЯФуб їјССФ УбєјСУ у «сїЎ нб®Ф: TSIZE
(CHAR) = 1.
пЇн«С єЎбюСЎїС, ¬«Ф«У«С ј«ЄСФ »УСсЯФбуЅґФэ Яу«®ЯФу«, ХбУб¬ФСУїєТСј«С ФСј
їЅї їЎЩј Фї»«ј, ЎбєЩубСФЯґ ¬«ЎЯФбЎФ«® ЭФ«ъ« Фї»б. Жб¬, Ўб»УїјСУ, 'A' -
¬«ЎЯФбЎФб Фї»б CHAR, б 177 - ¬«ЎЯФбЎФб Фї»б CARDINAL ї INTEGER. Е«Я¬«Ѕэ¬Т
јЎ«ЄСЯФу« ¬«ЎЯФбЎФ ЅЇн«ъ« Фї»б ¬«ЎСюЎ«, «Ў« уЯСъсб ј«ЄСФ нЩФэ єбсбЎ« »УґјЩј
»СУСюїЯЅСЎїСј. й ЭФ«ј ЯјЩЯЅС ЅЇн«® Фї», УСбЅїєТСјЩ® у Шйо, Яу«сїФЯґ ¬
»СУСюїЯЅїј«јТ Фї»Т. ДсЎб¬«, »«Я¬«Ѕэ¬Т уУґс Ѕї Тс«нЎ« ¬бЄсЩ® Убє
»СУСюїЯЅґФэ, Ўб»УїјСУ, 216 УбєЅїюЎЩХ єЎбюСЎї® ¬бУсїЎбЅэЎ«ъ« Фї»б, УбєТјЎ«
єбјСЎїФэ Фб¬«С »СУСюїЯЅСЎїС ЯЯЩЅ¬«® у «»їЯбЎїї »У«ъУбјјЩ Ўб ¬«Ў¬УСФЎЩ®
ЯФбЎсбУФЎЩ® Фї» CARDINAL. дЅґ «ъУбЎїюСЎїґ »«ЅЎ«ъ« јЎ«ЄСЯФуб єЎбюСЎї® у
ґєЩ¬бХ »У«ъУбјјїУ«убЎїґ їЯ»«ЅэєТЇФЯґ Фб¬ ЎбєЩубСјЩС «ФУСє¬ї Фї»б -
Т»«Уґс«юСЎЎЩС »«сјЎ«ЄСЯФуб »«ЅЎ«ъ« јЎ«ЄСЯФуб ¬«ЎЯФбЎФ ЯФбЎсбУФЎ«ъ«
¬«Ў¬УСФЎ«ъ« Фї»б.
й ¬«ЎФС¬ЯФС ЎбЮСъ« »«Я«нїґ убЄЎ« «ФјСФїФэ, юФ« »УСсЯФбуЅСЎїС «нЫС¬Фб
єЎбюСЎїґјї ј«ЄСФ нЩФэ Я¬«ЎЯФУТїУ«убЎ« »ТФСј їјСЎ«убЎїґ ¬«ЎЯФбЎФ Фї»б. дЅґ
УСбЅїєбµїї ЭФ«® у«єј«ЄЎ«ЯФї їЯ»«ЅэєТСФЯґ »СУСюїЯЅСЎїС, Ўб»УїјСУ:
TYPE м«Фб=(д«, ЙС, ої, цб, ж«Ѕэ, пґ, жї); .
зсСЯэ »УСсЯФбуЅСЎїС ЅЇн«ъ« «нЫС¬Фб м«Фб «ъУбЎїюїубСФЯґ їЯ»«Ѕэє«убЎїСј ЯСјї
¬«ЎЯФбЎФ. Е«Я¬«Ѕэ¬Т їјСЎб Фб¬їХ ¬«ЎЯФбЎФ ЎбєЎбюбСФ »У«ъУбјјїЯФ, »«с«нЎ«С
їјСЎ«убЎїС Я«сСУЄїФ ЭЅСјСЎФЩ бнЯФpбъїУ«убЎїґ Фї»б.
мб нбєС ¬ЅбЯЯб Я «ъУбЎїюСЎЎЩј Я»С¬ФУ«ј єЎбюСЎї® ј«ЄЎ« Я¬«ЎЯФУТїУ«убФэ Ў«уЩ®
¬ЅбЯЯ «нЫС¬Ф«у Я н«ЅСС ЮїУ«¬їј Я»С¬ФУ«ј. Жб¬«С ¬«ЎЯФУТїУ«убЎїС нбєїУТСФЯґ
Ўб µСЎФУбЅэЎ«ј »«ЯФТЅбФС ФС«Уїї јЎ«ЄСЯФу, у Я««ФуСФЯФуїї Я ¬«Ф«УЩј «нЫС¬Ф«ј
јЎ«ЄСЯФуб ј«ЄСФ нЩФэ ЅЇн«С їє Съ« »«сјЎ«ЄСЯФу. Жб¬, Ўб»УїјСУ, їЯ»«ЅэєТґ
«»УСсСЅСЎЎЩ® уЩЮС Фї» "м«Фб", ј«ЄЎ« Я¬«ЎЯФУТїУ«убФэ ¬ЅбЯЯ "З¬¬«Ус",
ЭЅСјСЎФбјї ¬«Ф«У«ъ« нТсТФ ґуЅґФэЯґ УбєЅїюЎЩС ¬«јнїЎбµїї Ў«Ф. дЅґ ЭФ«ъ« у
ґєЩ¬бХ »У«ъУбјјїУ«убЎїґ їЯ»«ЅэєТСФЯґ јЎ«ЄСЯФуСЎЎЩ® Фї», «»УСсСЅґСјЩ® Ўб
«ЯЎ«уС нбє«у«ъ« »СУСюїЯЅїј«ъ« Фї»б:
TYPE З¬¬«Ус = SET OF м«Фб; .
иЅбЯЯ "З¬¬«Ус" у¬ЅЇюбСФ у ЯСнґ ТЄС ЎС 7, б 27 «нЫС¬Ф«у, »УСсЯФбуЅСЎїС
¬«Ф«УЩХ «»УСсСЅґСФЯґ јЎ«ЄСЯФуСЎЎЩјї ¬«ЎЯФбЎФбјї. жУСсї ЎїХ:
{ д« } -"юїЯФбґ" Ў«Фб "д«";
{ д«, ої } -ᬬ«Ус, Я«ЯФбуЅСЎЎЩ® їє суТХ Ў«Ф;
{ д«..жї } -ᬬ«Ус, у¬ЅЇюбЇЪї® у ЯСнґ уЯЇ «¬ФбуТ;
{} - ᬬ«Ус "ј«ЅюбЎїґ", ЎС Я«сСУЄбЪї® Ўї «сЎ«® Ў«ФЩ.
ШЅСјСЎФ ХУбЎСЎїґ «нЫС¬Фб "З¬¬«Ус" с«ЅЄСЎ с«»ТЯ¬бФэ УбєјСЪСЎїС у ЎСј 27
УбєЅїюЎЩХ єЎбюСЎї®, ЯЅСс«убФСЅэЎ«, јїЎїјбЅэЎЩј бсУСЯТСјЩј ЭЅСјСЎФ«ј,
»Уїъ«сЎЩј сЅґ ХУбЎСЎїґ ᬬ«Ус«у, ґуЅґСФЯґ нб®Ф:
TSIZE(З¬¬«Ус) =1.
ДнЫС¬Ф нбє«у«ъ« ¬ЅбЯЯб (м«Фб) у ЭФ«ј »УїјСУС Фб¬ЄС нТсСФ УбєјСЪбФэЯґ у
«сЎ«ј нб®ФС, ЎСЯј«ФУґ Ўб Ф«, юФ« їЯ»«Ѕэє«убФэЯґ сЅґ »УСсЯФбуЅСЎїґ нТсТФ
ЅїЮэ 3 нїФб. оЎ«ЄСЯФуСЎЎЩ® Фї», »«ЯФУ«СЎЎЩ® Ўб «ЯЎ«уС «ФУСє¬б Фї»б [0..15],
«нУбєТСФ ЯФбЎсбУФЎЩ® Фї»
BITSET = SET OF [0..15].
мСФУТсЎ« єбјСФїФэ, юФ« TSIZE(BITSET)=2 (нб®Фб). ЙбєјСУ ЭЅСјСЎФб ХУбЎСЎїґ
ЅЇн«ъ« јЎ«ЄСЯФуСЎЎ«ъ« Фї»б у нб®ФбХ «»УСсСЅґСФЯґ уЩУбЄСЎїСј
N DIV 8 +(N MOD 8) DIV (N MOD 8).
зсСЯэ N - юїЯЅ« ¬«ЎЯФбЎФ нбє«у«ъ« Фї»б, MOD ї DIV - «»СУбµїї Я««ФуСФЯФуСЎЎ«
сСЅСЎїґ »« ј«сТЅЇ ї ЎбµСЅ« (»УСс»«ЅбъбСФЯґ, юФ« 0 DIV 0 = 0).
цб¬ФїюСЯ¬ї УбєјСУ ЭЅСјСЎФб ХУбЎСЎїґ јЎ«ЄСЯФуСЎЎ«ъ« Фї»б «»УСсСЅґСФЯґ ФСј,
юФ« у ¬бюСЯФуС »УСсЯФбуЅСЎїґ «нЫС¬Фб Фᬫъ« Фї»б їЯ»«ЅэєТСФЯґ
ХбУб¬ФСУїЯФїюСЯ¬бґ хТЎ¬µїґ јЎ«ЄСЯФуб. мб»УїјСУ, »УСсЯФбуЅСЎїС ᬬ«pсб
{д«,ої,жї} у нб®ФС нТсСФ уЩъЅґсСФэ ЯЅСсТЇЪїј «нУбє«ј:
жї пґ ж«Ѕэ цб ої PС д«
+--+--+--+----+--+--+--+--+ (7-® нїФ ЎС
| ?| 1| 0| 0| 0| 1| 0| 1| їЯ»«ЅэєТСФЯґ)
+--+--+--+----+--+--+--+--+
7 6 5 4 3 2 1 0 мбс «нЫС¬Фбјї јЎ«ЄСЯФуСЎЎ«ъ« Фї»б «»УСсСЅСЎЩ хТЎ¬µїї, ЯуґєбЎЎЩС Я
ЭЅСјСЎФбУЎЩјї «»СУбµїґјї Ўбс јЎ«ЄСЯФубјї («нЫСсїЎСЎїС, »СУСЯСюСЎїС,
УбєЎ«ЯФэ, ЯїјјСФУїюСЯ¬бґ УбєЎ«ЯФэ); »У«уСУ¬«® Я«ЯФ«ґЎїґ јЎ«ЄСЯФуб (»«
ХбУб¬ФСУїЯФїюСЯ¬«® хТЎ¬µїї); у¬ЅЇюСЎїСј/їЯ¬ЅЇюСЎїСј нбє«уЩХ «нЫС¬Ф«у у
јЎ«ЄСЯФу« ї Ф.». Е«сУ«нЎСС «н ЭФ«ј ј«ЄЎ« »У«юїФбФэ у УТ¬«у«сЯФуС »« ґєЩ¬Т
»У«ъУбјјїУ«убЎїґ.
кЯ»«Ѕэє«убЎїС ХбУб¬ФСУїЯФїюСЯ¬«® хТЎ¬µїї сЅґ »УСсЯФбуЅСЎїґ «нЫС¬Ф«у
јЎ«ЄСЯФуСЎЎ«ъ« Фї»б »«єу«ЅґСФ «УъбЎїє«убФэ ЭххС¬ФїуЎТЇ Убн«ФТ Я Фб¬їјї
«нЫС¬Фбјї Ўб ТУ«уЎС ЭЅСјСЎФ«у ХУбЎСЎїґ.
III. кдамЖкцкиЗыкf ДьЬаиЖДй
ксСЎФїхї¬бµїґ їјСЎ«убЎїСј.- иубЅїсСЎФ.- дїЯФбЎµїґ с«ЯФТ»б.- Д»СpбФ«p
»pїЯ«СсїЎСЎїґ.- кЎсС¬Яїp«убЎїС.- ксСЎФїхї¬бµїґ Т¬бєбЎїСј.- жу«н«сЎЩ® ї
«ъpбЎїюСЎЎЩ® Т¬бєбФСЅї.- Жї» ADDRESS.- иубЅїсСЎФ Я »«ЯФхї¬Я«ј "^".
ксСЎФїхї¬бµїґ «нЫС¬Фб єб¬ЅЇюбСФЯґ у «»УСсСЅСЎїї (ЎбХ«ЄсСЎїї) Съ« ЭЅСјСЎФб
ХУбЎСЎїґ ї »«ЅТюСЎїї с«ЯФТ»б ¬ »УСсЯФбуЅСЎїЇ «нЫС¬Фб - єЎбюСЎїґј Съ«
Яу«®ЯФу.
жТЪСЯФуТСФ суб «ЯЎ«уЎЩХ Я»«Я«нб їсСЎФїхї¬бµїї «нЫС¬Фб: їјСЎ«убЎїС ї
Т¬бєбЎїС. кјСЎ«убЎїС єб¬ЅЇюбСФЯґ у ЎбєЎбюСЎїї «нЫС¬ФТ «»УСсСЅСЎЎ«ъ« їјСЎї.
Жб¬«С ЎбєЎбюСЎїС »У«їєу«сїФЯґ Ўб хбєС ФУбЎЯЅґµїї, ї у »У«µСЯЯС уЩ»«ЅЎСЎїґ
»У«ъУбјјЩ «нЫС¬Ф ЎС ј«ЄСФ нЩФэ »СУСїјСЎ«убЎ. мб»УїјСУ, сС¬ЅбУбµїґ
VAR A,B: ДнЫС¬Ф
«»УСсСЅґСФ ЎбЅїюїС у »У«ъУбјјС суТХ «нЫС¬Ф«у Я їјСЎбјї З ї B
Я««ФуСФЯФуСЎЎ«, ¬бЄсЩ® їє ¬«Ф«УЩХ їјССФ їЎсїуїсТбЅэЎЩ® ЭЅСјСЎФ ХУбЎСЎїґ.
ДнУбФїФэЯґ ¬ «нЫС¬ФТ З »« їјСЎї й у ЎбсСЄсС, юФ« "«Ў йбЯ ТЯЅЩЮїФ"
ЎСу«єј«ЄЎ«, ЎСу«єј«ЄЎЩ «»СУбµїї уїсб "мбєубФэ «нЫС¬Ф З Ў«уЩј їјСЎСј йДйЗ".
кјґ - ЭФ« бФУїнТФ »У«ъУбјјЩ, «нСЯ»СюїубЇЪї® у« уЯСХ ЯїФТбµїґХ с«ЯФТ» ¬
«сЎ«јТ ї Ф«јТ ЄС «нЫС¬ФТ. Е«ЎґФїС "їјґ" у ґєЩ¬бХ »У«ъУбјјїУ«убЎїґ
їЯ»«ЅэєТСФЯґ ¬б¬ ЯїЎ«Ўїј »«ЎґФїґ "їсСЎФїхї¬бФ«У". й ЭФ«ј ЯјЩЯЅС »У«µСЯЯ
»У«ъУбјјїУ«убЎїґ ї уЩ»«ЅЎСЎїґ »У«ъУбјјЩ ґуЅґСФЯґ »У«µСЯЯ«ј їєјСЎСЎїґ Ф«Ѕэ¬«
»УСсЯФбуЅСЎїґ «нЫС¬Ф«у, Ў« ЎС »УбуїЅ їХ їсСЎФїхї¬бµїї.
кјСЎ«убФэЯґ ј«ъТФ ї «ФсСЅэЎЩС Яу«®ЯФуб «нЫС¬Ф«у-бъУСъбФ«у. й ЭФ«ј ЯЅТюбС
Фб¬їС їјСЎб ЎбєЩубЇФ ¬убЅїхїµїУ«убЎЎЩјї їсСЎФїхї¬бФ«Убјї - ¬убЅїсСЎФбјї,
«Ўї УСбЅїєТЇФ сїЯФбЎµї«ЎЎЩ® с«ЯФТ» ¬ Яу«®ЯФубј «нЫС¬Фб. мб»УїјСУ,
TYPE ДнЫС¬Ф = RECORD
B : дбФб_У«ЄсСЎїґ; Е : BСЯ
END;
VAR A,B : OнЫС¬Ф; .
иубЅїсСЎФ A.B «Ф¬У«СФ с«ЯФТ» ¬ сбФС У«ЄсСЎїґ «нЫС¬Фб A, B.B - ¬ сбФС
У«ЄсСЎїґ «нЫС¬Фб B ї Ф.с. дЅїЎб сїЯФбЎµї с«ЯФТ»б «»УСсСЅґСФЯґ ¬«ЅїюСЯФу«ј
ТУ«уЎС® бъУСъїУ«убЎїґ Яу«®ЯФу «нЫС¬Ф«у ¬ЅбЯЯб. й ЭФ«ј »УїјСУС дЅїЎб=1. аЯЅї
ТФ«юЎїФэ Яу«®ЯФу« дбФб_Й«ЄсСЎїґ:
TYPE дбФб_У«ЄсСЎїґ = RECORD в: в«с; о: оСЯґµ; д: дСЎэ
END;
Ф« ¬убЅїсСЎФ, «Ф¬УЩубЇЪї® с«ЯФТ» ¬ ъ«сТ У«ЄсСЎїґ «нЫС¬Фб З, їјССФ сЅїЎТ
сїЯФбЎµїї, УбуЎТЇ 2: З.й.в. ЕУ«ЯФ«® їсСЎФїхї¬бФ«У ј«ЄЎ« УбЯЯјбФУїубФэ ¬б¬
юбЯФЎЩ® ЯЅТюб® ¬убЅїсСЎФб Я ЎТЅСу«® сїЯФбЎµїС® с«ЯФТ»б.
дїЯФбЎµї«ЎЎЩ® с«ЯФТ» ј«ЄСФ ЯТЪСЯФуСЎЎ« ТуСЅїюїФэ уУСјґ їсСЎФїхї¬бµїї
бФpїнТФ«у «нЫС¬Фб, у ¬«Ф«pЩХ ХpбЎґФЯґ єЎбюСЎїґ Съ« Яу«®ЯФу. 櫬УбФїФэ ЭФ«
уУСјґ ј«ЄЎ« їЯ»«ЅэєТґ «»СУбФ«У »УїЯ«СсїЎСЎїґ
WITH DO END.
Жᬫ® «»СУбФ«У Я«¬УбЪбСФ сЅїЎТ сїЯФбЎµїї с«ЯФТ»б ¬ бФpїнТФбј «нЫС¬Фб,
їсСЎФїхїµїpТСј«ъ« юСpСє . аЯЅї юїЯЅ« Фб¬їХ бФpїнТФ«у у
»pїЯ«СсїЎґСј«ј хpбъјСЎФС уСЅї¬«, Ф« їЯ»«Ѕэє«убЎїС «»СpбФ«pб »pїЯ«СсїЎСЎїґ
ј«ЄСФ ЯТЪСЯФуСЎЎ« Я«¬pбФїФэ уpСјґ уЩ»«ЅЎСЎїґ ЭФ«ъ« хpбъјСЎФб »p«ъpбјјЩ.
йЅ«ЄСЎїС «»СУбФ«У«у »УїЯ«СсїЎСЎїґ «нСЯ»СюїубСФ с«»«ЅЎїФСЅэЎ«С Я«¬УбЪСЎїС
сїЯФбЎµїї с«ЯФТ»б. мб»УїјСУ, сЅґ »СУСјСЎЎ«® VAR A: ДнЫС¬Ф, ЭФ« ј«ЄСФ
уЩъЅґсСФэ ЯЅСсТЇЪїј «нУбє«ј:
WITH A DO
;
WITH B DO
END
END.
кјСЎб «нЫС¬Ф«у ї їХ Яу«®ЯФу ј«ъТФ сТнЅїУ«убФэ сУТъ сУТъб. ШФ« ЯуґєбЎ« Я
ФСј, юФ« сС¬ЅбУбµїґ Яу«®ЯФу »У«у«сїФЯґ у УбєсСЅС TYPE (Фї»«у), б їјСЎ«убЎїС
«нЫС¬Ф«у - у УбєсСЅС VAR (»СУСјСЎЎЩХ).
ЖУбЎЯЅґФ«УЩ ґєЩ¬«у »У«ъУбјјїУ«убЎїґ, «нУбнбФЩубґ УбєсСЅЩ TYPE ї VAR,
«нЩюЎ« ЎС "ТЯјбФУїубЇФ" ЎїюСъ« "ЯФУбЮЎ«ъ«" у Ф«ј, юФ« їјСЎб Яу«®ЯФу нТсТФ
сТнЅїУ«убФэ їјСЎб «нЫС¬Ф«у - уСсэ ЭФ« »УїЎµї»їбЅэЎ« УбєЎЩС »«ЎґФїґ. м«
ујСЯФС Я ФСј «»СУбФ«У WITH х«УјбЅэЎ« с«»ТЯ¬бСФ ЯјСЮїубЎїС Фб¬їХ »«ЎґФї®
(Яј. »УїуСсСЎЎЩ® уЩЮС »УїјСУ: »СУуЩ® WITH »УїЯ«СсїЎґСФ ¬ «нЫС¬ФТ, б уФ«У«®
¬ Съ« Яу«®ЯФуТ). Жб¬«С ЯјСЮїубЎїС у «нЪСј ЯЅТюбС ФУСнТСФ »«уЩЮСЎЎ«ъ«
уЎїјбЎїґ »Уї »У«ъУбјјїУ«убЎїї »УїЯ«СсїЎґСјЩХ хУбъјСЎФ«у. мб»УїјСУ,
VAR A,B: ДнЫС¬Ф; C: в«с;
BEGIN . . .
+- WITH A DO
(1) | WITH B DO C:=в END; B.B.в:=C
+- END . . .
+- WITH A DO
(2) | WITH B DO C:=в; B.в:=C END
+- END . . .
+- WITH A DO
| WITH B DO C:=в END
| END;
(3) |
| WITH B DO
| WITH B DO в:=C END
+- END.
йЯС ФУї хУбъјСЎФб »УСЯЅСсТЇФ «сЎТ µСЅэ : «нјСЎґФэ їЎх«УјбµїЇ « ъ«сбХ
У«ЄсСЎїґ «нЫС¬Ф«у З ї й . ЕСУуЩ® хУбъјСЎФ с«ЯФїъбСФ ЭФ«® µСЅї, уФ«У«® -
ЎСФ. Е«юСјТ ? й ФУСФэСј хУбъјСЎФС ФУї ФС¬ЯФТбЅэЎ« «сїЎб¬«уЩХ «»СУбФ«Уб
"WITH B" УСбЅїєТЇФ УбєЅїюЎЩС »УїЯ«СсїЎСЎїґ, єбуїЯґЪїС «Ф ¬«ЎФС¬ЯФб. иб¬їС?
дЅґ Ф«ъ«, юФ«нЩ їєнСЄбФэ у«єј«ЄЎЩХ ЯСјбЎФїюСЯ¬їХ «Юїн«¬, «нТЯЅ«уЅСЎЎЩХ
Фᬫ® ¬«ЎФС¬ЯФЎ«® єбуїЯїј«ЯФэЇ «»СpбФ«pб »pїЯ«СсїЎСЎїґ, ЯЅСсТСФ Ѕїн«
їЯ»«Ѕэє«убФэ »«ЅЎЩС ¬убЅїсСЎФЩ (ї ЄСУФу«убФэ ЭххС¬ФїуЎ«ЯФэЇ »У«ъУбјјЩ),
Ѕїн« їєнСъбФэ сТнЅїУ«убЎїґ їјСЎ «нЫС¬Ф«у ї бФpїнТФ«у (Яу«®ЯФу). Е«ЯЅСсЎСС
у« уЯСХ «ФЎ«ЮСЎїґХ »УСс»«юФїФСЅэЎСС.
ЕУї Убн«ФС Я јбЯЯїубјї «нЫС¬Ф«у ї (їЅї) јбЯЯїубјї «сЎ«У«сЎЩХ Яу«®ЯФу
їсСЎФїхї¬бµїґ «ЯТЪСЯФуЅґСФЯґ Ўб «ЯЎ«уС їЎсС¬Яїp«убЎїґ (ЎТјСУбµїї). кЎсС¬Я
«»УСсСЅґСФ »«Уґс¬«уЩ® Ў«јСУ «нЫС¬Фб (їЅї Яу«®ЯФуб) ї уЩ»«ЅЎґСФ У«Ѕэ
ТФ«юЎСЎЎ«ъ« їјСЎї у »УСсЯФбуЅСЎїї бъУСъбФб. кјСЎб, ТФ«юЎСЎЎЩС їЎсС¬Я«ј, »«-
»УСЄЎСјТ «ЯФбЇФЯґ їјСЎбјї (у ЭФ«ј ЯјЩЯЅС їЎсС¬Я ј«ЄЎ« х«УјбЅэЎ«
УбЯЯјбФУїубФэ ¬б¬ "«Я«нТЇ ЅїФСУТ" у Яїју«ЅэЎ«® ЯФУ«¬С, «нУбєТЇЪС® їјґ).
збјСюбЎїґ, ЯсСЅбЎЎЩС уЩЮС «ФЎ«ЯїФСЅэЎ« сТнЅїУ«убЎїґ їјСЎ «нЫС¬Ф«у ї
Яу«®ЯФу, »Уї«нУСФбЇФ СЪС н«ЅэЮСС єЎбюСЎїС »УїјСЎїФСЅэЎ« ¬ їјСЎ«убЎїЇ Я
їЎсС¬ЯїУ«убЎїСј. д«ЯФТ» ¬ «нЫС¬ФТ, їсСЎФїхїµїpТСј«јТ їјСЎСј, ¬«Ф«p«С ТФ«юЎСЎ« їЎсС¬Я«ј,
pСбЅїєТСФЯґ Ўб «ЯЎ«уС уЩюїЯЅСЎїґ бсpСЯб Я««ФуСФЯФуТЇЪСъ« ЭЅСјСЎФб ХpбЎСЎїґ.
ЗpїхјСФїюСЯ¬«С уЩpбЄСЎїС, pСбЅїєТЇЪСС Фб¬«С уЩюїЯЅСЎїС, їЯ»«ЅэєТСФ їЎсС¬Я
¬б¬ ЎбФТpбЅэЎ«С юїЯЅ«.
ф¬бєбЎїС - уФ«У«® «ЯЎ«уЎ«® Я»«Я«н їсСЎФїхї¬бµїї - ЯуґєбЎ« Я їЯ»«Ѕэє«убЎїСј
«Я«нЩХ «нЫС¬Ф«у, у »УСсЯФбуЅСЎїї ¬«Ф«УЩХ ХУбЎїФЯґ ¬б¬ нЩ "ЯФУСЅ¬б",
Т¬бєЩубЇЪбґ Ўб їсСЎФїхїµїУТСјЩ® «нЫС¬Ф. Жᬫ® «Я«нЩ® «нЫС¬Ф ЎбєЩубСФЯґ
Т¬бєбФСЅСј їЅї ЯЯЩЅ¬«®. жФУСЅ¬б «нЫС¬Фб-Т¬бєбФСЅґ ј«ЄСФ Т¬бєЩубФэ Ўб ЅЇн«®
«нЫС¬Ф, у Ф«ј юїЯЅС ї Ўб «нЫС¬Ф-Т¬бєбФСЅэ, ї Ўб "Ябј«ъ« ЯСнґ", ї "у Ўї¬Тсб"
(ЎС Т¬бєЩубФэ Ўї Ўб ¬б¬«® «нЫС¬Ф). ф¬бєбФСЅэ, ¬«Ф«УЩ® ј«ЄСФ Т¬бєЩубФэ Ўб
«нЫС¬ФЩ УбєЅїюЎЩХ ¬ЅбЯЯ«у, ЎбєЩубСФЯґ Яу«н«сЎЩј Т¬бєбФСЅСј. ф¬бєбФСЅэ,
¬«Ф«УЩ® ј«ЄСФ Т¬бєЩубФэ Ф«Ѕэ¬« Ўб «нЫС¬ФЩ «»УСсСЅСЎЎ«ъ« ¬ЅбЯЯб, ЎбєЩубСФЯґ
«ъУбЎїюСЎЎЩј Т¬бєбФСЅСј.
жу«н«сЎЩ® Т¬бєбФСЅэ у ґєЩ¬бХ »У«ъУбјјїУ«убЎїґ УСбЅїєТСФЯґ Фї»«ј ADDRESS.
и«ЎЯФбЎФбјї ЭФ«ъ« Фї»б ґуЅґЇФЯґ бсУСЯб Убн«юСъ« »У«ЯФУбЎЯФуб »бјґФї Шйо.
ДЯ«н«® ¬«ЎЯФбЎФ«® ґуЅґСФЯґ ¬«ЎЯФбЎФб, «н«єЎбюбСјбґ «нЩюЎ« ЯЅ«у«ј NIL ї
«»УСсСЅґЇЪбґ Т¬бєбФСЅэ, ¬«Ф«УЩ® Ўї¬Тсб ЎС Т¬бєЩубСФ.
ДъУбЎїюСЎЎЩ® Т¬бєбФСЅэ «нЩюЎ« «»УСсСЅґСФЯґ хУбє«® "POINTER TO", Ўб»УїјСУ:
TYPE жФУСЅ¬б = POINTER TO ДнЫС¬Ф;.
Жб¬бґ сС¬ЅбУбµїґ «»УСсСЅїФ ¬ЅбЯЯ Т¬бєбФСЅС®, ¬«Ф«УЩС ј«ъТФ Т¬бєЩубФэ Ф«Ѕэ¬«
Ўб «нЫС¬ФЩ ¬ЅбЯЯб ДнЫС¬Ф. й ЭФ«ј ЯјЩЯЅС Яу«н«сЎЩ® Т¬бєбФСЅэ ј«ЄЎ«
«»УСсСЅїФэ х«УјбЅэЎ« ЯЅСсТЇЪїј «нУбє«ј:
TYPE ADDRESS = POINTER TO WORD.
й УбЎЎїХ уСУЯїґХ ґєЩ¬«у »У«ъУбјјїУ«убЎїґ
TSIZE (ADDRESS) = TSIZE (WORD) = 2 (нб®Фб).
Еpї ЭФ«ј УбєјСУ Убн«юСъ« »У«ЯФУбЎЯФуб бсУСЯ«у, «»УСсСЅґСјЩ® ј«ЪЎ«ЯФэЇ
јЎ«ЄСЯФуб ¬«ЎЯФбЎФ Фї»б ADDRESS, Я«ЯФбуЅґЅ сЅґ 16-УбєУґсЎЩХ Шйо 216 =
65536 = 64*1024 = 64K. жФУСјЅСЎїС УбЯЮїУїФэ бсУСЯЎ«С »У«ЯФУбЎЯФу«
(«ЯФбубґЯэ у Убј¬бХ Ф«® ЄС УбєУґсЎ«ЯФї Шйо) »УїуСЅ« у н«ЅСС »«єсЎїХ уСУЯїґХ
ґєЩ¬«у »У«ъУбјјїУ«убЎїґ ¬ ТуСЅїюСЎїЇ УбєјСУб ЭЅСјСЎФ«у ХУбЎСЎїґ бсУСЯ«у у 2
Убєб: TSIZE (ADDRESS) = TSIZE (ARRAY[1..2] OF WORD) = 4 (нб®Фб).
ЕУї ЭФ«ј ADDRESS ЯФбЅ їЎФСУ»УСФїУ«убФэЯґ ¬б¬ ЯФУТ¬ФТУб:
TYPE ADDRESS = RECORD
SEGMENT, OFFSET: CARDINAL;
END;
їЯ»«Ѕэє«убЎїС ¬«Ф«У«® хб¬ФїюСЯ¬ї «ЯЎ«убЎ« Ўб їЎсС¬ЯЎ«® їсСЎФїхї¬бµїї
«нЫС¬Фб. SEGMENT «»УСсСЅґСФ Ў«јСУ ЯСъјСЎФб Убн«юСъ« »У«ЯФУбЎЯФуб бсУСЯ«у,
ТФ«юЎґСј«ъ« ЯјСЪСЎїСј (OFFSET), у ¬«Ф«У«ј ХУбЎїФЯґ "УбЯЯФ«ґЎїС" «Ф ЎбюбЅб
ЯСъјСЎФб с« »УСсЯФбуЅСЎїґ їсСЎФїхїµїУТСј«ъ« «нЫС¬Фб.
пЇн«® «нЫС¬Ф-Т¬бєбФСЅэ (Яу«н«сЎЩ® їЅї «ъУбЎїюСЎЎЩ®) їсСЎФїхїµїУТСФЯґ
їјСЎСј, сС¬ЅбУїУ«убЎЎЩј у »У«ъУбјјС. зЎбюСЎїС Т¬бєбФСЅґ, Я«ХУбЎґСј«С "»«с"
ЭФїј їјСЎСј, їсСЎФїхїµїУТСФ у Яу«Ї «юСУСсэ сУТъ«® «нЫС¬Ф (Т¬бєЩубСФ Ўб
ЎСъ«). Жб¬бґ їсСЎФїхї¬бµїґ Ўб ТУ«уЎС єЎбюСЎї® »«єу«ЅґСФ сїЎбјїюСЯ¬ї (у
»У«µСЯЯС уЩ»«ЅЎСЎїґ »У«ъУбјјЩ) јСЎґФэ "»«Ѕ«ЄСЎїС ЯФУСЅ«¬" Т¬бєбФСЅґ ї
Я««ФуСФЯФуСЎЎ« їсСЎФїхїµїУ«убФэ УбєЅїюЎЩС «нЫС¬ФЩ. "щїЯФ«С" їјСЎ«убЎїС ЎС
сбСФ Фб¬їХ у«єј«ЄЎ«ЯФС®. мїЄС »УїуСсСЎб ъУбхїюСЯ¬бґ їЅЅЇЯФУбµїґ ЯЯЩЅ«юЎ«®
їсСЎФїхї¬бµїї «нЫС¬Ф«у Т¬бєбФСЅСј "»« їјСЎї" P.
TYPE иубсУбФ: ... ; VAR P: POINTER TO иубсУбФ;
ШЅСјСЎФ xУбЎСЎїґ Т¬бєбФСЅґ
+-----------------------------+ кјґ: P | зЎбюСЎїС Т¬бєбФСЅґ *--+---+ (P=NIL)
+--------------------------+--+ v
+---+-----+--------+----+ -+-
| | | -+-
| | | |
+--v---+-----+--------+-------+
| +++ | | v | +-+ «нЫС¬Ф ¬ЅбЯЯб
| +-+ v v | +-+ иубсpбФ
| +++ +++ |
| +-+ +-+ | «нЫС¬Ф ¬ЅбЯЯб
| | PСЮСФ«
| Pбн«юСС »p«ЯФpбЎЯФу« »бјґФї |
+-----------------------------+
мб»УбуЅСЎїС ЯФУСЅ«¬, «»УСсСЅґСј«С у«єј«ЄЎЩјї єЎбюСЎїґјї Т¬бєбФСЅґ P,
«Ф¬УЩубСФ с«ЯФТ» ¬ «нЫС¬Фбј ¬ЅбЯЯб иубсУбФ. мб»УбуЅСЎїС ЯФУСЅ¬ї,
Т¬бєЩубЇЪС® Ўб "pСЮСФ«", сЅґ P, сС¬ЅбУїУ«убЎЎ«ъ« ¬б¬ POINTER TO иубсУбФ,
ґуЅґСФЯґ ЎСс«»ТЯФїјЩј, ЯФУСЅ¬б P=NIL Ўї Ўб юФ« ЎС Т¬бєЩубСФ.
ксСЎФїхї¬бµїґ «нЫС¬Ф«у юСУСє ЯЯЩЅ¬ї «Ф¬УЩубСФ у«єј«ЄЎ«ЯФї «УъбЎїєбµїї
сїЎбјїюСЯ¬ї ј«сїхїµїУТСјЩХ ЯуґєбЎЎЩХ ЯФpТ¬ФТp. ДнЫС¬ФЩ, їє ¬«Ф«УЩХ
¬«ЎЯФУТїУТЇФЯґ Фб¬їС ЯФУТ¬ФТУЩ, с«ЅЄЎЩ «нЅбсбФэ Яу«®ЯФу«ј "кјСФэ Яуґєї Я
сУТъїјї «нЫС¬Фбјї", ¬«Ф«p«С Я»СµїхїµїpТСФЯґ ¬б¬ Т¬бєбФСЅэ. мб»УїјСУ,
TYPE ШЅСјСЎФ_цїъТУЩ = RECORD
A : иубсУбФ;
B : POINTER TO ШЅСјСЎФ_цїъТУЩ
END.
мїЄС »УїуСсСЎб ъУбхїюСЯ¬бґ їЅЅЇЯФУбµїґ «сЎ«® їє јЎ«ъїХ ЯуґєбЎЎЩХ ЯФpТ¬ФТp -
ЯФpТ¬ФТpЩ и«Ѕэµб, Я«ЯФбуЅСЎЎ«ъ« їє ФУСХ Фб¬їХ ЭЅСјСЎФ«у.
+--------+ +----------+
| v v P | v
| +---+---+ +---+---+ | +---+---+
| | A | | A | | | A |
| |-------+ +-------| | +-------|
| | B *-+-------->+ B *-+-----+ | B * |
| +-------+ +-------+ +---+---+
| |
+-----------------------------------------------+
VAR P: POINTER TO ШЅСјСЎФ_цїъТУЩ
мб ЭФ«® їЅЅЇЯФУбµїї СсїЎЯФуСЎЎЩ® Т¬бєбФСЅэ P »«ЯЅСс«убФСЅэЎ« (у Ўб»УбуЅСЎїї
ЯФУСЅ«¬ ЯуґєС®) «Ф¬УЩубСФ с«ЯФТ» ¬« уЯСј ЭЅСјСЎФбј ЯФpТ¬ФТpЩ и«Ѕэµб.
збјСФїј, юФ« Ўб ЭФ«® їЅЅЇЯФУбµїї (у «ФЅїюїС «Ф »УСсЩсТЪС®) ЭЅСјСЎФ ХУбЎСЎїґ
Т¬бєбФСЅґ P ТЄС ЎС їє«нУбЄСЎ. ЕУ«ЯФ« Уґс«ј Я« ЯФpСЅ¬«® »p«ЯФбуЅСЎ« їјґ
Т¬бєбФСЅґ - ЭФ« «нЩюЎЩ® »УїСј сЅґ ъУбхїюСЯ¬їХ їЅЅЇЯФУбµї® »pСсЯФбуЅСЎїґ
ЯуґєбЎЎЩХ ЯФУТ¬ФТУ.
пЇн«С »УїЯу«СЎїС єЎбюСЎїґ Т¬бєбФСЅЇ ъУбхїюСЯ¬ї їЎФСУ»УСФїУТСФЯґ ¬б¬
їєјСЎСЎїС Ўб»УбуЅСЎїґ Я««ФуСФЯФуТЇЪС® ЯФУСЅ¬ї (»СУСЯФбЎ«у¬б, »СУСсуїЄ¬б
Т¬бєбФСЅґ Ўб сУТъ«® «нЫС¬Ф). д«ЯФТ» ¬ «нЫС¬ФТ юСУСє Т¬бєбФСЅэ «Ф¬УЩубСФЯґ
»ТФСј їјСЎ«убЎїґ Т¬бєбФСЅґ Я »«ЯФхї¬Я«ј "^". Жб¬, у »УїуСсСЎЎ«ј уЩЮС
»УїјСУС сЅґ с«ЯФТ»б ¬ «нЫС¬ФТ ¬ЅбЯЯб иубсУбФ юСУСє P: POINTER TO
ШЅСјСЎФ_цїъТУЩ ЎС«нХ«сїј« їЯ»«Ѕэє«убФэ ¬убЅїсСЎФ уїсб P^.A. й ЎСј
"єбЮїхУ«убЎб" ЯЅСсТЇЪбґ »«ЯЅСс«убФСЅэЎ«ЯФэ с«ЯФТ»б: P - с«ЯФТ» ¬ Т¬бєбФСЅЇ, їсСЎФїхїµїУТЇЪСјТ ШЅСјСЎФ_цїъТУЩ; P^ - с«ЯФТ» ¬ ЯФУТ¬ФТУС ШЅСјСЎФб, Ўб ¬«Ф«УТЇ Т¬бєЩубСФ P; P^. - с«ЯФТ» ¬ бФpїнТФбј (¬«ј»«ЎСЎФбј) ЭФ«® ЯФУТ¬ФТУЩ; P^.A - с«ЯФТ» ¬ бФpїнТФТ иубсУбФ.
ибЄсЩ® їє »«с«нЎЩХ ¬убЅїсСЎФ«у «Ф¬УЩубСФ с«ЯФТ» ¬ "Яу«СјТ" ТЎї¬бЅэЎ«јТ
«нЫС¬ФТ (їЅї бФpїнТФТ). мСФpТсЎ« єбјСФїФэ, юФ« сЅґ ЭФ«ъ« »УїјСУб (ї у «нЪСј
ЯЅТюбС)
SIZE (P) # SIZE (P^) # SIZE (P^.A).
иЯФбФї, юСјТ УбуЎ« SIZE (P^) сЅґ ЭФ«ъ« »pїјСpб?
P«Ѕэ »«ЯФхї¬Яб "^" (ЯФУСЅ¬ї) єб¬ЅЇюбСФЯґ у "«Ф¬УЩФїї" с«ЯФТ»б ¬ «нЫС¬ФТ
юСУСє єЎбюСЎїС Т¬бєЩубЇЪС® Ўб ЎСъ« ЯЯЩЅ¬ї. кЎ«ъсб ЭФТ «»СpбµїЇ «нpбєЎ«
ЎбєЩубЇФ "pбЯ¬pЩФїСј ЯЯЩЅ¬ї". кЯ»«Ѕэє«убФэ Яїју«Ѕ "^" ¬б¬ »«ЯФхї¬Я у їјСЎї
«нЫС¬Фб, ¬«Ф«УЩ® ЎС ґуЅґСФЯґ Т¬бєбФСЅСј, у «нЪСј ЯЅТюбС ЎСс«»ТЯФїј«.
кЯ»«Ѕэє«убЎїС ¬убЅїсСЎФ«у Я Яїју«Ѕ«ј "^" у «»СУбФ«УбХ »УїЯ«СсїЎСЎїґ
»У«у«сїФЯґ у «ЯЎ«уЎ«ј Фб¬ ЄС, ¬б¬ ТЄС нЩЅ« «»їЯбЎ« уЩЮС »УїјСЎїФСЅэЎ« ¬
бъУСъїУ«убЎЎЩј ЯФУТ¬ФТУбј. зсСЯэ ЯЅСсТСФ »«јЎїФэ, юФ« ЅЇн«С »УїЯ«СсїЎСЎїС
µСЅСЯ««нpбєЎ« Я суТХ Ф«юС¬ єpСЎїґ:
1) сЅґ Я«¬УбЪСЎїґ сїЯФбЎµїї с«ЯФТ»б ¬ ¬«ј»«ЎСЎФбј бъУСъїУ«убЎЎ«® ЯФУТ¬ФТУЩ; 2) сЅґ »«уЩЮСЎїґ ЎбъЅґсЎ«ЯФї, уЩpбєїФСЅэЎ«ЯФї ї ЯФpТ¬ФТpЎ«ЯФї »p«ъpбјјЩ.
дЅґ ЯЅТюбґ P: POINTER TO ШЅСјСЎФ_цїъТУЩ їЯ»«Ѕэє«убЎїС «»СУбФ«Уб
WITH P^ DO END pСбЅїєТСФ »pїЯ«СсїЎСЎїС ¬ ШЅСјСЎФТ_цїъТpЩ, pбєјСЪСЎЎ«јТ у »бјґФї "»«с" P,
б «»СУбФ«У
WITH P DO END
ј«ЄСФ pСбЅїє«убФэ »pїЯ«СсїЎСЎїС Ф«Ѕэ¬« (!) ¬ бФpїнТФбј Ябј«ъ« Т¬бєбФСЅґ
(Ф.С. »«Ѕґј SEGMENT ї OFFSET) ї ЎС їјССФ Ўї¬б¬«ъ« ЯјЩЯЅб у »ЅбЎС
»pїЯ«СсїЎСЎїґ ¬ ШЅСјСЎФТ_цїъТpЩ. й ЭФ«® Яуґєї Фб¬ЄС «ФјСФїј, юФ« ЅЇн«С
»УїЯ«СсїЎСЎїС, сС¬ЅбУїУ«убЎЎ«С Я««ФуСФЯФуТЇЪїј «»СУбФ«У«ј WITH, уЩ»«ЅЎґСФЯґ
»«ЯЅС Ф«ъ«, ¬б¬ «»УСсСЅСЎ« єЎбюСЎїС »УїЯ«СсїЎґЇЪСъ« ¬убЅїсСЎФб, Ф.С. с«
"уХ«сб" у »УїЯ«СсїЎґСјЩ® хУбъјСЎФ. Е«ЭФ«јТ ЅЇн«С їєјСЎСЎїС єЎбюСЎїґ
»pїЯ«СсїЎґЇЪСъ« Т¬бєбФСЅґ уЎТФУї »УїЯ«СсїЎґСј«ъ« хУбъјСЎФб ЎС їєјСЎїФ ТЄС
Я«єсбЎЎ«ъ« »УїЯ«СсїЎСЎїґ ї ЎСїєнСЄЎ« ЎбpТЮїФ Ѕ«ъї¬Т уЩ»«ЅЎСЎїґ ЭФ«ъ«
хpбъјСЎФб. ЕpїуСсСј СЪС »pїјСp:
VAR P: POINTER TO иубсУбФ;
BEGIN ... P:= ...; (* фЯФбЎ«у¬б P Ўб ¬убсУбФ *)
WITH P^ DO ...
(* Йбн«Фб Я ¬убсУбФ«ј, Ўб ¬«Ф«УЩ® Т¬бєЩубСФ P *);
P:= ...; (* фЯФбЎ«у¬б P Ўб Ў«уЩ® ¬убсУбФ *)
... (* Йбн«Фб Я Ў«уЩј ¬убсУбФ«ј *)
END.
й ЭФ«ј »УїјСУС ТЯФбЎ«у¬б P "Ўб Ў«уЩ® ¬убсУбФ " ЎС »УїуСсСФ ¬ їєјСЎСЎїЇ ТЄС
Я«єсбЎЎ«ъ« »УїЯ«СсїЎСЎїґ ї Я««ФуСФЯФуСЎЎ« "Убн«Фб Я Ў«уЩј ¬убсУбФ«ј" юСУСє
Т¬«У«юСЎЎЩС їсСЎФїхї¬бФ«УЩ ЎС Я«ЯФ«їФЯґ - ЭФ«Ф хУбъјСЎФ »У«с«ЅЄїФ Убн«ФТ Я«
"ЯФбУЩј" ¬убсУбФ«ј. мСєЎбЎїС ЭФ«ъ« «нЯФ«ґФСЅэЯФуб ј«ЄСФ ЯЅТЄїФэ їЯФ«юЎї¬«ј
јЎ«ъїХ ФУТсЎ« їсСЎФїхїµїУТСјЩХ «Юїн«¬, у«єЎї¬бЇЪїХ Ф«Ѕэ¬« »pї їсСЎФїхї¬бµїї
«нЫС¬Ф«у јСФ«с«ј Т¬бєбЎїґ.
й µСЅ«ј Т¬бєбФСЅэЎбґ їсСЎФїхї¬бµїґ »УїЎµї»їбЅэЎ« «ФЅїюбСФЯґ «Ф їјСЎ«убЎїґ
ФСј, юФ« «Ўб їЯ»«ЅэєТСФ Я»СµїбЅэЎЩС їсСЎФїхїµїУТЇЪїС «нЫС¬ФЩ - Т¬бєбФСЅї
(їЅї ЯЯЩЅ¬ї), Я ¬«Ф«УЩјї ј«ЄЎ« Убн«ФбФэ ¬б¬ Я ЅЇнЩјї сУТъїјї "«нЩюЎЩјї"
«нЫС¬Фбјї. ШФ« ЯТЪСЯФуСЎЎ« УбЯЮїУґСФ у«єј«ЄЎ«ЯФї "юїЯФ«ъ«" їјСЎ«убЎїґ ї
»«єу«ЅґСФ УСбЅїє«убФэ сїЎбјїюСЯ¬ТЇ їсСЎФїхї¬бµїЇ УбєЅїюЎЩХ «нЫС¬Ф«у юСУСє
«сїЎ ї Ф«Ф ЄС Т¬бєбФСЅэ, їсСЎФїхїµїУТСјЩ® СсїЎЯФуСЎЎЩј »УїЯу«СЎЎЩј СјТ
їјСЎСј.
IV. кмЖаPЕPаЖЗыкf ДьЬаиЖДй
Е«Ѕїј«Ухїєј. - ж«ујСЯФїј«ЯФэ Фї»«у. - цТЎ¬µїї »УС«нУбє«убЎїґ ї »УїуСсСЎїґ
Фї»«у. - зб»їЯї Я убУїбЎФбјї. - мбЯЅСс«убЎїС Яу«®ЯФу. - Д»УСсСЅСЎїС "
ЎбЅ«ЄСЎїСј ". - жбј«їЎФСУ»УСФїУТСјЩ® «нЫС¬Ф.
ЖСУјїЎ "їЎФСУ»УСФбµїґ" «»УСсСЅґСФ "»Уї»їЯЩубЎїС" «нЫС¬ФТ «»УСсСЅСЎЎЩХ
ЯСјбЎФїюСЯ¬їХ, ЯјЩЯЅ«уЩХ Яу«®ЯФу. мб»УїјСУ, Яїју«Ѕ "I", їЎФСУ»УСФїУТСјЩ®
¬б¬ "ЙїјЯ¬бґ_ыїхУб", нТсСФ бЯЯ«µїїp«убФэЯґ Я «нЫС¬Ф«ј «»УСсСЅСЎЎ«® ЯїЯФСјЩ
ЯюїЯЅСЎїґ, ХбУб¬ФСУїєТСј«® «Я«нЩјї Яу«®ЯФубјї ЭФ«® ЯїЯФСјЩ.
й Ф« ЄС уУСјґ "I" ¬б¬ "пїФСУб" ЅбФїЎЯ¬«ъ« бЅхбуїФб ХбУб¬ФСУїєТСФЯґ
Я«уСУЮСЎЎ« сУТъїјї Яу«®ЯФубјї. "I" ¬б¬ нТ¬уб бЎъЅї®Я¬«ъ« бЅхбуїФб їјССФ
Я«нЯФуСЎЎЩС Яу«®ЯФуб, у юбЯФЎ«ЯФї, «»УСсСЅґСФ «Я«н«С »У«їєЎ«ЮСЎїС "б®", б
¬б¬ нТ¬уб ЎСјСµ¬«ъ« бЅхбуїФб «Ўб Фб¬їј Яу«®ЯФу«ј ЎС «нЅбсбСФ. оЎ«ЄСЯФуСЎЎ«ЯФэ їЎФСУ»УСФбµї® «сЎ«ъ« ї Ф«ъ« ЄС «нЫС¬Фб ЯуґєбЎб Я »«ЎґФїСј
»«Ѕїј«Ухїєјб. ж »p«ґуЅСЎїСј »«Ѕїј«УхЎЩХ їЎФСУ»УСФбµї® «нЫС¬Ф«у јЩ
ЯФбЅ¬їубСјЯґ нТ¬убЅэЎ« Ўб ¬бЄс«ј ЮбъТ - ЭФ« ї јЎ«ъ«єЎбюЎ«ЯФэ јЎ«ъїХ
«н«p«Ф«у УСюї (хУбє«уЩХ ЯФУТ¬ФТУ) ї јЎ«ъ«µСЅСу«С їЯ»«Ѕэє«убЎїС «нЫС¬Фб
(уЯ»«јЎїФС »«уСЯФэ о.ЖуСЎб "ЕУїЎµ ї ЎїЪї®", ъсС ъЅбуЎЩ® ъСУ«®
їЎФСУ»УСФїУ«убЅ ъ«ЯТсбУЯФуСЎЎТЇ »СюбФэ ¬б¬ ЯУСсЯФу« сЅґ УбЯ¬бЅЩубЎїґ
«УСХ«у), ї, Ўб¬«ЎСµ, јЎ«ЄСЯФу« ЅїюЎ«ЯФЎЩХ ¬бюСЯФу їЎФСУ»УСФбФ«Уб: сЅґ ¬«ъ«-
Ф« У«єЩ - ЭФ« µуСФЩ, б сЅґ ¬«ъ«-Ф« Юї»Щ.
й »У«ъУбјјїУ«убЎїї «нЫС¬Ф ¬б¬ сбЎЎ«ЯФэ »«ЅЎ«ЯФэЇ «»УСсСЅґСФЯґ »«ЎґФїСј
ЭЅСјСЎФб ХУбЎСЎїґ, ТЄС їЯ»«Ѕэє«убЎЎЩј у »УСсЩсТЪїХ ъЅбубХ. й ¬«ЎСюЎ«ј ЯюСФС
у »бјґФї Шйо ЅЇн«® ЭЅСјСЎФ ХУбЎСЎїґ Я«сСУЄїФ »«ЯЅСс«убФСЅэЎ«ЯФэ ЎТЅС® ї
СсїЎїµ, їЎФСУ»УСФбµїґ ЄС ЭФ«® »«ЯЅСс«убФСЅэЎ«ЯФї ¬б¬ «нЫС¬Фб »«ЅЎ«ЯФэЇ
єбуїЯїФ «Ф »У«ъУбјјїЯФб. й«»У«Я у Ф«ј, юСУСє ¬б¬їС "«ю¬ї" (ФУбхбУСФ, јбЯ¬Т)
јЩ »«Яј«ФУїј Ўб ЭЅСјСЎФ ХУбЎСЎїґ. й ЭФ«ј ЯјЩЯЅС »«ЎґФїС бнЯФУб¬ФЎ«ъ« Фї»б у
»У«ъУбјјїУ«убЎїї ї уЩ»«ЅЎґСФ У«Ѕэ Фб¬їХ «ю¬«у (ФУбхбУСФб, јбЯ¬ї).
оЎ«ЄСЯФу« Фї»«у «»УСсСЅґСФ јЎ«ЄСЯФу« у«єј«ЄЎЩХ їЎФСУ»УСФбµї® «нЫС¬Фб. й
ЭФ«ј »ЅбЎС у ґєЩ¬бХ 3-ъ« »«¬«ЅСЎїґ «ЯЎ«уЎЩј ґуЅґСФЯґ »«ЎґФїС Я«ујСЯФїј«ЯФї
Фї»«у. оЩ УбЯЯјбФУїубСј суб бЯ»С¬Фб Фᬫ® Я«ујСЯФїј«ЯФї: Я«ујСЯФїј«ЯФэ »«
»УСсЯФбуЅСЎїЇ (ХУбЎСЎїЇ) «нЫС¬Фб у »бјґФї Шйо ї Я«ујСЯФїј«ЯФэ Я«нЯФуСЎЎ« »«
їЎФСУ»УСФбµїї.
ж«ујСЯФїј«ЯФэ »УСсЯФбуЅСЎї® «»УСсСЅґСФЯґ УбєјСУбјї ЭЅСјСЎФ«у ХУбЎСЎїґ.
мб»УїјСУ, СЯЅї «нЫС¬ФЩ Фї»б CARDINAL ХУбЎґФЯґ у «сЎ«ј јбЮїЎЎ«ј ЯЅ«уС (2
нб®Фб) ї «нЫС¬ФЩ Фї»б INTEGER ХУбЎґФЯґ у «сЎ«ј ЯЅ«уС, Ф« INTEGER ї CARDINAL
Я«ујСЯФїјЩ »« »УСсЯФбуЅСЎїЇ (јСЄсТ Я«н«® ї Я јбЮїЎЎЩј Фї»«ј WORD).
AЎбЅ«ъїюЎ« Я«ујСЯФїјЩ »« »УСсЯФбуЅСЎїЇ CHAR ї BYTE; WORD ї ARRAY [1..2] OF
BYTE ї Ф.с.
ж«ујСЯФїј«ЯФэ »« їЎФСУ»УСФбµїї «»УСсСЅґСФЯґ у«єј«ЄЎ«ЯФэЇ їЯ»«Ѕэє«убФэ
«нЫС¬Ф «сЎ«ъ« ¬ЅбЯЯб у ¬бюСЯФуС «нЫС¬Фб сУТъ«ъ« ¬ЅбЯЯб. мб»УїјСУ, Ѕ«Є¬Т у
¬бюСЯФуС уїЅ¬ї. й »У«ъУбјјїУ«убЎїї Я«ујСЯФїј«ЯФэ »« їЎФСУ»УСФбµїї «нЩюЎ«
ЯуґєЩубСФЯґ Я у«єј«ЄЎ«ЯФэЇ »УїЯубїубЎїґ «нЫС¬ФТ «сЎ«ъ« ¬ЅбЯЯб єЎбюСЎїґ
«нЫС¬Фб сУТъ«ъ« ¬ЅбЯЯб ї ЎбєЩубСФЯґ Я«ујСЯФїј«ЯФэЇ »« »УїЯубїубЎїЇ. ЕУїјСУ
Фᬫ® Я«ујСЯФїј«ЯФї:
VAR A: CARDINAL; B: INTEGER; BEGIN ... A:=B .
ж«ујСЯФїј«ЯФэ »« »УїЯубїубЎїЇ «нЩюЎ« »«сУбєТјСубСФ Я«ујСЯФїј«ЯФэ
»УСсЯФбуЅСЎї® «нЫС¬Ф«у.
Е«ЎґФїС Я«ујСЯФїј«ЯФї Фї»«у ТЯЅ«уЎ« сСЅїФ ґєЩ¬ї »У«ъУбјјїУ«убЎїґ Ўб
"ЯФУ«ъїС" ї "ЎСЯФУ«ъїС". й »СУу«® ъУТ»»С ґєЩ¬«у »УбуїЅ«ј ґуЅґСФЯґ
ЎСу«єј«ЄЎ«ЯФэ »Уґј«ъ« їЯ»«Ѕэє«убЎїґ «нЫС¬Ф«у УбєЎЩХ ¬ЅбЯЯ«у у «сЎ«ј
уЩУбЄСЎїї. Жб¬«С уЩУбЄСЎїС ЎС«нХ«сїј« ¬«ЎЯФУТїУ«убФэ Ўб «ЯЎ«уС Я»СµїбЅэЎЩЩХ
хТЎ¬µї® »УС«нУбє«убЎїґ Фї»«у, »УїуСсСЎїґ Фї»«у ї Я»СµїбЅэЎЩХ јСФ«с«у
Я«ујСЪСЎїґ Фї»«у. ЙбєТјССФЯґ, "ЯФѻѡэ ЯФУ«ъ«ЯФї" ґєЩ¬б - »«ЎґФїС уСЯэјб
ТЯЅ«уЎ«С, ї у ЅЇн«® Съ« уСУЯїї ЯТЪСЯФуТЇФ їЯ¬ЅЇюСЎїґ їє ЭФ«ъ« »УбуїЅб.
"мСЯФУ«ъїС" ґєЩ¬ї »УСсЯФбуЅґЇФ »У«ъУбјјїЯФТ »«ЅЎТЇ Яу«н«сТ у їЎФСУ»УСФбµїї
«нЫС¬Ф«у: у «сЎ«ј уЩУбЄСЎїї ј«ЄЎ« "ЯјСЮїубФэ" бнЯ«ЅЇФЎ« УбєЅїюЎЩС «нЫС¬ФЩ,
»Уї ЭФ«ј, УбєТјССФЯґ, "«ФуСФЯФуСЎЎ«ЯФэ" єб Ф«, ¬ юСјТ »УїуСсСФ ФᬫС
ЯјСЮСЎїС, »«ЅЎ«ЯФэЇ Ѕ«ЄїФЯґ Ўб »«Ѕэє«убФСЅґ. ДнЫС¬ФЎ«-«УїСЎФїУ«убЎЎЩ® ЯФїЅэ
»У«ъУбјјїУ«убЎїґ нСєТЯЅ«уЎ« «ФсбСФ »УСс»«юФСЎїС "ЯФУ«ъ«јТ" ґєЩ¬Т Я
УбєуїФЩјї ЯУСсЯФубјї ¬«ЎФУ«Ѕґ Я«ујСЯФїј«ЯФї Фї»«у, юФ« у «нЪСј ЯЅТюбС
»«уЩЮбСФ ЎбсСЄЎ«ЯФэ Я«єсбубСјЩХ »У«ъУбјј, Х«Фґ ї с«ЯФбуЅґСФ Яу«їјї
"ЯФУ«ъ«ЯФґјї" ЎС¬«Ф«УЩС ЎСТс«нЯФуб "«»ЩФЎЩј" »У«ъУбјјїЯФбј.
цТЎ¬µїї »УС«нУбє«убЎїґ ї »УїуСсСЎїґ Фї»«у УСбЅїєТЇФ у«єј«ЄЎ«ЯФї Я«ујСЪСЎїґ
»« »УїЯубїубЎїЇ. ЕУї ЭФ«ј јСХбЎїєјЩ Фᬫъ« Я«ујСЪСЎїґ сЅґ »УС«нУбє«убЎїґ ї
»УїуСсСЎїґ «¬бєЩубЇФЯґ Я«уСУЮСЎЎ« УбєЅїюЎЩјї. ЕУїуСсСЎїС Фї»«у ЎС ЯуґєбЎ« Я
¬б¬їј-Ѕїн« »УС«нУбє«убЎїСј Я««ФуСФЯФуТЇЪСъ« єЎбюСЎїґ у ЭЅСјСЎФС ХУбЎСЎїґ.
Жб¬«С єЎбюСЎїС »У«ЯФ« "»СУСу«сїФЯґ у сУТъ«® ¬ЅбЯЯ" - »УїЯубїубСФЯґ
»СУСјСЎЎ«® сУТъ«ъ« Фї»б. дЅґ УСбЅїєбµїї »УїуСсСЎїґ Фї»б ЎС«нХ«сїјб
Я«ујСЯФїј«ЯФэ »УСсЯФбуЅСЎї® Я««ФуСФЯФуТЇЪїХ ЭЅСјСЎФ«у. мб»УїјСУ:
VAR A: INTEGER; B: CARDINAL;
BEGIN A:=-3; B:= CARDINAL (A); ...
зсСЯэ CARDINAL() їЯ»«ЅэєТСФЯґ ¬б¬ їјґ хТЎ¬µїї »УїуСсСЎїґ єЎбюСЎїґ ¬ Фї»Т
CARDINAL. й ¬бюСЯФуС Фб¬їХ їјСЎ ј«ъТФ їЯ»«Ѕэє«убФэЯґ ЎбїјСЎ«убЎїґ нбє«уЩХ
јбЮїЎЎ«-«УїСЎФїУ«убЎЎЩХ Фї»«у. ЕУї їЯ»«Ѕэє«убЎїї хТЎ¬µї® »УїуСсСЎїґ Фї»«у
»У«ъУбјјїЯФ с«ЅЄСЎ Х«У«Ю« єЎбФэ »УСсЯФбуЅСЎїС «нЫС¬Ф«у ї ТюїФЩубФэ уЯС
"ЎС«ЄїсбЎЎ«ЯФї" їХ їЎФСУ»УСФбµїї у сУТъ«ј ¬ЅбЯЯС. (мб»УїјСУ, сЅґ ЭФ«ъ«
»УїјСУб єЎб¬ "-", їє«нУбЄбСјЩ® СсїЎїµС® у 15-ј УбєУґсС ЭЅСјСЎФб ХУбЎСЎїґ A,
сЅґ B нТсСФ їЎФСУ»УСФїУ«убФэЯґ ¬б¬ 215. ж««ФуСФЯФуСЎЎ« »«ЯЅС »УїуСсСЎїґ B =
215 + 21 + 20 = 32771). цб¬ФїюСЯ¬ї хТЎ¬µїї »УїуСсСЎїґ Фї»«у хТЎ¬µїґјї у
»«ЅЎ«ј ЯјЩЯЅС ЎС ґуЅґЇФЯґ. кЯ»«Ѕэє«убЎїС ¬ЅЇюСуЩХ ЯЅ«у ґєЩ¬б (Фб¬їХ ¬б¬
CARDINAL, BOOLEAN, INTEGER ї Ф.с.), «»УСсСЅґЇЪїХ їјСЎб нбє«уЩХ Фї»«у, у
¬«ЎФС¬ЯФС BEGIN ... END ЎС«нХ«сїј« ФУбЎЯЅґФ«УТ Ф«Ѕэ¬« сЅґ ¬«ЎФУ«Ѕґ
¬«УУС¬ФЎ«ЯФї уЩУбЄСЎї®, Я«ЯФбуЅСЎЎЩХ їє «нЫС¬Ф«у УбєЅїюЎЩХ Фї»«у.
ЕУС«нУбє«убЎїС Фї»«у у ЭФ«ј ЯјЩЯЅС - »«ЅЎбґ »У«Фїу«»«Ѕ«ЄЎ«ЯФэ »УїуСсСЎїЇ.
ДЯЎ«уЎЩС сїУС¬ФїуЩ Фᬫъ« »УС«нУбє«убЎїґ (CHR, ORD, VAL, FLOAT, TRUNC)
УСбЅїєТЇФЯґ уЯФУ«СЎЎЩјї »УСс«»УСсСЅСЎЎЩјї »У«µСсТУбјї. ж«ЯФбу Фб¬їХ хТЎ¬µї®
ј«ЄСФ УбЯЮїУґФэЯґ єб ЯюСФ їЯ»«Ѕэє«убЎїґ Я»СµїбЅэЎЩХ нїнЅї«ФС¬. Жpї »СУуЩС
хТЎ¬µїї »УС«нУбє«убЎїґ «ФЎ«ЯґФЯґ ¬ Убн«ФС Я »СУСюїЯЅїјЩјї Фї»бјї ї »«сУ«нЎ«
«»їЯбЎЩ у Я««ФуСФЯФуТЇЪС® ЅїФСУбФТУС. зсСЯэ јЩ »«сюСУ¬ЎСј ЅїЮэ «сїЎ бЯ»С¬Ф
їЯ»«Ѕэє«убЎїґ хТЎ¬µїї VAL. Е«Я¬«Ѕэ¬Т, ¬б¬ ТЄС «ФјСюбЅ«Яэ, н«ЅэЮїЎЯФу«
нбє«уЩХ Фї»«у УСбЅїєТЇФЯґ у Шйо Ўб «ЯЎ«уС »СУСюїЯЅСЎїґ, VAL ј«ЄСФ Убн«ФбФэ
Я Ўїјї ¬б¬ Я »СУСюїЯЅїјЩјї. ДнЪбґ ЯїЎФб¬ЯїюСЯ¬бґ ЯФУТ¬ФТУб уЩє«уб VAL »Уї
ЭФ«ј їјССФ ЯЅСсТЇЪї® уїс:
:=
VAL (, ).
й ¬бюСЯФуС Фї»б B ј«ЄСФ їЯ»«Ѕэє«убФэЯґ Ф«Ѕэ¬« нбє«уЩ® Фї», УСбЅїєТСјЩ® Ўб
«ЯЎ«уС »СУСюїЯЅСЎїґ (ЅЇн«® Фї» ¬У«јС REAL ї Съ« "»У«їєу«сЎЩХ"). ДнЫС¬Ф«ј
¬ЅбЯЯб CARDINAL у ЭФ«® ЯФУТ¬ФТУС ј«ЄСФ нЩФэ ¬б¬ »СУСјСЎЎбґ, Фб¬ ї
¬«ЎЯФбЎФб. мб»УїјСУ, VAR c: CARDINAL; b: BYTE; i: INTEGER; ch: CHAR;
BEGIN ch := 'A'; c := 32771; i := INTEGER ( c ); (*1*)
i := VAL ( INTEGER, c ); (*2*) b := BYTE ( ch ); (*3*) b := VAL ( BYTE, ORD(ch) ); (*4*) b := VAL ( BYTE, c ); (*5*)
и «сїЎб¬«уЩј Ѕї УСєТЅэФбФбј »УїуСсТФ «»СУбµїї (1) ї (2)? (3) ї (4)? и
¬б¬«јТ УСєТЅэФбФТ »УїуСсСФ «»СУбµїґ (5)? збјСФэФС, юФ« ЭФб «»СУбµїґ ЯуґєбЎб
Я »УС«нУбє«убЎїСј єЎбюСЎїґ »СУСјСЎЎ«® їє ЯЅ«уб у нб®Ф »Уї «ФЯТФЯФуїї
Я«ујСЯФїј«ЯФї »УСсЯФбуЅСЎї®.
цТЎ¬µїї FLOAT ї TRUNC »УСсЎбєЎбюСЎЩ сЅґ УСбЅїєбµїї "»СУСХ«с«у" «Ф
бУїхјСФї¬ї µСЅЩХ ¬ бУїхјСФї¬С сС®ЯФуїФСЅэЎЩХ юїЯСЅ ї Ўб«н«У«Ф. ДЎї »«сУ«нЎ«
«»їЯбЎЩ у ТюСнЎї¬бХ »« »У«ъУбјјїУ«убЎїЇ.
йЯС Т¬бєбФСЅї Я«ујСЯФїјЩ »« »УСсЯФбуЅСЎїЇ, «нСЯ»СюСЎїС Я«ујСЯФїј«ЯФї »«
»УїЯубїубЎїЇ ЯуґєбЎ« Я їЯ»«Ѕэє«убЎїСј хТЎ¬µїї »УїуСсСЎїґ ADDRESS. жФѻѡэ
"ЯФУ«ъ«ЯФї" »УбуїЅ Я«ујСЯФїј«ЯФї Т¬бєбФСЅС® убУэїУТСФЯґ сбЄС у УбєЎЩХ
уСУЯїґХ «сЎ«ъ« ї Ф«ъ« ЄС ґєЩ¬б.
ДсЎїј їє »У«ґуЅСЎї® ¬«ЎµС»µїї »«Ѕїј«Ухїєјб у ґєЩ¬бХ »У«ъУбјјїУ«убЎїґ
ФУСФэСъ« »«¬«ЅСЎїґ ґуЅґСФЯґ »«ґуЅСЎїС бъУСъбФїуЎЩХ ЯФУТ¬ФТУ, їєуСЯФЎЩХ »«с
ЎбєубЎїСј "єб»їЯї Я убУїбЎФбјї" (єб»їЯї Я "ФЭъбјї", єб»їЯї »СУСјСЎЎ«®
ЯФУТ¬ФТУЩ). й Фб¬їС ЯФУТ¬ФТУЩ уу«сґФЯґ Я»СµїбЅэЎЩС уЩсСЅґЇЪїС (уЩнїУбЇЪїС)
Яу«®ЯФуб, «»УСсСЅґЇЪїС їЎФСУ»УСФбµїЇ «нЫС¬Фб. мб»УїјСУ, «нЫС¬Ф ¬ЅбЯЯб
"жФТсСЎФ" ј«ЄСФ ХбУб¬ФСУїє«убФэЯґ ЯЅСсТЇЪїјї Яу«®ЯФубјї:
- ТЯ»СубСј«ЯФэЇ,
- »УїЎбсЅСЄЎ«ЯФэЇ ¬ ъУТ»»С,
- хбјїЅїС®,
- УбєјСУ«ј »«ЅТюбСј«® ЯФї»СЎсїї.
ЖУї »СУуЩХ Яу«®ЯФуб »УїЯТЪї ЅЇн«јТ ЯФТсСЎФТ, б »«ЯЅСсЎСС Ф«Ѕэ¬«
ТЯ»СубЇЪСјТ. мСТЯ»СубЇЪї® ЄС ЯФТсСЎФ ј«ЄСФ ХбУб¬ФСУїє«убФэЯґ «Я«нЩј
Яу«®ЯФу«ј: Ўб»УїјСУ, ґуЅґСФЯґ Ѕї «Ў ¬бЎсїсбФ«ј Ўб «ФюїЯЅСЎїС їЅї »«¬б ЎСФ.
Жб¬їј «нУбє«ј, ТЯ»СубСј«ЯФэ ЯФТсСЎФб «ФЎ«ЯїФЯґ ¬ ¬бФСъ«Уїї уЩсСЅґЇЪїХ
Яу«®ЯФу: єЎбюСЎїС ЭФ«ъ« Яу«®ЯФуб уЩсСЅґСФ ЎСТЯ»СубЇЪїХ ЯФТсСЎФ«у,
ХбУб¬ФСУїєТСјЩХ ЎбЅїюїСј с«»«ЅЎїФСЅэЎЩХ ¬бюСЯФу, ЎС Яу«®ЯФуСЎЎЩХ
ТЯ»СубЇЪїј. ЕУї ЭФ«ј "фЯ»СубЇЪї® ЯФТсСЎФ" ї "мСТЯ»СубЇЪї® ЯФТсСЎФ" нТсТФ
ХбУб¬ФСУїє«убФэЯґ УбєЎЩјї ЯФУТ¬ФТУбјї «нЫС¬Ф«у:
TYPE фЯ»СубСј«ЯФэ = ( ДФЅ, т«У, фс, мСТс ); фЯ»СубЇЪї®_жФТсСЎФ = RECORD
FAM : цбјїЅїґ;
GR : м«јСУ_вУТ»»Щ;
SB : фЯ»СубСј«ЯФэ;
ST : REAL; (* ЙбєјСУ ЯФї»СЎсїї *)
END;
мСТЯ»СубЇЪї®_жФТсСЎФ = RECORD
FAM : цбјїЅїґ;
GR : м«јСУ_вУТ»»Щ;
SB : фЯ»СубСј«ЯФэ; ибЎсїсбФ_мб_ДФюїЯЅСЎїС : ( дб, мСФ )
END.
мСФУТсЎ« єбјСФїФэ, юФ« у ЭФїХ ЯФУТ¬ФТУбХ СЯФэ «нЪїС юбЯФї, б «ФЅїюїґ
ЯуґєбЎЩ Ф«Ѕэ¬« Я »«ЯЅСсЎїј ¬бюСЯФу«ј (бФpїнТФ«ј, »«ЅСј). йЩЎ«Яґ уЩсСЅґЇЪСС
Яу«®ЯФу« SB у »«ЅС убУїбЎФб, јЩ Я¬«ЎЯФУТїУТСј ЯФУТ¬ФТУТ «нЫС¬Фб у уїсС
єб»їЯї Я убУїбЎФбјї:
TYPE жФТсСЎФ = RECORD
FAM : цбјїЅїґ;
GR : м«јСУ_вУТ»»Щ;
CASE SB : фЯ»СубСј«ЯФэ OF мСТс : ибЎсїсбФ_мб_ДФюїЯЅСЎїС : ( дб, мСФ ) |
ДФЅ, т«У, фс : ST : REAL
END
END.
зЎбюСЎїС »СУСюїЯЅїј«ъ« Фї»б фЯ»СубСј«ЯФэ у ЭФ«ј »УїјСУС «»УСсСЅґСФ
їЎФСУ»УСФбµїЇ «нЫС¬Фб Ѕїн« ¬б¬ ТЯ»СубЇЪСъ«, Ѕїн« ¬б¬ ЎСТЯ»СубЇЪСъ«
ЯФТсСЎФб. Жб¬їј «нpбє«ј »«Ѕїј«pхїєј ЯФpТ¬ФТpЩ єб»їЯї Я убpїбЎФбјї
єб¬ЅЇюбСФЯґ у у«єј«ЄЎ«ЯФї СС їЎФСp»pСФбµїї Ўб бЅэФСpЎбФїуЎ«® «ЯЎ«уС.
й ЭФ«® Яуґєї у«єЎї¬бСФ у«»У«Я « Я»Сµїхї¬бµїї »УСсЯФбуЅСЎїґ ЯФУТ¬ФТУЩ
жФТсСЎФ. ДЎб Я«сСУЄїФ »«ЯФ«ґЎЎТЇ юбЯФэ
TSIZE (цбјїЅїґ) + SIZE (GR) + TSIZE (фЯ»СубСј«ЯФэ)
ї »СУСјСЎЎТЇ (Ўбн«p бЅэФСpЎбФїу), УбєјСУ ¬«Ф«У«® «»УСсСЅґСФЯґ єЎбюСЎїСј SB.
пїн« ЭФ« нб®Ф (у ЯЅТюбС SB = мСТс)
SIZE (ибЎсїсбФ_мб_ДФюїЯЅСЎїС) = 1; , Ѕїн« су«®Ў«С ЯЅ«у« (у ЯЅТюбС SB # мСТс) SIZE(ST)=4. иᬫ® ЄС УбєјСУ »бјґФї
уЩсСЅїФ ФУбЎЯЅґФ«У »«с ЭЅСјСЎФ ХУбЎСЎїґ «нЫС¬Фб "жФТсСЎФ"? асїЎЯФуСЎЎ«С
УСЮСЎїС - јб¬ЯїјбЅэЎ« у«єј«ЄЎЩ®, ¬«Ф«УЩ® ј«ЄСФ »«ФУСн«убФэЯґ сЅґ ХУбЎСЎїґ
сбЎЎЩХ ЯФТсСЎФб. Е«Я¬«Ѕэ¬Т TSIZE (фЯ»СубЇЪї®_жФТсСЎФ) > TSIZE
(мСТЯ»СубЇЪї®_жФТсСЎФ), ФУбЎЯЅґФ«У уЩсСЅїФ »бјґФэ, с«ЯФбФ«юЎТЇ сЅґ ХУбЎСЎїґ
сбЎЎЩХ «н ТЯ»СубЇЪСј ЯФТсСЎФС. аЯЅї ЄС Фᬫ® ЯФТсСЎФ »СУС®сСФ у УбєУґс
ЎСТЯ»СубЇЪїХ, Ф«Ф ЄС ЭЅСјСЎФ ХУбЎСЎїґ нТсСФ їЎФСУ»УСФїУ«убФэЯґ у
Я««ФуСФЯФуїї Я «ФЎ«ЮСЎїСј уЩсСЅСЎїґ SB=мСТс. ЕУї ЭФ«ј їє юСФЩpСХ нб®Ф,
уЩсСЅСЎЎЩХ ФУбЎЯЅґФ«У«ј »«с ST у УбЯюСФС Ўб ТЯ»СубЇЪСъ« ЯФТсСЎФб, Фpї
»«ЯЅСсЎїХ »У«ЯФ« ЎС нТсТФ їЯ»«Ѕэє«убФэЯґ, б »СУуЩ® нб®Ф нТсСФ
їЎФСУ»УСФїУ«убФэЯґ ¬б¬ Я«ХУбЎґЇЪї® єЎбюСЎїС Яу«®ЯФуб
ибЎсїсбФ_мб_ДФюїЯЅСЎїС.
збјСФїј, юФ« уЩсСЅґЇЪїС Яу«®ЯФуб, Т»УбуЅґЇЪїС уЩн«У«ј уїсб їЎФСУ»УСФбµїї,
ј«ъТФ ї ЎС їјСЎ«убФэЯґ. й Фб¬їХ ЯЅТюбґХ уїс бЅэФСpЎбФїуЎ«® їЎФСp»pСФбµїї
«»pСсСЅґСФЯґ ЎС уЩсСЅґЇЪїј Яу«®ЯФу«ј, б хб¬ФїюСЯ¬їј їЯ»«Ѕэє«убЎїСј їјСЎї
»«Ѕґ »pї «нpбЪСЎїї ¬ «нЫС¬ФТ. мб»pїјСp: TYPE жФТсСЎФ = RECORD
FAM : цбјїЅїґ; GR : м«јСУ_вУТ»»Щ;
CASE : фЯ»СубСј«ЯФэ OF мСТс : ибЎсїсбФ_мб_ДФюїЯЅСЎїС : ( дб, мСФ ) |
ДФЅ, т«У, фс : ST : REAL
END
END.
ЕТЯФэ VAR V: жФТсСЎФ. Еpї ЭФ«ј у ЭЅСјСЎФС ХpбЎСЎїґ сЅґ V уЩсСЅґЇЪСС »«ЅС
у««нЪС «ФЯТФЯФуТСФ, »«ЯФ«ґЎЎбґ юбЯФэ їјССФ pбєјСp TSIZE(цбјїЅїґ)+SIZE(GR),
б бЅэФСpЎбФїуЎбґ їјССФ pбєјСp max {SIZE(ибЎсїсбФ_мб_ДФюїЯЅСЎїС), SIZE(ST)}.
ДнpбЪСЎїС ¬ «нЫС¬ФТ юСpСє ¬убЅїсСЎФ V.ибЎсїсбФ_мб_ДФюїЯЅСЎїС »pїуСсСФ ¬
їЎФСp»pСФбµїї бЅэФСpЎбФїуЎ«® юбЯФї у Я««ФуСФЯФуїї Я »СpСюїЯЅїјЩј Фї»«ј (дб,
мСФ), б «нpбЪСЎїС V.ST - ¬ їЎФСp»pСФбµїї Ф«® ЄС юбЯФї у Я««ФуСФЯФуїї Я
Фї»«ј REAL. збјСФїј, юФ« Фб¬бґ бЅэФСpЎбФїуЎбґ їЎФСp»pСФбµїґ ј«ЄСФ «¬бєбФэЯґ
уСЯэјб "ЎСТЯФ«®юїу«®", ЯуґєбЎЎ«® Я у«єј«ЄЎ«ЯФґјї у«єЎї¬Ў«уСЎїґ
с«»«ЅЎїФСЅэЎЩХ «Юїн«¬. мбЅїюїС у ЯФpТ¬ФТpС убpїбЎФЎ«® юбЯФї »«ЯЅСсЎСъ«
»pїјСpб сС¬Ѕбpбµї® Фї»б уЩсСЅґЇЪСъ« Яу«®ЯФуб (фЯ»СубСј«ЯФэ), б Фб¬ЄС
¬«ЎЯФбЎФ ЭФ«ъ« Фї»б (мСТс,ДФЅ,т«У,фс), ЯФp«ъ« ъ«у«pґ, «нТЯЅ«уЅСЎ« Ф«Ѕэ¬«
«сЎїј «нЯФ«ґФСЅэЯФу«ј: ЯФpСјЅСЎїСј Я«ХpбЎїФэ «нЪТЇ ЯїЎФб¬ЯїюСЯ¬ТЇ ЯФpТ¬ФТpТ
єб»їЯї Я убpїбЎФбјї. й ЯјЩЯЅС ¬«ppС¬ФЎ«® їЎФСp»pСФбµїї ЭФї сС¬Ѕбpбµїї ЎС
їјСЇФ Ўї¬б¬«ъ« єЎбюСЎїґ - уСсэ »p«уСpїФэ єЎбюСЎїС ЎСЯТЪСЯФуТЇЪСъ«
уЩсСЅґЇЪСъ« Яу«®ЯФуб ЎСу«єј«ЄЎ«!
й «нЪСј ЯЅТюбС ЎСєбуїЯїј« «Ф Ф«ъ«, їјСЎТСФЯґ »«ЅС ФЭъб їЅї ЎСФ, єб»їЯї Я
убУїбЎФбјї «ъУбЎїюїубЇФ Ўбн«p у«єј«ЄЎЩХ уїс«у їЎФСУ»УСФбµїї «нЫС¬Ф«у Ўб
бЅэФСpЎбФїуЎ«® «ЯЎ«уС. й ЭФ«ј ї Я«ЯФ«їФ pСъЅбјСЎФїpТЇЪбґ p«Ѕэ ЭФїХ ЯФpТ¬ФТp
у »«Ѕїј«pхЎ«® бЅэФСpЎбФїуЎ«® їЎФСp»pСФбµїї «нЫС¬Ф«у.
мбЅїюїС «нЪїХ юбЯФС® у ЯФУТ¬ФТУбХ УбЯЯј«ФУСЎЎ«ъ« »УїјСУб фЯ»СубЇЪї®_жФТсСЎФ
ї мСТЯ»СубЇЪї®_жФТсСЎФ ґуЅґСФЯґ уСЯэјб ХбУб¬ФСУЎЩј сЅґ »У«ъУбјјїУ«убЎїґ. й
ЭФ«ј ЯјЩЯЅС єб»їЯї Я убУїбЎФбјї ј«ЄЎ« УбЯЯјбФУїубФэ ¬б¬ х«УјТ Ѕб¬«ЎїюЎ«ъ«
«»їЯбЎїґ Фї»«у, »«єу«ЅґЇЪТЇ їєнбуїФэЯґ «Ф »«уФ«У«у у «»їЯбЎїї Яу«®ЯФу
«нЫС¬Ф«у. й «нЫС¬ФЎ«-«УїСЎФїУ«убЎЎЩХ ґєЩ¬бХ ЯТЪСЯФуТСФ с«»«ЅЎїФСЅэЎбґ
у«єј«ЄЎ«ЯФэ Фᬫ® Ѕб¬«Ўїєбµїї, «»УСсСЅґЇЪбґ »«Ѕїј«УхЎТЇ їЎФСУ»УСФбµїЇ
«нЫС¬Ф«у ЎС Ўб бЅэФСpЎбФїуЎ«® «ЯЎ«уС, б Ўб «ЯЎ«уС pбЯЮїpСЎїґ Яу«®ЯФу. ШФб
у«єј«ЄЎ«ЯФэ ЯуґєбЎб Я јСХбЎїєј«ј ЎбЯЅСс«убЎїґ Яу«®ЯФу.
оСХбЎїєј ЎбЯЅСс«убЎїґ »«єу«ЅґСФ Ѕб¬«ЎїюЎ« «»їЯбФэ УбєЅїюЎЩС ¬ЅбЯЯЩ «нЫС¬Ф«у
»ТФСј уЩсСЅСЎїґ їХ «нЪїХ Яу«®ЯФу. Жб¬«С уЩсСЅСЎїС »У«у«сїФЯґ Ўб «ЯЎ«уС
«ФЎ«ЮСЎїґ "«нЪСъ« ¬ юбЯФЎ«јТ" - «н«нЪСЎїґ. Дн«нЪСЎїС ј«ЄСФ нЩФэ «»УСсСЅСЎ«
х«УјбЅэЎ« Ўб «ЯЎ«уС «ФЎ«ЮСЎїґ у¬ЅЇюСЎїґ »«сјЎ«ЄСЯФу у јЎ«ЄСЯФу«.
ЕТЯФэ З - ¬ЅбЯЯ «нЫС¬Ф«у Я їјјбЎСЎФЎЩјї Яу«®ЯФубјї Й(A): A = {a/P(A)}, a B
= {b/P(B)}. аЯЅї P(A) IN P(B) (P(A) ґуЅґСФЯґ »«сјЎ«ЄСЯФу«ј P(B), IN -
«ФЎ«ЮСЎїС у¬ЅЇюСЎїґ), Ф« З "«н«нЪбСФ" й (A*>B, "*>" - «ФЎ«ЮСЎїС «н«нЪСЎїґ).
й «ФЎ«ЮСЎїї (З*>B) З ґуЅґСФЯґ Ўбс¬ЅбЯЯ«ј, й - »«с¬ЅбЯЯ«ј, »Уї ЭФ«ј ЅЇн«®
«нЫС¬Ф ¬ЅбЯЯб й ХбУб¬ФСУїєТСФЯґ ЎбЯЅСсТСјЩјї Яу«®ЯФубјї P(A) ї
»Уї«нУСФСЎЎЩјї P(B)-P(A). мб»УїјСУ, ЅЇн«® буФ«ј«нїЅэ «нЅбсбСФ Яу«®ЯФубјї
ФУбЎЯ»«УФЎ«ъ« ЯУСсЯФуб ї їјССФ ЎС¬«Ф«УЩС «Я«нСЎЎЩС "буФ«ј«нїЅэЎЩС"
Яу«®ЯФуб, ¬«Ф«УЩјї ЎС «нЅбсбСФ Фб¬«С ФУбЎЯ»«УФЎ«С ЯУСсЯФу«, ¬б¬, Ўб»pїјСp,
Ѕ«с¬б. й ЭФ«ј ЯјЩЯЅС
ЖУбЎЯ»«УФЎ«С_жУСсЯФу« *> ЗуФ«ј«нїЅэ, п«с¬б.
ЕУїюСј Й(ЗуФ«ј«нїЅэ)^P(п«с¬б) = P(ЖУбЎЯ»«УФЎ«С_жУСсЯФу«). (зсСЯэ Яїју«Ѕ "^"
їЯ»«ЅэєТСФЯґ ¬б¬ "»СУСЯСюСЎїС јЎ«ЄСЯФу"). иЅбЯЯ, ¬«Ф«УЩ® ЎС «н«нЪбСФЯґ
Ўї¬б¬їј сУТъїј, ЎбєЩубСФЯґ Уґс«уЩј ¬ЅбЯЯ«ј. мб «ЯЎ«уС »СУСЯСюСЎїґ јЎ«ЄСЯФу
їјјбЎСЎФЎЩХ Яу«®ЯФу ¬ЅбЯЯ«у ј«ъТФ нЩФэ »«ЯФУ«СЎЩ јСЄ¬ЅбЯЯ«уЩС «ФЎ«ЮСЎїґ
СсїЎїюЎ«ъ« ЎбЯЅСс«убЎїґ, у ¬«Ф«УЩХ ЅЇн«® ¬ЅбЯЯ ЎС»«ЯУСсЯФуСЎЎ« «н«нЪбСФЯґ
ЅїЮэ «сїЎ сУТъїј. мб»УїјСУ,
ЖУбЎЯ»«УФЎ«С_жУСсЯФу«
*
|
+------------------+---------------------+
| |
|ЗуФ«ј«нїЅэ |п«с¬б
+-----*-----+ +-----*-----+
| | | |
| | | |
* * * * вУТє«уї¬ пСъ¬«у«® ьб®сбУ¬б fЅ буФ«ј«нїЅэ
|
|
|
* жбј«ЯубЅ
жСјбЎФї¬б «н«нЪСЎїґ ¬б¬ «ФЎ«ЮСЎїґ «нЪСъ« ¬ юбЯФЎ«јТ ї ЯФУСјЅСЎїС »«уЩЯїФэ
Ѕб¬«ЎїюЎ«ЯФэ «»їЯбЎїґ ¬ЅбЯЯ«у Ўб «ЯЎ«уС СсїЎїюЎ«ъ« ЎбЯЅСс«убЎїґ ЎС уЯСъсб
"уЩъЅґсґФ" бсС¬убФЎ«. мб»УїјСУ,
TYPE фєСЅ = RECORD
A: ь«ЅФ; B: вᮬб;
END; .
ц«УјбЅэЎ« сЅґ ЭФ«ъ« »УїјСУб ј«ЄЎ« «»УСсСЅїФэ «н«нЪСЎїС: ь«ЅФ *>фєСЅ (вᮬб
*> фєСЅ), «сЎб¬« їЎФТїФїуЎ« ь«ЅФ ЎС у«Я»УїЎїјбСФЯґ ¬б¬ ¬бФСъ«Уїґ «нЪСъ« »«
«ФЎ«ЮСЎїЇ ¬ фєЅТ.
пЇн«® «нЫС¬Ф, ¬«ЎЯФУТїУТСјЩ® Ўб «ЯЎ«уС «ФЎ«ЮСЎїґ «н«нЪСЎїґ, »УСсЯФбуЅґСФЯґ
ЯФУТ¬ФТУ«® ЯФУбФїхїµїУ«убЎЎ«ъ« (УбЯЯЅ«СЎЎ«ъ«) бъУСъбФб. ЕУїюСј ¬бЄсЩ® ЯЅ«®
(ЯФУбФб) у Фᬫ® ЯФУТ¬ФТУС »УСсЎбєЎбюСЎ сЅґ уЩ»«ЅЎСЎїґ У«Ѕї ЭЅСјСЎФб
ХУбЎСЎїґ Яу«®ЯФу Я««ФуСФЯФуТЇЪСъ« Ўбс¬ЅбЯЯб с« У«с«у«ъ« у¬ЅЇюїФСЅэЎ«.
мб»УїјСУ, ЅЇн«® «нЫС¬Ф ¬ЅбЯЯб "fЅ" (Яј. ЯХСјТ уЩЮС) нТсСФ «»УСсСЅґФэЯґ
ЯФУТ¬ФТУ«®:
TYPE жФУТ¬ФТУб fЅб = RECORD
З: ЖУбЎЯ»«УФЎ«С_жУСсЯФу«; й: п«с¬б; ж: fЅ;
END; .
кЎФСУ»УСФбµїґ fЅб ¬б¬ ФУбЎЯ»«УФЎ«ъ« ЯУСсЯФуб ЯуґєбЎб Ф«Ѕэ¬« Я
їЯ»«Ѕэє«убЎїСј ЯЅ«ґ З у ЭЅСјСЎФС ХУбЎСЎїґ. кЎФСУ»УСФбµїґ fЅб ¬б¬ Ѕ«с¬ї - Я
їЯ»«Ѕэє«убЎїСј суТХ ЯЅ«Су: З ї й, ї, Ўб¬«ЎСµ, їЎФСУ»УСФбµїґ fЅб ¬б¬
«Я«н«ъ« уїсб Ѕ«с¬ї ЯуґєбЎб Я їЯ»«Ѕэє«убЎїСј уЯСХ ФУСХ ЯЅ«Су: З,й,ж.
дС¬ЅбУбµїґ уїсб "жФУТ¬ФТУб_fЅб" у «нЫС¬ФЎ«-«УїСЎФїУ«убЎЎ«ј ґєЩ¬С єбјСЎґСФЯґ
«ФЎ«ЮСЎїСј fЅ цУбъјСЎФ, єбЎґФЩ®
| | | »«с «нЫС¬Ф о1^
+-------------------+ |
| | |
+-------------------+ -+-+
| | |
+-------------------+ |
| | > жу«н«сЎЩ® хУбъјСЎФ, УбЎСС
+-------------------+ | їЯ»«Ѕэє«убЎЎЩ® »«с
| | | «нЫС¬Ф Ж2^
+-------------------+ -+
кЅЅЇЯФУбµїґ »«ЯФУ«СЎб сЅґ ј«јСЎФб «нУбн«Ф¬ї єб»У«Яб NEW(M2). й ЭФ«Ф ј«јСЎФ
уУСјСЎї у сїЎбјїюСЯ¬«® »бјґФї їјСЇФЯґ суб Яу«н«сЎЩХ хУбъјСЎФб «нЪїј «нЫСј«ј
ЮСЯФэ ЯЅ«у, ¬«Ф«УЩХ с«ЯФбФ«юЎ« сЅґ уЩ»«ЅЎСЎїґ єб»У«Яб Ўб уЩсСЅСЎїС ЭЅСјСЎФб
ХУбЎСЎїґ »«с «нЫС¬Ф о2^ (Ф.С. сЅґ «нЫС¬Фб, Ўб ¬«Ф«pЩ® нТсСФ Т¬бєЩубФэ M2),
«сЎб¬« хУбъјСЎФбµїґ ЎС »«єу«ЅґСФ ЯїЯФСјС уЩсСЅїФэ »бјґФэ »«с «нЫС¬Ф о2^.
жїЯФСјб Т»УбуЅСЎїґ сїЎбјїюСЯ¬«® »бјґФэЇ уСсСФ Я»СµїбЅэЎЩ® Я»їЯ«¬ Яу«н«сЎЩХ
хpбъјСЎФ«у - »ТЅ »бјґФї. ЕУї у«єуУбЪСЎїї ¬б¬«ъ«-Ѕїн« ЭЅСјСЎФб ХУбЎСЎїґ,
їЯ»«ЅэєТСј«ъ« у »Уї¬ЅбсЎ«® »У«ъУбјјС, у »ТЅ Яу«н«сЎ«® »бјґФї ј«ЄСФ нЩФэ
УСбЅїє«убЎ« "Я¬ЅСїубЎїС" Я«ЯСсЎїХ Яу«н«сЎЩХ хpбъјСЎФ«у у «сїЎ хpбъјСЎФ
н«ЅэЮСъ« «нЫСјб. мб»УїјСУ, СЯЅї у »УСсЩсТЪС® »У«ъУбјјС їєјСЎїФэ
»«ЯЅСс«убФСЅэЎ«ЯФэ «нУбЪСЎї® ¬ сїЎбјїюСЯ¬«® »бјґФї Ўб »УїуСсСЎЎТЇ ЎїЄС, Ф«
«»їЯбЎЎ«ъ« уЩЮС «Ф¬бєб »« »бјґФї ЎС »У«їє«®сСФ:
BEGIN NEW(T1);...NEW(T2);...NEW(M1);...
DISPOSE(T1);...DISPOSE(T2);... NEW(M2);...
зсСЯэ »Уї «нУбн«Ф¬С єб»У«Яб NEW(M2) у »ТЅС сїЎбјїюСЯ¬«® »бјґФї нТсСФ
ЎбХ«сїФэЯґ «сїЎ Яу«н«сЎЩ® хУбъјСЎФ «нЫСјб ЮСЯФэ ЯЅ«у, «нУбє«убЎЎЩ®
"Я¬ЅСїубЎїСј" ЭЅСјСЎФ«у Ж1^ ї T2^, уЩ»«ЅЎСЎЎЩј »Уї «нУбн«Ф¬С єб»У«Яб
DISPOSE(T2). й «нЪСј ЯЅТюбС у«»У«ЯЩ ЭххС¬ФїуЎ«® УСбЅїєбµїї Т»УбуЅСЎїґ
сїЎбјїюСЯ¬«® »бјґФэЇ, «нСЯ»СюїубЇЪС® јїЎїјТј «Ф¬бє«у »Уї «ъУбЎїюСЎЎ«ј
«нЫСјС, Я«ЯФбуЅґЇФ «ФсСЅэЎТЇ »У«нЅСјТ. зсСЯэ јЩ Ф«Ѕэ¬« єбјСФїј, юФ« Я
«УъбЎїєбµїС® уЩсСЅСЎїґ "»СУу«ъ« »«сХ«сґЪСъ«" хУбъјСЎФб »бјґФї у
»У«ъУбјјїУ«убЎїї ЯуґєЩубЇФ Фб¬їС ФСУјїЎЩ ¬б¬ "Хї»" їЅї "¬Тюб", «ФЎ«ЯґЪїСЯґ
Я¬«УСС ¬ »У«хСЯЯї«ЎбЅэЎ«јТ ЄбУъ«ЎТ, юСј ¬ ЎбТюЎ«-јСФ«сїюСЯ¬«® ФСУјїЎ«Ѕ«ъїї.
ЖСј ЎС јСЎСС ЭФї ФСУјїЎЩ с«у«ЅэЎ« «нУбєЎ« ХбУб¬ФСУїєТЇФ »УїЎµї»Щ
«УъбЎїєбµїї сїЎбјїюСЯ¬«® »бјґФї.
ДУъбЎїєбµїґ ¬«УУС¬ФЎ«® »«ЯЅСс«убФСЅэЎ«ЯФї єб»У«Я«у ЯуґєбЎб, ¬У«јС Ф«ъ«, ¬б¬
јїЎїјТј СЪС Я суТјґ »У«нЅСјбјї. мб Ф«ј ЄС ЄбУъ«ЎС їХ ЎбєЩубЇФ »У«нЅСјЩ
"уїЯґюїХ ЯЯЩЅ«¬" ї "јТЯ«Уб", б «»УСсСЅґЇФ «Ўї суС ЯФ«У«ЎЩ «сЎ«® ї Ф«® ЄС
«Юїн¬ї, єб¬ЅЇюбЇЪС®Яґ у ЎС¬«УУС¬ФЎ«® Убн«ФС Я Т¬бєбФСЅґјї. жЅСсТЇЪї®
хУбъјСЎФ »У«ъУбјјЩ їЅЅЇЯФУїУТСФ у«єЎї¬Ў«уСЎїС Фб¬їХ «Юїн«¬ (Фї»
"ЖУСТъ«ЅэЎї¬" «»їЯбЎ уЩЮС).
VAR T1, T2:ЖУСТъ«ЅэЎї¬;
BEGIN NEW(T1);...T2:=T1;...
DISPOSE(T1); (* T2-"уїЯґюбґ ЯЯЩЅ¬б" *)
............
NEW(T1);...NEW(T2);...
T1:=T2; (* ДЯФбЅЯґ "јТЯ«У" *)
кє ЭФ«ъ« »УїјСУб »«ЎґФЎ«, юФ« "уїЯґюбґ ЯЯЩЅ¬б" - ЭФ« Т¬бєбФСЅэ »Уї¬ЅбсЎ«®
»У«ъУбјјЩ, Т¬бєЩубЇЪї® Ўб Яу«н«сЎЩ® хУбъјСЎФ сїЎбјїюСЯ¬«® »бјґФї. Е«Я¬«Ѕэ¬Т
ЭФ«Ф хУбъјСЎФ ј«ЄСФ нЩФэ уЩсСЅСЎ ЯїЯФСј«® »« ¬б¬«јТ-Ѕїн« єб»У«ЯТ сУТъ«®
»Уї¬ЅбсЎ«® »У«ъУбјјС, Ж2 ј«ЄСФ «Ф¬УЩФэ с«ЯФТ» ¬ "юТЄїј" сбЎЎЩј ї
"УбєУСЮїФэ" їХ їЎФСУ»УСФбµїЇ ¬б¬ ФУСТъ«ЅэЎї¬б. Е«ЯЅСсЯФуїґ Фᬫ®
їЎФСУ»УСФбµїї у «нЪСј ЯЅТюбС ЎС»УСсЯ¬бєТСјЩ. збјСФїј, юФ« "уїЯґюбґ" ЯЯЩЅ¬б
ї "»ТЯФбґ" ЯЯЩЅ¬б (їјСЇЪбґ єЎбюСЎїС NIL, Яј. pбєс.III) ґуЅґЇФЯґ Я«уСУЮСЎЎ«
УбєЎЩјї »«ЎґФїґјї. "оТЯ«У" - ЭФ« єбЎґФЩ® хУбъјСЎФ сїЎбјїюСЯ¬«® »бјґФї, ¬
¬«Ф«У«јТ у »Уї¬ЅбсЎ«® »У«ъУбјјС »«ФСУґЎ с«ЯФТ». й »УїуСсСЎЎ«ј »УїјСУС
јТЯ«У«ј «¬бєбЅЯґ ЯФбУЩ® ФУСТъ«ЅэЎї¬ Ж1^, Ўб ¬«Ф«УЩ® Т¬бєЩубЅ Ж1 с«
»СУСсуїЄ¬ї (ТЯФбЎ«у¬ї Ўб Ж2). ШФ«Ф јТЯ«У ЎСТЯФУбЎїј: »У«ъУбјјїЯФ ЎС їјССФ ¬
ЎСјТ с«ЯФТ»б, б ЯїЯФСјб Т»УбуЅСЎїґ "ЯюїФбСФ" јТЯ«У єбЎґФЩј хУбъјСЎФ«ј
»бјґФї.
ДнЫСсїЎґСФ ЭФї суб уїсб «Юїн«¬ «сЎ« «нЪСС «нЯФ«ґФСЅэЯФу«: «Ўї ЎС
«нЎбУТЄїубЇФЯґ їЯ»«ЅЎїФСЅэЎ«® ЯУСс«®. ксСЎФїхїµїУ«убФэ »«с«нЎЩС «Юїн¬ї
ј«ЄЎ« Ф«Ѕэ¬« »ТФСј ФЪбФСЅэЎ«® »У«уСУ¬ї ї «ФЅбс¬ї »У«ъУбјјЩ. к, Ўб¬«ЎСµ, »«
Яу«їј у«єј«ЄЎЩј уЅїґЎїґј Ўб Убн«ФТ »У«ъУбјјЩ јТЯ«У ъ«Убєс« "нСє«нїсЎСС"
уїЯґюС® ЯЯЩЅ¬ї. ДЎ хб¬ФїюСЯ¬ї »Уїу«сїФ Ф«Ѕэ¬« ¬ ТуСЅїюСЎЎ«јТ УбЯХ«сТ
»бјґФї, у Ф« уУСјґ ¬б¬ уїЯґюбґ ЯЯЩЅ¬б Я»«Я«нЎб »Уї «»УСсСЅСЎЎЩХ ТЯЅ«уїґХ
»«ЅЎ«ЯФэЇ »бУбЅїє«убФэ »У«µСЯЯ уЩ»«ЅЎСЎїґ »У«ъУбјјЩ. й ЯЅ«ЄЎЩХ ЯїЯФСјбХ
"µСЎб" уїЯґюС® ЯЯЩЅ¬ї ј«ЄСФ «¬бєбФэЯґ «юСЎэ уЩЯ«¬«®.
кЯ»«Ѕэє«убЎїС буФ«јбФїюСЯ¬«® »бјґФї ЯуґєбЎ« Я Я«єсбЎїСј / ТЎїюФ«ЄСЎїСј
Я»СµїбЅэЎЩХ ЭЅСјСЎФ«у ХУбЎСЎїґ, ЯуґєбЎЎЩХ Я б¬ФїуЎЩјї «нЫС¬Фбјї -
сС®ЯФуїґјї їЅї »У«µСсТУбјї. пЇнбґ »У«µСсТУб ФpСнТСФ сЅґ уЩ»«ЅЎСЎїґ
Я«нЯФуСЎЎ«® їЎсїуїсТбЅэЎ«® Ѕ«¬бЅэЎ«® ЯУСсЩ. Е«с«нЎТЇ ЯУСсТ «нУбєТЇФ
Ѕ«¬бЅэЎЩС »СУСјСЎЎЩС, «нЫґуЅСЎЎЩС у »У«µСсТУС, х«УјбЅэЎЩС »бУбјСФУЩ,
ЭЅСјСЎФ ХУбЎСЎїґ бсУСЯб у«єуУбФб у »У«µСсТУТ, Ф.С. Ўбн«У «нЫС¬Ф«у,
«нСЯ»СюїубЇЪїХ уЩ»«ЅЎСЎїС сС®ЯФуї®, ЯуґєбЎЎЩХ Я »У«µСсТУ«®. мС«нХ«сїј«ЯФэ у
Ѕ«¬бЅэЎ«® ЯУСсС у«єЎї¬бСФ Ф«Ѕэ¬« у ј«јСЎФ уЩє«уб »У«µСсТУЩ - ј«јСЎФ
їЎФСУ»УСФбµїї «нЫС¬Фб »У«µСсТУЎ«ъ« Фї»б. Е«ЯЅС єбуСУЮСЎїґ Фᬫ®
їЎФСУ»УСФбµїї ЎС«нХ«сїј«ЯФэ у Ѕ«¬бЅэЎ«® ЯУСсС їЯюСєбСФ. Жб¬їј «нУбє«ј,
уУСјґ ЄїєЎї Ѕ«¬бЅэЎ«® ЯУСсЩ «ъУбЎїюїубСФЯґ уУСјСЎСј «ФУбн«Ф¬ї »У«ъУбјјЩ, у
¬«Ф«У«® «Ўб «»їЯбЎб. ж««ФуСФЯФуСЎЎ« єб»У«Я Ўб Я«єсбЎїС Ѕ«¬бЅэЎ«® ЯУСсЩ
ЯуґєбЎ Я уЩє«у«ј »У«µСсТУЩ, б єб»У«Я Ўб ТЎїюФ«ЄСЎїС - Я «¬«ЎюбЎїСј хбєЩ
б¬ФїуЎ«ЯФї «нЫС¬Фб («»СУбФ«У RETURN їЅї END у ФСЅС »У«µСсТУЩ). мб»УїјСУ:
VAR W1, W2: PROC;
PROCEDURE Йбн«Фб_1;
VAR A: INTEGER;... BEGIN... W2;...
END Йбн«Фб_1;
PROCEDURE Йбн«Фб_2;
VAR A: INTEGER;... BEGIN... W2;...
END Йбн«Фб_2;
BEGIN... W1:=Йбн«Фб_1;... W2:=Йбн«Фб_2;... W1;...
й ЭФ«ј хУбъјСЎФС «»їЯбЎЩ суб б¬ФїуЎЩХ «нЫС¬Фб »У«µСсТУЎ«ъ« Фї»б PROC =
PROCEDURE(): W1 ї W2 ї суС »У«µСсТУЩ нСє »бУбјСФУ«у: Йбн«Фб_1 ї Йбн«Фб_2,
¬«Ф«УЩС ј«ъТФ їЯ»«Ѕэє«убФэЯґ ¬б¬ ¬«ЎЯФбЎФЩ Фї»б PROC. кЎФСУ»УСФбµїґ
(б¬Фїуїєбµїґ) W1 »УїуСсСФ ¬ уЩє«уТ Йбн«ФЩ_1 ї Я«єсбЎїЇ Ѕ«¬бЅэЎ«® ЯУСсЩ
(Я«сСУЄбЪС® »СУСјСЎЎТЇ З). й »У«µСЯЯС уЩ»«ЅЎСЎїґ Йбн«ФЩ_1 »У«їєу«сїФЯґ
б¬Фїуїєбµїґ «нЫС¬Фб W2 ї Я««ФуСФЯФуСЎЎ« Я«єсбЎїС Ѕ«¬бЅэЎ«® ЯУСсЩ сЅґ
Йбн«ФЩ_2. й ЅЇн«® ФС¬ТЪї® ј«јСЎФ уУСјСЎї у ЯїЯФСјС ј«ъТФ нЩФэ б¬ФїуЎЩ
ЎСЯ¬«Ѕэ¬« «нЫС¬Ф«у. (й ЭФ«ј »УїјСУС б¬Фїуїєбµїґ W1 »Уїу«сїФ ¬ б¬Фїуїєбµїї
W2, єбФСј «Ўї «нб «ЯФбЇФЯґ у б¬ФїуЎ«ј Я«ЯФ«ґЎїї ї єбФСј ФСУґЇФ Яу«Ї
б¬ФїуЎ«ЯФэ у «нУбФЎ«® »«ЯЅСс«убФСЅэЎ«ЯФї: ЯЎбюбЅб »бЯЯїуїУТСФЯґ W2, єбФСј
W1). Е«ЯЅСс«убФСЅэЎ«ЯФэ б¬Фїубµїї ї »бЯЯїубµїї ЯуґєбЎб Я уЅ«ЄСЎЎ«ЯФэЇ
уЩє«у«у »У«µСсТУ, Я««ФуСФЯФуСЎЎ« Т»УбуЅСЎїС буФ«јбФїюСЯ¬«® »бјґФэЇ
«ЯЎ«уЩубСФЯґ Ўб їЯ»«Ѕэє«убЎїї ЯФС¬б - ЯФУТ¬ФТУЩ, »«ссСУЄїубЇЪС® Фб¬ТЇ
уЅ«ЄСЎЎ«ЯФэ. мїЄС сЅґ ЭФ«ъ« хУбъјСЎФб »УїуСсСЎб їЅЅЇЯФУбµїґ УбЯ»УСсСЅСЎїґ
буФ«јбФїюСЯ¬«® »бјґФї, ЯТЪСЯФуТЇЪСъ« у ФСюСЎїС Я«ујСЯФЎ«® б¬ФїуЎ«ЯФї
«нЫС¬Ф«у W1 ї W2.
+- +-------------------+ -+
| | ЕСУСјСЎЎбґ З | |
| +-------------------+ > 﫬бЅэЎбґ ЯУСсб
| | ЗсУСЯ у«єуУбФб | | сЅґ W1
збЎґФ«С »У«ЯФ- УбЎЯФу« | | ЕСУСјСЎЎбґ З | |
| +-------------------+ > 﫬бЅэЎбґ ЯУСсб
| | ЗсУСЯ у«єуУбФб | | сЅґ W2 йСУЮїЎб --> +- |-------------------+ -+
ЯФС¬б | | |
буФ«јбФїюСЯ¬«® | | |
»бјґФї | | | жу«н«сЎ«С
| | > »У«ЯФУбЎЯФу«
ЕбЯЯїубµїґ | | | »бјґФї
| ^ | | |
| | | | |
| | | | | v | +-------------------+ -+
З¬Фїубµїґ
ЕУї б¬Фїубµїї ¬бЄс«ъ« Ў«у«ъ« «нЫС¬Фб уСУЮїЎб ЯФС¬б "«»ТЯ¬бСФЯґ уЎїє" Ўб
уСЅїюїЎТ, «»УСсСЅґСјТЇ УбєјСУбјї Ѕ«¬бЅэЎ«® ЯУСсЩ ЭФ«ъ« «нЫС¬Фб,- »Уї Съ«
»бЯЯїубµїї уСУЮїЎб ЯФС¬б "»«сЎїјбСФЯґ ууСУХ". ж їЯ»«Ѕэє«убЎїСј
буФ«јбФїюСЯ¬«® »бјґФї ЯуґєбЎЩ суС «ЯЎ«уЎЩС »У«нЅСјЩ: УС¬ТУЯїї ї
јЎ«ЄСЯФуСЎЎ«ЯФї бЯЯ«µїбµї®.
ЙС¬ТУЯїґ - јСХбЎїєј, »«єу«ЅґЇЪї® «нЫС¬ФТ Я«уСУЮбФэ Ябј«б¬Фїубµ-їЇ.
мб»УїјСУ, »« ЯХСјС:
W1-->W1 (»Уґјбґ УС¬ТУЯїґ) їЅї W1-->W2 ...-->W1 (¬«ЯуСЎЎбґ УС¬ТУЯїґ).
ЕУґјбґ УС¬ТУЯїґ ЯуґєбЎб Я ЎС»«ЯУСсЯФуСЎЎ«® »«уФ«УЎ«® (уЅ«ЄСЎЎ«®)
б¬ФїубµїС®, б ¬«ЯуСЎЎбґ - Я «»«ЯУСс«убЎЎ«® (»УїюСј юїЯЅ« »«ЯУСсЎї¬«у у
ЯХСјС W1-->...-->W1 ј«ЄСФ нЩФэ »У«їєу«ЅэЎЩј). кЯ»«Ѕэє«убЎїС УС¬ТУЯїї
Ўб»УґјТЇ ЯуґєбЎ« Я УбєјСУбјї Убн«юСъ« »У«ЯФУбЎЯФуб буФ«јбФїюСЯ¬«® »бјґФї.
кЯ»«Ѕэє«убЎїС УС¬ТУЯїуЎЩХ б¬Фїубµї® «нЫС¬Ф«у, Я «сЎ«® ЯФ«У«ЎЩ, »«єу«ЅґСФ
їјСФэ «юСЎэ Ѕб¬«ЎїюЎЩС ї Сј¬їС »« Я«сСУЄбЎїЇ »У«ъУбјјЩ, Я сУТъ«® ЯФ«У«ЎЩ, у
УС¬ТУЯїуЎЩХ ЯХСјбХ («Я«нСЎЎ« у ¬«ЯуСЎЎ«® УС¬ТУЯїї) у«єУбЯФбСФ уСУ«ґФЎ«ЯФэ
»«ґуЅСЎїґ ФУТсЎ« їсСЎФїхїµїУТСјЩХ «Юїн«¬.
оЎ«ЄСЯФуСЎЎ«ЯФэ бЯЯ«µїбµї® єб¬ЅЇюбСФЯґ у Ф«ј, юФ« у ¬ЅбЯЯС буФ«јбФїюСЯ¬«®
»бјґФї ј«ъТФ нЩФэ «сЎ«уУСјСЎЎ« УбєјСЪСЎЩ ЎСЯ¬«Ѕэ¬« «сЎ«їјСЎЎЩХ «нЫС¬Ф«у,
їјСЇЪїХ у «нЪСј ЯЅТюбС УбєЅїюЎЩС єЎбюСЎїґ ї «ФЎ«ЯґЪїСЯґ ¬ УбєЎЩј
б¬ФїуЎ«ЯФґј «сЎ«ъ« ї Ф«ъ« ЄС їЅї «»ґФэ-Фб¬ї УбєЎЩХ «нЫС¬Ф«у. й »УїуСсСЎЎ«ј
»УїјСУС ЯТЪСЯФуТЇФ суб «сЎ«їјСЎЎЩХ «нЫС¬Фб: »СУСјСЎЎбґ З, ЯуґєбЎЎбґ
(бЯЯ«µїїУ«убЎЎбґ) Я б¬ФїуЎ«ЯФэЇ W1, ї »СУСјСЎЎбґ З, бЯЯ«µїїУ«убЎЎбґ Я
б¬ФїуЎ«ЯФэЇ «нЫС¬Фб W2. й Я««ФуСФЯФуїї Я »УїЎµї»«ј ЯФС¬б ЯїЯФСјб Т»pбуЅСЎїґ
буФ«јбФїюСЯ¬«® »бјґФэЇ уЯСъсб pбЯЯјбФpїубСФ у ¬бюСЯФуС б¬ФїуЎ«® »«ЯЅСсЎЇЇ
Я«єсбЎЎТЇ бЯЯ«µїбµїЇ (ЯбјТЇ "нЅїЄЎЇЇ" ¬ уСУЮїЎС ЯФС¬б буФ«јбФїюСЯ¬«®
»бјґФї). й«єЎї¬Ў«уСЎїС јЎ«ЄСЯФуСЎЎ«ЯФї бЯЯ«µїбµї® «нТЯЅ«уЅСЎ« Ф«Ѕэ¬«
їЯ»«Ѕэє«убЎїСј у »Уї¬ЅбсЎЩХ »У«ъУбјјбХ «сЎ«їјСЎЎЩХ »СУСјСЎЎЩХ Я УбєЅїюЎ«®
«нЅбЯФэЇ сС®ЯФуїґ («нЅбЯФэЇ уїсїј«ЯФї). аЯЅї ТЄ їЯ»«Ѕэє«убЎїС Фб¬їХ
»СУСјСЎЎЩХ ї ґуЅґСФЯґ ЎС«нХ«сїјЩј (у юСј уЯСъсб ЯФ«їФ ТЯ«јЎїФэЯґ), Ф« »Уї
їХ їЎФСУ»УСФбµїї ЯЅСсТСФ »«јЎїФэ « јЎ«ЄСЯФуСЎЎ«ЯФї бЯЯ«µїбµї®.