Ïðîãðàììèðîâàíèå, îðèåíòèðîâàííîå íà îáúåêòû
[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=<N,Ft,Wt>, á ¼ÑÕá¡¿º¼Ù ¿¼»«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¬¡Ñ¼, þÔ« ¼«ñÒ½ý <T,Ft,Wt> ¬á¬ »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
<Éáí«Ôá ß« áÔp¿íÒÔἿ «íÛѬÔá A þÑÓѺ ¿¼Ñ¡á B ¿ Å>;
WITH B DO
<Éáí«Ôá ß« áÔp¿íÒÔἿ ßó«®ßÔóá é «íÛѬÔá Ç
þÑÓѺ ¿¼Ñ¡á â,M,D>
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 »Ó¿
ÝÔ«¼ ¿¼ÑÑÔ ß½ÑñÒ¯Ú¿® ó¿ñ:
<ê¼´ »ÑÓѼѡ¡«® Ô¿»á B> :=
VAL (<ê¼´ Ô¿»á B>, <ÄíÛÑ¬Ô ¬½áßßá CARDINAL>).
é ¬áþÑßÔóÑ Ô¿»á 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½ <* ï«ñ¬á <* ÆÓá¡ß»«ÓÔ¡«Ñ_æÓÑñßÔó«.
Æá¬á´ ñѬ½áÓᵿ´ «»ÓÑñѽ´ÑÔ ÔÓ¿ 󫺼«ª¡ÙÑ ¿¡ÔÑÓ»ÓÑÔᵿ¿ «íÛѬÔá ¡á ÓạÙÕ
ÒÓ«ó¡´Õ «í«íÚÑ¡¿´ (páßÞ¿pÑ¡¿´ ßó«®ßÔó).
àÚÑ pẠ»«ñþÑp¬¡Ñ¼, þÔ« ¼ÑªñÒ ñóÒ¼´ Óáßß¼«ÔÓÑ¡¡Ù¼¿ ó¿ñἿ »«½¿¼«Óõ¡«®
¿¡ÔÑÓ»ÓÑÔᵿ¿ «íÛѬԫó (ºá»¿ß¿ ß óáÓ¿á¡ÔἿ ¿ ¡áß½Ññ«óá¡¿Ñ ßó«®ßÔó)
ßÒÚÑßÔóÒÑÔ »Ó¿¡µ¿»¿á½ý¡«Ñ Óẽ¿þ¿Ñ: ºá»¿ß¿ ß óáÓ¿á¡ÔἿ ÓÑ὿ºÒ¯Ô
»«½¿¼«Óõ¡Ò¯ ¿¡ÔÑÓ»ÓÑÔᵿ¯ ¡á á½ýÔÑÓ¡áÔ¿ó¡«® «ß¡«óÑ, á ¼ÑÕá¡¿º¼
¡áß½Ññ«óá¡¿¡¿´ - ¡á «ß¡«óÑ ÓáßÞ¿ÓÑ¡¿´ ßó«®ßÔó ¬½áßß«ó.
é »Óá¬Ô¿¬Ñ ¿ß»«½ýº«óá¡¿´ ¼ÑÔ«ñ«ó »Ó«úÓá¼¼¿Ó«óá¡¿´, «Ó¿Ñ¡Ô¿Ó«óá¡¡«ú« ¡á
«íÛѬÔÙ, Þ¿Ó«¬« Óá߻ӫßÔÓá¡Ñ¡ Ôᬠ¡áºÙóáѼٮ ¼ÑÔ«ñ «»ÓÑñѽѡ¿´ «íÛѬԫó
"¡á½«ªÑ¡¿Ñ¼" (c««ÔóÑÔßÔó¿Ñ¼). ØÔ«Ô ¼ÑÔ«ñ ¼«ªÑÔ íÙÔý ÓÑ὿º«óá¡ Óạټ¿
ß»«ß«íἿ, ¼Ù Ñú« Óáßß¼«ÔÓ¿¼ ¡á »Ó¿¼ÑÓáÕ, ¿ß»«½ýºÒ´ ¬«¡µÑ»µ¿¯ Ô¿»á ¬á¬
"ÔÓáõáÓÑÔá" (¼á߬¿), «»ÓÑñѽ´¯ÚÑú« ó¿ñ ¿¡ÔÑÓ»ÓÑÔᵿ¿ «íÛѬÔá "»«ñ ¼á߬«®".
è«¡ßÔÓÒ¿ÓÒ´ ßÓÑñßÔóἿ ´ºÙ¬á Óẽ¿þ¡ÙÑ "¼á߬¿", »Ó«úÓá¼¼¿ßÔ »«½ÒþáÑÔ
󫺼«ª¡«ßÔ¿ »«½¿¼«Óõ¡«® ¿¡ÔÑÓ»ÓÑÔᵿ¿ «íÛѬÔá.
ÅÓ¿¼ÑÓ1.
TYPE POINT = RECORD X,Y: INTEGER END;
Point = RECORD Y,X: INTEGER END;
VAR A: ARRAY[1..2] OF WORD;
P: POINTER TO POINT;
p: POINTER TO Point;
X,Y: INTEGER;
BEGIN X:=1; Y:=5;
P:=ADR(A); (*1*)
P^.X:=X; P^.Y:=Y; (*2*)
p:=ADDRESS(P); (*3*)
X:=p^.X; Y:=p^.Y (*4*)
ØÔ«Ô »Ó¿¼ÑÓ ÓÑ὿ºÒÑÔ "ÔÓá¡ßõ«Ó¼áµ¿¯" «íÛѬÔá-Ô«þ¬¿ ß ñѬáÓÔ«óÙ¼¿
¬««Óñ¿¡áÔáÔἿ (1,5) ó «íÛѬÔ-Ô«þ¬Ò ß ¬««Óñ¿¡áÔἿ (5,1). é »Ó«úÓá¼¼Ñ ºáñá¡
Ý½Ñ¼Ñ¡Ô ÕÓá¡Ñ¡¿´ Ç ÓẼÑÓ«¼ ó ñóá ß½«óá, "¼á߬á" POINT, "»Ó¿ó´ºá¡¡á´" ¬
Ò¬áºáÔѽ¯ É, ¿ "¼á߬á" Point, ßó´ºá¡¡á´ ß «úÓá¡¿þÑ¡¡Ù¼ Ò¬áºáÔѽѼ Ó.
Ä»ÑÓᵿ´ (1) ßó´ºá¡á ß "¡á½«ªÑ¡¿Ñ¼" ¼á߬¿ POINT ¡á Ý½Ñ¼Ñ¡Ô ÕÓá¡Ñ¡¿´ Ç ¿
ºá»¿ßý¯ "þÑÓѺ ÔÓáõáÓÑÔ" º¡áþÑ¡¿® ¬««Óñ¿¡áÔ Ô«þ¬¿ ó «í½áßÔý »á¼´Ô¿ Ç.
Ä»ÑÓᵿ´ (3) ßó´ºá¡á ß ¡á½«ªÑ¡¿Ñ¼ ¡á ÔÒ ªÑ «í½áßÔý »á¼´Ô¿ ¼á߬¿ (ÔÓáõáÓÑÔá)
Point ¿ þÔÑ¡¿Ñ¼ ¬««Óñ¿¡áÔ Ô«þ¬¿ þÑÓѺ ¡«óÙ® ÔÓáõáÓÑÔ. Æᬿ¼ «íÓẫ¼, «ñ¿¡ ¿
Ô«Ô ªÑ «íÛѬÔ, ÓẼÑÚÑ¡¡Ù® ó Ç, ¿¡ÔÑÓ»ÓÑÔ¿ÓÒÑÔß´ ó ÝÔ«¼ »Ó¿¼ÑÓÑ ñó«´¬«: ¬á¬
Ô«þ¬á ß ¬««Óñ¿¡áÔἿ (1,5) ¿ ß¿¼¼ÑÔÓ¿þ¡á´ Ñ® Ô«þ¬á ß ¬««Óñ¿¡áÔἿ (5,1).
çá¼ÑÔ¿¼, þÔ« ÓÑá½ý¡« ¡¿¬á¬«ú« »ÓÑ«íÓẫóá¡¿´ ¬««Óñ¿¡áÔ ¡Ñ »Ó«¿ßÕ«ñ¿Ô, - óßÑ
«»ÓÑñѽ´ÑÔßß´ ßÔÓÒ¬ÔÒÓ«® ÔÓáõáÓÑÔá - ¼á߬¿, þÑÓѺ ¬«Ô«ÓÒ¯¯ ¼Ù ß¼«ÔÓ¿¼ ¡á
«íÛѬÔ. (Éáßßß¼áÔÓ¿óá´ ÝÔ«Ô »Ó¿¼ÑÓ, «ÔóÑÔýÔÑ ¡á ó«»Ó«ß, »«þÑ¼Ò ñ½´ ºá»¿ß¿
«»ÑÓáÔ«Ó«ó (2) ¿ (4) ¡Ñ ¿ß»«½ýºÒÑÔß´ »Ó¿ß«Ññ¿¡Ñ¡¿Ñ?)
ū߬«½ý¬Ò ¼¡«ªÑßÔóÑ¡¡«ßÔý ¿¡ÔÑÓ»ÓÑÔᵿ® «íÛѬÔá «»ÓÑñѽ´ÑÔß´ ¼¡«ªÑßÔó«¼
¼áß«¬, ¬«Ô«ÓÙÑ ¼«úÒÔ ¡á¬½áñÙóáÔýß´ ¡á «ñ¡Ò ¿ ÔÒ ªÑ «í½áßÔý »á¼´Ô¿,
¿ß»«½ýº«óá¡¿Ñ ¼ÑÔ«ñá ¡á½«ªÑ¡¿´ ßó´ºá¡« ß ¬«¡ÔÓ«½Ñ¼ ÓẼÑÓ«ó Ôá¬¿Õ ¼áß«¬,
ß««ÔóÑÔßÔó¿´ ¿Õ ÓẼÑÓἠݽѼѡԫó ÕÓá¡Ñ¡¿´ ¿ Ô.ñ. "éÙÕ«ñ" ¼á߬¿ ºá »ÓÑñѽÙ
ݽѼѡÔá ÕÓá¡Ñ¡¿´ ¿¡ÔÑÓ»ÓÑÔ¿ÓÒѼ«ú« «íÛѬÔá þÓÑóáÔ ¡Ñ»ÓÑñ߬áºÒѼټ¿
«Þ¿í¬á¼¿ (Óáí«Ôá ß "þÒª«®" «í½áßÔý¯ »á¼´Ô¿). ìὫªÑ¡¿Ñ ¡Ñ߬«½ý¬¿Õ ¼áß«¬ ¡á
«ñ¿¡ ¿ Ô«Ô ªÑ «íÛÑ¬Ô ªÑ½áÔѽý¡« óÙ»«½¡´Ôý »« áñÓÑßÒ Ý½Ñ¼Ñ¡Ôá ÕÓá¡Ñ¡¿´
«íÛѬÔá íѺ ñ«»«½¡¿Ôѽý¡ÙÕ ß¼ÑÚÑ¡¿® "ó¡ÒÔÓý" ßÔÓÒ¬ÔÒÓÙ «íÛѬÔá. àß½¿
¡Ñ߬«½ý¬« ÓạÙÕ ¼áß«¬ þáßÔ¿þ¡« ß«ó¼ÑßÔ¡Ù (¿¼Ñ¯Ô þáßÔ¿ ß ¿ñÑ¡Ô¿þ¡Ù¼¿
áÔÓ¿íÒÔἿ, «ñ¿¡á¬«ó« ¿¡ÔÑÓ»ÓÑÔ¿ÓÒѼÙÑ þáßÔ¿), ªÑ½áÔѽý¡« «íÚ¿Ñ ¿ñÑ¡Ô¿þ¡ÙÑ
þáßÔ¿ Óáß»«½áúáÔý ó ¡áþá½Ñ ¼á߬¿ (óóÑÓÕÒ), á ¡Ñ ó ßÑÓÑñ¿¡Ñ ¿½¿ ó ¬«¡µÑ
(󡿺Ò). ØÔ¿ »Ó«ßÔÙÑ ÓѬ«¼Ñ¡ñᵿ¿ »«¼«úá¯Ô ¿ºíѪáÔý ¼¡«ú¿Õ «Þ¿í«¬,
ßó´ºá¡¡ÙÕ ß »«½¿¼«Óõ¡«® ¿¡ÔÑÓ»ÓÑÔᵿѮ «íÛѬÔá. (çá¼ÑÔ¿¼, þÔ« Ôá¬¿Ñ «Þ¿í¬¿
¿¼Ñ¯Ô ßó«®ßÔóá ߬ÓÙÔ«ú« "»Ó«´ó½Ñ¡¿´", «þÑ¡ý ÔÓÒñ¡« «í¡áÓÒª¿óá¯Ôß´ ¿
¿ñÑ¡Ô¿õ¿µ¿ÓÒ¯Ôß´).
é« ¼¡«ú¿Õ »Ó¿¬½áñ¡ÙÕ ºáñáþáÕ ¼ÑÔ«ñ ¡á½«ªÑ¡¿´ ßó´ºá¡ ß ¿ß»«½ýº«ó᡿Ѽ ¼áß«¬,
«»ÓÑñѽ´Ñ¼ÙÕ ßÔÓÒ¬ÔÒÓἿ Óẽ¿þ¡ÙÕ ¼áßß¿ó«ó. ìá»Ó¿¼ÑÓ, ºáñá¡ ¼áßß¿ó
¬áÓñ¿¡á½ý¡ÙÕ þ¿ßѽ ¿ ÔÓÑíÒÑÔß´ Ñú« "ÔÓá¡ßõ«Ó¼¿Ó«óáÔý" ó ¼áßß¿ó ß¿¼ó«½«ó.
ìὫªÑ¡¿Ñ ó ÝÔ«¼ ß½ÒþáÑ ´ó½´ÑÔß´ ¡á¿í«½ÑÑ "ÑßÔÑßÔóÑ¡¡Ù¼" ¼ÑÔ«ñ«¼ Ôᬫ®
ÔÓá¡ßõ«Ó¼áµ¿¿:
VAR C: ARRAY [1..100] OF CARDINAL;
P: POINTER TO ARRAY [1..200] OF CHAR;
CH: ARRAY [1..200] OF CHAR;
BEGIN
P := ADR(C); FOR I:=1 TO 200 DO CH[I]:=P^[I] END;...
Æá¬¿Ñ ºáñáþ¿ ßó´ºá¡Ù, ¬á¬ »Óá󿽫, ß »ÑÓѬ«ñ¿Ó«ó¬«®, »ÓÑ«íÓẫó᡿Ѽ,
ÔÓá¡ßõ«Ó¼áµ¿Ñ® ¿ Ô.». í«½ýÞ¿Õ ¼áßß¿ó«ó. ôß»ÑÕ ¿ß»«½ýº«óá¡¿´ ¼ÑÔ«ñá
¡á½«ªÑ¡¿´ ºñÑßý »«½¡«ßÔý¯ «»ÓÑñѽ´ÑÔß´ ÔѼ, ÒñáßÔß´ ½¿ »«ñ«íÓáÔý áñѬóáÔ¡Ò¯
ßÔÓÒ¬ÔÒÓÒ ¼á߬¿-ÔÓáõáÓÑÔá. àß½¿ ÒñáßÔß´, Ô« »«ñ«í¡ÙÑ »ÓÑ«íÓẫóá¡¿´ ¼«úÒÔ
íÙÔý óÙ»«½¡Ñ¡Ù «þÑ¡ý »Ó«ßÔ«, íѺ ¿ß»«½ýº«óá¡¿´ ߻ѵ¿á½ý¡ÙÕ óÙþ¿ß½Ñ¡¿®,
ßó´ºá¡¡ÙÕ ß Óẽ¿þ¡Ù¼¿ õ«Ó¼áÔἿ ÕÓá¡Ñ¡¿´ ñá¡¡ÙÕ, ¿ ¡Ñ¿º¼Ñ¡¡« ß«»ÒÔßÔóÒ¯ÚÑ®
¿¼ áñÓÑß¡«® áÓ¿õ¼ÑÔ¿¬¿. Å«»ÒÔ¡« ºá¼ÑÔ¿¼, þÔ« ¿ß»«½ýº«óá¡¿Ñ ¼ÑÔ«ñá ¡á½«ªÑ¡¿´
¼«ªÑÔ »«¼«þý "«í«®Ô¿" ¼¡«ú¿Ñ «úÓá¡¿þÑ¡¿´, ßó´ºá¡¡ÙÑ ß ´ºÙ¬«¼
»Ó«úÓá¼¼¿Ó«óá¡¿´. ìá»Ó¿¼ÑÓ, ¿ß»«½ýºÒ´ ¡á½«ªÑ¡¿Ñ »Ó¿ ¿¡ÔÑÓ»ÓÑÔᵿ¿ «íÛѬԫó,
ÓẼÑÚáѼÙÕ ó ¬½áßßÑ ñ¿¡á¼¿þÑ߬«® »á¼´Ô¿, ¼«ª¡« "«í«®Ô¿" «úÓá¡¿þÑ¡¿´,
ßó´ºá¡¡ÙÑ ß« ßÔáÔ¿þÑ߬¿¼¿ (¬«¡ßÔá¡Ô¡« - «»ÓÑñѽ´Ñ¼Ù¼¿) ÓẼÑÓἿ ¼áßß¿ó«ó.
é ºá¬½¯þÑ¡¿Ñ ÝÔ«® ú½áóÙ «ßÔá¡«ó¿¼ß´ ¡á ßἫ¿¡ÔÑÓ»ÓÑÔ¿ÓÒѼÙÕ «íÛѬÔáÕ.
髺¼«ª¡«ßÔ¿ ßἫ¿¡ÔÑÓ»ÓÑÔᵿ¿ ßó´ºá¡Ù ß ¿ß»«½ýº«ó᡿Ѽ «íÛѬԫó
»Ó«µÑñÒÓ¡«ú« Ô¿»á, «íÛѬԫó-ñÑ®ßÔó¿®. ØÔá Óạ«ó¿ñ¡«ßÔý «íÛѬԫó
ßÓáó¡¿Ôѽý¡« ¼á½« ¿ß»«½ýºÒÑÔß´ ó ÔÑÕ¡¿¬Ñ "»«óßÑñ¡Ñó¡«ú«" »Ó«úÓá¼¼¿Ó«óá¡¿´,
ó ¼ÑÔ«ñ«½«ú¿¿ ªÑ «íÛѬԡ«-«Ó¿Ñ¡Ô¿Ó«óá¡¡«ú« »«ñÕ«ñá ¿¼ «Ôó«ñ¿Ôß´ «ß«íá´
Ó«½ý, Ó«½ý á¬Ô¿ó¡ÙÕ «íÛѬԫó - á¬Ô«Ó«ó, «»ÓÑñѽ´¯Ú¿Õ ñ¿¡á¼¿¬Ò »áÓώѽý¡«
Óáºó¿óá¯Ú¿Õß´ »Ó«µÑßß«ó ¿¡ÔÑÓ»ÓÑÔᵿ¿.
ÅÓ«µÑñÒÓ¡Ù® Ô¿» (¿½¿ ß¿ú¡áÔÒÓá, ß¼. páºñ. II) «»ÓÑñѽ´ÑÔ ¼¡«ªÑßÔó«
󫺼«ª¡ÙÕ ñÑ®ßÔó¿®, ó¿ñ«ó á¬Ô¿ó¡«ßÔ¿. ìá»Ó¿¼ÑÓ,
TYPE äÑ®ßÔó¿Ñ = PROCEDURE (æÔá¡«¬);
«»ÓÑñѽ´ÑÔ ß¿ú¡áÔÒÓÒ ñ½´ ¬½áßßá æÔá¡«¬. ÅÒßÔý ¼¡«ªÑßÔó« ñÑ®ßÔó¿® ¡áñ
æÔᡬ«¼ «úÓá¡¿þ¿óáÑÔß´ ñóÒ¼´:
PROCEDURE 鬽¯þ¿Ôý (æ: æÔá¡«¬);
PROCEDURE éÙ¬½¯þ¿Ôý (æ: æÔá¡«¬); .
äѬ½áÓᵿ´ VAR D: äÑ®ßÔó¿Ñ «»ÓÑñѽ´ÑÔ «íÛÑ¬Ô ¬½áßßá äÑ®ßÔó¿Ñ. Æᬫ® «íÛѬÔ
¼«ªÑÔ ÕÓá¡¿Ôý »«ÔÑ¡µ¿á½ý¡« 󫺼«ª¡«Ñ ñÑ®ßÔó¿Ñ ¡áñ æÔᡬ«¼ (Ô.Ñ. "»«¼¡¿Ôý",
þÔ« ¡Òª¡« ßñѽáÔý) ¿ (ó »«ñÕ«ñ´ÚÑÑ óÓѼ´) á¬Ô¿ó¿º¿Ó«óáÔýß´
(ßἫ¿¡ÔÑÓ»ÓÑÔ¿Ó«óáÔýß´) »« «Ô¡«ÞÑ¡¿¯ ¬ ßÔᡬÒ:
VAR D: äÑ®ßÔó¿Ñ; C: æÔá¡«¬;
BEGIN...
D:=鬽¯þ¿Ôý;...
D(C);... D:= éÙ¬½¯þ¿Ôý;... D(C); .
Ä»ÑÓáÔ«ÓÙ D(C) ó ÝÔ«¼ õÓáú¼Ñ¡ÔÑ «»ÓÑñѽ´¯Ô ßἫ¿¡ÔÑÓ»ÓÑÔᵿ¯ «íÛѬÔá D ó
«Ô¡«ÞÑ¡¿¿ «íÛѬÔá æ, á «»ÑÓáÔ«ÓÙ »Ó¿ßóá¿óá¡¿´ - «»ÓÑñѽѡ¿Ñ «íÛѬÔá D
»«ÔÑ¡µ¿á½ý¡« 󫺼«ª¡Ù¼ ñÑ®ßÔó¿Ñ¼. ÄíÓạ« ú«ó«Ó´, «»ÑÓáÔ«ÓÙ »Ó¿ßóá¿óá¡¿´
ºñÑßý "óºó«ñ´Ô ¬ÒÓ«¬" D, á ¬«úñá D "óÙßÔÓѽ¿Ô" ¿ ¬á¬«® íÒñÑÔ ÝõõÑ¬Ô «Ô
ÝÔ«ú« "óÙßÔÓѽá" (󬽯þáÑÔ «¡ ßÔá¡«¬ æ ¿½¿ óÙ¬½¯þáÑÔ) «»ÓÑñѽ´ÑÔß´ ó «íÚѼ
ß½ÒþáÑ ½«ú¿¬«® »Ó«úÓá¼¼Ù. êß»«½ýº«óá¡¿Ñ ó »Ó«úÓá¼¼Ñ »ÑÓѼѡ¡ÙÕ ¬½áßßá
äÑ®ßÔó¿Ñ á¡á½«ú¿þ¡« ¡á½¿þ¿¯ ¼¡«ªÑßÔóá óºóÑñÑ¡¡ÙÕ ¬ÒÓ¬«ó, »Ó¿ ÝÔ«¼ «Ôñѽý¡ÙÑ
"óÙßÔÓѽÙ" »ÓÑóÓáÚá¯Ôß´ ó ÔÓÑ߬ áóÔ«¼áÔ¡ÙÕ «þÑÓÑñÑ® - ßἫ¿¡ÔÑÓ»pÑÔᵿ®.
ôþ¿ÔÙóá´, þÔ« ½¯í«Ñ ñÑ®ßÔó¿Ñ, ßó´ºá¡¡«Ñ ß Ôᬫ® ßἫ¿¡ÔÑÓ»ÓÑÔᵿѮ, ¼«ªÑÔ
»ÑÓÑ«»ÓÑñѽ¿Ôý «íÛѬÔÙ-ñÑ®ßÔó¿´, ½«ú¿¬á óÙ»«½¡Ñ¡¿´ »«ñ«í¡ÙÕ »Ó«úÓá¼¼
ßÔá¡«ó¿Ôß´ óÑßý¼á ºá»ÒÔá¡¡«®. Äß¡«ó¡«Ñ »Ó¿¼Ñ¡Ñ¡¿Ñ ÝÔ«ú« ¼ÑÕá¡¿º¼á -
¼«ñѽ¿Ó«óá¡¿Ñ ß½«ª¡ÙÕ ß¿ßÔѼ.
V. æÄçäÇìêà / ôìêùÆÄåàìêà ÄüÜàèÆÄé
"éÓѼ´ ª¿º¡¿" «íÛѬÔá. - è½áßßÙ »á¼´Ô¿. - ô»Óáó½Ñ¡¿Ñ ñ¿¡á¼¿þÑ߬«® »á¼´Ôý¯.
- öÓáú¼Ñ¡Ôᵿ´. - ÅÓ«í½Ñ¼Ù "ó¿ß´þ¿Õ" ßßÙ½«¬ ¿ ¼Òß«Óá. - ÇóÔ«¼áÔ¿þÑ߬á´
»á¼´Ôý. - 﫬á½ý¡á´ ßÓÑñá. - ǬԿóᵿ¿ «íÛѬÔá.
ÄíÛѬÔÙ, ßÒÚÑßÔóÒ¯Ú¿Ñ ó »Ó«úÓá¼¼Ñ, ñѽ´Ôß´ ¡á ñóÑ ¬áÔÑú«Ó¿¿: ßÔáÔ¿þÑ߬¿Ñ ¿
ñ¿¡á¼¿þÑ߬¿Ñ. ØÔ¿ ¬áÔÑú«Ó¿¿ «»ÓÑñѽ´¯Ôß´ »«-Óạ«¼Ò: ¡á «ß¡«óÑ ¿º¼Ñ¡Ñ¡¿´
ß«ßÔ«´¡¿´ «íÛÑ¬Ô«ó ¼«ñѽ¿ ¿ ¡á «ß¡«óÑ "óÓѼѡ¿ ª¿º¡¿" «íÛѬԫó. ÅÑÓó«Ñ
«»ÓÑñѽѡ¿Ñ »ÓÑñ»«½áúáÑÔ, þÔ« ½¯í«® «íÛѬÔ, ¿º¼Ñ¡´¯Ú¿® ßó«Ñ ß«ßÔ«´¡¿Ñ ó
»Ó«µÑßßÑ Óáí«ÔÙ »Ó«úÓá¼¼Ù, ´ó½´ÑÔß´ ñ¿¡á¼¿þÑ߬¿¼. é ÝÔ«¼ «Ô¡«ÞÑ¡¿¿, ßÔÓ«ú«
ú«ó«Ó´, ßÔáÔ¿þÑ߬¿¼¿ «íÛѬÔἿ ´ó½´¯Ôß´ Ô«½ý¬« ¬«¡ßÔá¡ÔÙ, óßÑ «íÛѬÔÙ-
»ÑÓѼѡ¡ÙÑ ¼«úÒÔ ßþ¿ÔáÔýß´ ñ¿¡á¼¿þÑ߬¿¼¿. éÔ«Ó«Ñ «»ÓÑñѽѡ¿Ñ »ÓÑñ»«½áúáÑÔ
󫺼«ª¡«ßÔý óÓѼѡ¡«ú« ßÒÚÑßÔó«óá¡¿´ «íÛѬԫó, 󫺼«ª¡«ßÔ¿ ß«ºñá¡¿´ ¿
Ò¡¿þÔ«ªÑ¡¿´ «íÛѬԫó. é ÝÔ«¼ ß¼Ù᫥ «íÛѬÔÙ, óÓѼ´ ßÒÚÑßÔó«óá¡¿´ ¬«Ô«ÓÙÕ
Óáó¡« óÓѼѡ¿ óÙ»«½¡Ñ¡¿´ »Ó«úÓá¼¼Ù, Óáߵѡ¿óá¯Ôß´ ¬á¬ »«ßÔ«´¡¡«
ßÒÚÑßÔóÒ¯Ú¿Ñ (ßÔáÔ¿þÑ߬¿Ñ), «íÛѬÔÙ ªÑ, óÓѼ´ ßÒÚÑßÔó«óá¡¿´ (ª¿º¡¿) ¬«Ô«ÓÙÕ
¼Ñ¡ýÞÑ óÓѼѡ¿ óÙ»«½¡Ñ¡¿´ »Ó«úÓá¼¼Ù - ¬á¬ ñ¿¡á¼¿þÑ߬¿Ñ. éÔ«Ó«Ñ «»ÓÑñѽѡ¿Ñ
¬áßáÑÔß´ «íÛѬԫó, ¬«Ô«ÓÙÑ ¿ñÑ¡Ô¿õ¿µ¿ÓÒ¯Ôß´ Ô«½ý¬« þÑÓѺ Ò¬áºáÔѽ¿.
ÄíÛѬÔÙ, ¿ñÑ¡Ô¿õ¿µ¿Ó«óá¡¡ÙÑ ¿¼Ñ¡Ñ¼, ó ÝÔ«¼ «Ô¡«ÞÑ¡¿¿ óßÑúñá ñ«½ª¡Ù
Óáߵѡ¿óáÔýß´ ¬á¬ ßÔáÔ¿þÑ߬¿Ñ, »«ß¬«½ý¬Ò ¿Õ "ß«ºñá¡¿Ñ" »«ñú«Ôáó½¿óáÑÔß´
ÔÓá¡ß½´Ô«Ó«¼ ¿ áßß«µ¿áµ¿´ ¼ÑªñÒ ¿¼Ñ¡Ñ¼ ¿ ݽѼѡԫ¼ ÕÓá¡Ñ¡¿´ «íÛѬÔá
ßÒÚÑßÔóÒÑÔ ñ« «¬«¡þá¡¿´ ópѼѡ¿ páí«ÔÙ »Ó«úÓá¼¼Ù.
櫺ñá¡¿Ñ «íÛѬÔá ß½ÑñÒÑÔ ¿¡ÔÑÓ»ÓÑÔ¿Ó«óáÔý ¬á¬ óÙñѽѡ¿Ñ »á¼´Ô¿ »«ñ Ñú«
Ý½Ñ¼Ñ¡Ô ÕÓá¡Ñ¡¿´. Æá¬á´ ¿¡ÔÑÓ»ÓÑÔᵿ´ »«ñÓáºÒ¼ÑóáÑÔ Óáºñѽѡ¿Ñ óßÑú«
Óáí«þÑú« »Ó«ßÔÓá¡ßÔóá »á¼´Ô¿ Øéî ¡á ñóÑ ¬áÔÑú«Ó¿¿, ñóá ¬½áßßá - ßÔáÔ¿þÑ߬ү
»á¼´Ôý ¿ ñ¿¡á¼¿þÑ߬ү. ÅÑÓóÙ® ¬½áßß »á¼´Ô¿, ¬á¬ ß½ÑñÒÑÔ ¿º ÝÔ«ú« ¬«¡ÔѬßÔá,
»«½¡«ßÔý¯ ¡áÕ«ñ¿Ôß´ »«ñ Ò»páó½Ñ¡¿Ñ¼ Ôpá¡ß½´Ô«pá ¿ páß»pÑñѽ´ÑÔß´ »«ñ
ßÔáÔ¿þÑ߬¿Ñ «íÛѬÔÙ, ßÒÚÑßÔóÒ¯Ú¿Ñ ó ß¿ßÔÑ¼Ñ »«ßÔ«´¡¡«. ìá»Ó¿¼ÑÓ, ñѬ½áÓᵿ´
VAR A: POINTER TO CARDINAL;
B: CARDINAL;
ß««íÚáÑÔ ÔÓá¡ß½´Ô«ÓÒ « ¡Ñ«íÕ«ñ¿¼«ßÔ¿ "ºáÓѺÑÓó¿Ó«óáÔý" ó ¬½áßßÑ ßÔáÔ¿þÑ߬«®
»á¼´Ô¿ ñóá ß½«óá »«ñ Ý½Ñ¼Ñ¡Ô ÕÓá¡Ñ¡¿´ «íÛѬÔá ß ¿¼Ñ¡Ñ¼ Ç ¿ «ñ¡« ß½«ó« »«ñ
Ý½Ñ¼Ñ¡Ô ÕÓá¡Ñ¡¿´ «íÛѬÔá ß ¿¼Ñ¡Ñ¼ é.
信ἿþÑ߬ᴠ»á¼´Ôý »ÓÑñ¡áº¡áþáÑÔß´ ñ½´ ß«ºñá¡¿´ óÓѼѡ¡« ßÒÚÑßÔóÒ¯Ú¿Õ
«íÛѬԫó. ØÔ«Ô ¬½áßß »á¼´Ô¿ ¿¼ÑÑÔ ñóÑ Óạ«ó¿ñ¡«ßÔ¿: ß«íßÔóÑ¡¡«
ñ¿¡á¼¿þÑ߬ү ¿ áóÔ«¼áÔ¿þÑ߬ү. æ«íßÔóÑ¡¡« ñ¿¡á¼¿þÑ߬ᴠ»á¼´Ôý (ó «Ô½¿þ¿Ñ «Ô
ßÔáÔ¿þÑ߬«®) »«½¡«ßÔý¯ ¡áÕ«ñ¿Ôß´ ó Óáß»«Ó´ªÑ¡¿¿ »Ó«úÓá¼¼¿ßÔá: »« Ñú«
ñ¿ÓѬԿóá¼ »Ó«¿ßÕ«ñ¿Ô óÙñѽѡ¿Ñ ݽѼѡԫó ÕÓá¡Ñ¡¿´ (ß«ºñá¡¿Ñ «íÛѬԫó) ¿
ó«ºóÓáÔ Óá¡ÑÑ óÙñѽѡ¡ÙÕ Ý½Ñ¼Ñ¡Ô«ó ó "º«¡Ò" ßó«í«ñ¡«® »á¼´Ô¿ (»Ò½
"ßó«í«ñ¡ÙÕ" ݽѼѡԫó), þÔ« ó ÝÔ«¼ ß¼Ù᫥ Óáó¡«ß¿½ý¡« "Ò¡¿þÔ«ªÑ¡¿¯"
«íÛѬÔá.
ÇóÔ«¼áÔ¿þÑ߬ᴠ»á¼´Ôý - «ß«íá´ Óạ«ó¿ñ¡«ßÔý ñ¿¡á¼¿þÑ߬«®, ¬«Ô«Óá´ ÔᬪÑ
Ò»Óáó½´ÑÔß´ ñ¿ÓѬԿóἿ »Ó«úÓá¼¼¿ßÔá, ßó´ºá¡¡Ù¼¿ ß ¿¡ÔÑÓ»ÓÑÔᵿѮ á¬Ô¿ó¡ÙÕ
«íÛѬԫó (»ÑÓѼѡ¡ÙÕ »p«µÑñÒp¡ÙÕ Ô¿»«ó). é ÝÔ«¼ ß¼Ù᫥ ñóÑ Óạ«ó¿ñ¡«ßÔ¿
ñ¿¡á¼¿þÑ߬«® »á¼´Ô¿ ñѽ´Ô ÝÔ«Ô ¬½áßß »á¼´Ô¿ ¡á ñóá »«ñ¬½áßßá: »á¼´Ôý ñ½´
¿¡ÔÑÓ»ÓÑÔᵿ¿ »áßß¿ó¡ÙÕ «íÛѬԫó (ß«íßÔóÑ¡¡« ñ¿¡á¼¿þÑ߬á´) ¿ »á¼´Ôý ñ½´
¿¡ÔÑÓ»ÓÑÔᵿ¿ á¬Ô¿ó¡ÙÕ «íÛѬԫó (áóÔ«¼áÔ¿þÑ߬á´). ìÑß¼«ÔÓ´ ¡á «íÚ¡«ßÔý
¬½áßßá (ñ¿¡á¼¿þÑ߬ᴠ»á¼´Ôý), Óáß»ÓÑñѽѡ¿Ñ »á¼´Ô¿ ó ÝÔ¿Õ »«ñ¬½áßßáÕ
«ß¡«óá¡« ¡á ÓạÙÕ »Ó¿¡µ¿»áÕ ¿ ÓÑ὿ºÒÑÔß´ ß«óÑÓÞÑ¡¡« Óạټ¿ á½ú«Ó¿Ô¼á¼¿.
ô»Óáó½Ñ¡¿Ñ ñ¿¡á¼¿þÑ߬«® »á¼´Ôý¯ ñ½´ »áßßß¿ó¡ÙÕ «íÛѬԫó (ó ñá½ý¡Ñ®ÞѼ
»Ó«ßÔ« ñ¿¡á¼¿þÑ߬«® »á¼´Ôý¯) ÓÑ὿ºÒÑÔß´ ¡á «ß¡«óÑ ñóÒÕ «ß¡«ó¡ÙÕ »Ó«µÑñÒÓ
(«íÙþ¡« ¿¼»«ÓÔ¿ÓÒѼÙÕ ¿º ß¿ßÔѼ¡«ú« ¼«ñÒ½´):
PROCEDURE ALLOCATE (VAR A: ADDRESS; N: CARDINAL);
PROCEDURE DEALLOCATE (VAR A: ADDRESS; N: CARDINAL); .
çñÑßý Ç - ßó«í«ñ¡Ù® Ò¬áºáÔѽý, ¬«Ô«ÓÙ® Ò¬áªÑÔ ¡á óÙñѽѡ¡Ò¯ «í½áßÔý »á¼´Ô¿
(Ý½Ñ¼Ñ¡Ô ÕÓá¡Ñ¡¿´ ÓẼÑÓ«¼ N íá®Ô) »Ó¿ óÙº«óÑ ALLOCATE ¿ »«½Òþ¿Ô º¡áþÑ¡¿Ñ
NIL (Ô.Ñ. ¡¿¬Òñá ¡Ñ íÒñÑÔ Ò¬áºÙóáÔý) »Ó¿ «ßó«í«ªñÑ¡¿¿ ÝÔ«® «í½áßÔ¿ "¿º-»«ñ"
Ç »ÒÔѼ óÙº«óá DEALLOCATE.
êß»«½ýº«óá¡¿Ñ «úÓá¡¿þÑ¡¡ÙÕ Ò¬áºáÔѽѮ ñѽáÑÔ ó« ¼¡«ú¿Õ «Ô¡«ÞÑ¡¿´Õ
µÑ½Ñß««íÓạټ ¿ß»«½ýº«óá¡¿Ñ ß»Ñµ¿á½ý¡ÙÕ óÙº«ó«ó: NEW(P) ¿ DISPOSE(P), úñÑ
VAR P: POINTER TO <ÄíÛѬÔ>. (NEW ¿ DISPOSE - »ßÑóñ«»Ó«µÑñÒÓÙ, ¿Õ óÙº«óÙ
ÔÓá¡ß½¿ÓÒ¯Ôß´ ó óÙº«óÙ ALLOCATE ¿ DEALLOCATE ß««ÔóÑÔßÔóÑ¡¡«). êß»«½ýº«óá¡¿Ñ
NEW ¿ DISPOSE »«ºó«½´ÑÔ ¿ºíѪáÔý ¼¡«ú¿Õ ßѼá¡Ô¿þÑ߬¿Õ «Þ¿í«¬, ßó´ºá¡¡ÙÕ ß
Óẽ¿þ¡Ù¼¿ º¡áþÑ¡¿´¼¿ N ó »«ß½Ññ«óáÔѽý¡«ßÔ¿ óÙº«ó«ó ALLOCATE...DEALLOCATE,
«»ÓÑñѽ´¯ÚÑ® ß«ºñá¡¿Ñ/Ò¡¿þÔ«ªÑ¡¿Ñ «ñ¡«ú« ¿ Ô«ú« ªÑ «íÛѬÔá.
é µÑ½«¼ »«ß½Ññ«óáÔѽý¡«ßÔý óÙº«ó«ó NEW...DISPOSE (¿½¿ ß««ÔóÑÔßÔóÑ¡¡«
ALLOCATE...DEALLOCATE), ó «íÚѼ ß½ÒþáÑ »«½¡«ßÔý¯ «»ÓÑñѽ´Ñ¼á´ ½«ú¿¬«®
»Ó«úÓá¼¼¿ßÔá, »«Ó«ªñáÑÔ Ó´ñ »Ó«í½Ñ¼, ßó´ºá¡¡ÙÕ ß «Óúá¡¿ºáµ¿Ñ® ¿
Óáß»ÓÑñѽѡ¿Ñ¼ ßó«í«ñ¡«ú« »Ó«ßÔÓá¡ßÔóá ñ¿¡á¼¿þÑ߬«® »á¼´Ô¿. Äñ¡«® ¿º ÔᬿÕ
»Ó«í½Ñ¼ ´ó½´ÑÔß´ »Ó«í½Ñ¼á õÓáú¼Ñ¡Ôᵿ¿. ØõõÑ¬Ô õÓáú¼Ñ¡Ôᵿ¿ ºá¬½¯þáÑÔß´ ó
Ô«¼, þÔ« Óáí«þá´ «í½áßÔý ñ¿¡á¼¿þÑ߬«® »á¼´Ô¿ "ñÓ«í¿Ôß´" ¡á þáßÔ¿ -
õÓáú¼Ñ¡ÔÙ Óẽ¿þ¡«® ñ½¿¡Ù. èᬿÑ-Ô« ¿º ¡¿Õ "ºá¡´ÔÙ" - ¿ß»«½ýºÒ¯Ôß´
»Ó«úÓá¼¼¿ßÔ«¼ »«ñ ݽѼѡÔÙ ÕÓá¡Ñ¡¿´ Ñú« «íÛѬԫó, ¬á¬¿Ñ-Ô« "ßó«í«ñ¡Ù",
»Ó¿þѼ ÕáÓá¬ÔÑÓ þÑÓÑñ«óá¡¿´ ßó«í«ñ¡ÙÕ ¿ ºá¡´ÔÙÕ õÓáú¼Ñ¡Ô«ó ó «íÚѼ ß½ÒþáÑ
¼«ªÑÔ íÙÔý ß«óÑÓÞÑ¡¡« »Ó«¿ºó«½ý¡Ù¼. ï¯í«® ºá»Ó«ß »Ó«úÓá¼¼¿ßÔá ¡á ß«ºñá¡¿Ñ
¡«ó«ú« «íÛѬÔá »Ó¿ó«ñ¿Ô ¬ Ô«¼Ò, þÔ« ß¿ßÔѼá Ò»Óáó½Ñ¡¿´ ñ¿¡á¼¿þÑ߬«® »á¼´Ôý¯
"»«ñí¿ÓáÑÔ" Ñ¼Ò õÓáú¼Ñ¡Ô, »«ñÕ«ñ´Ú¿® »« ÓẼÑÓá¼. ÅÓáó¿½á Ôᬫú« »«ñí«Óá
¼«úÒÔ íÙÔý Óẽ¿þ¡Ù, ¡« «íÚá´ ºá¬«¡«¼ÑÓ¡«ßÔý «ñ¡á: Ôᬫ® õÓáú¼Ñ¡Ô ñ«½ªÑ¡
¿¼ÑÔý ÓẼÑÓ, ¡Ñ ¼Ñ¡ýÞ¿®, þѼ ºá»ÓáÞ¿óáѼٮ »Ó«úÓá¼¼¿ßÔ«¼. àß½¿ »«ñÕ«ñ´Ú¿®
õÓáú¼Ñ¡Ô ¿¼ÑÑÔ í«½ýÞ¿® ÓẼÑÓ, þѼ ÔÓÑíÒÑÔß´, ó »Ó¿¬½áñ¡Ò¯ »Ó«úÓá¼¼Ò íÒñÑÔ
«Ôñá¡á Ñú« þáßÔý, ¬«Ô«pá´ ÔÑ»Ñpý íÒñÑÔ páßß¼áÔp¿óáÔýß´ ß¿ßÔѼ«® ¬á¬ ºá¡´ÔÙ®
õpáú¼Ñ¡Ô, á «ßÔáÔ«¬ «ßÔá¡ÑÔß´ ó ßó«í«ñ¡«® º«¡Ñ ó ¬áþÑßÔóÑ ßó«í«ñ¡«ú«
õpáú¼Ñ¡Ôá. ÅÓ¿ ÝÔ«¼ »Ó«í½Ñ¼á õÓáú¼Ñ¡Ôᵿ¿ ºá¬½¯þáÑÔß´ ó Ô«¼, þÔ« ÝõõѬÔ
"ñÓ«í½Ñ¡¿´" ¼«ªÑÔ »Ó¿óÑßÔ¿ ¬ Ô«¼Ò, þÔ« ó ßó«í«ñ¡«® º«¡Ñ íÒñÑÔ ¡áÕ«ñ¿Ôýß´
¼¡«ªÑßÔó« "¼á½Ñ¡ý¬¿Õ" ÓáºÓ«º¡Ñ¡¡ÙÕ ßó«í«ñ¡ÙÕ õÓáú¼Ñ¡Ô«ó, ó ß«ó«¬Ò»¡«ßÔ¿
ß«ßÔáó½´¯Ú¿Õ ñ«ßÔáÔ«þ¡Ù® «íÛѼ. ÆѼ ¡Ñ ¼Ñ¡ÑÑ, ¡Ñß¼«ÔÓ´ ¡á Ôᬫ® «íÛѼ,
ºá»Ó«ß »Ó«úÓá¼¼¿ßÔá ¡á ¡«óÙ® Ý½Ñ¼Ñ¡Ô »á¼´Ô¿ ¼«ªÑÔ »«½Òþ¿Ôý «Ô¬áº »« »Ó¿þ¿¡Ñ
«ÔßÒÔßÔó¿´ µÑ½«ú« »«ñÕ«ñ´ÚÑú« ݽѼѡÔá. ì¿ªÑ »Ó¿óÑñÑ¡ õÓáú¼Ñ¡Ô »Ó«úÓá¼¼Ù ¿
ßÕѼá Óáß»ÓÑñѽѡ¿´ ñ¿¡á¼¿þÑ߬«® »á¼´Ô¿, ¿½½¯ßÔÓ¿ÓÒ¯Ú¿Ñ ÝõõѬÔ
õÓáú¼Ñ¡Ôᵿ¿. ÅÓ¿ ÝÔ«¼ ñ½´ »Ó«ßÔ«ÔÙ »ÓÑñ»«½áúáÑÔß´, þÔ« «íÚ¿® «íÛѼ
ñ¿¡á¼¿þÑ߬«® »á¼´Ô¿ ß«ßÔáó½´ÑÔ 20 íá®Ô.
TYPE ÆÓÑÒú«½ý¡¿¬ = POINTER TO ö¿úÒÓá_1
ö¿úÒÓá_1 = RECORD
æÔ«Ó«¡á_1, æÔ«Ó«¡á_2, æÔ«Ó«¡á_3:CARDINAL
END;
ùÑÔÙÓÑÕÒú«½ý¡¿¬ = POINTER TO ö¿úÒÓá_2;
ö¿úÒÓá_2 = RECORD
æÔ«Ó«¡á_1, æÔ«Ó«¡á_2, æÔ«Ó«¡á_3, æÔ«Ó«¡á_4:
CARDINAL
àND
VAR T1, T2: ÆÓÑÒú«½ý¡¿¬; î1, î2: ùÑÔÙÓÑÕÒú«½ý¡¿¬;
BEGIN NEW(T1);... NEW(M1);... NEW(T2);...
DISPOSE(T1);... DISPOSE(T2); NEW(M2);...
+-------------------+ -+
| WORD | |
+-------------------+ |
| | > æó«í«ñ¡Ù® õÓáú¼Ñ¡Ô, Óá¡ÑÑ
+-------------------+ | ¿ß»«½ýº«óá¡¡Ù® »«ñ
| | | «íÛÑ¬Ô Æ1^
+-------------------+ -+-+
| | |
+-------------------+ |
| | |
+-------------------+ > öÓáú¼Ñ¡Ô, ºá¡´ÔÙ®
| | | »«ñ «íÛÑ¬Ô î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¿óáÑÔ ó ¬áþÑßÔóÑ á¬Ô¿ó¡«® »«ß½Ññ¡¯¯
ß«ºñá¡¡Ò¯ áßß«µ¿áµ¿¯ (ßá¼Ò¯ "í½¿ª¡¯¯" ¬ óÑÓÞ¿¡Ñ ßÔѬá áóÔ«¼áÔ¿þÑ߬«®
»á¼´Ô¿). 髺¡¿¬¡«óÑ¡¿Ñ ¼¡«ªÑßÔóÑ¡¡«ßÔ¿ áßß«µ¿áµ¿® «íÒß½«ó½Ñ¡« Ô«½ý¬«
¿ß»«½ýº«ó᡿Ѽ ó »Ó¿¬½áñ¡ÙÕ »Ó«úÓá¼¼áÕ «ñ¡«¿¼Ñ¡¡ÙÕ »ÑÓѼѡ¡ÙÕ ß Óẽ¿þ¡«®
«í½áßÔý¯ ñÑ®ßÔó¿´ («í½áßÔý¯ ó¿ñ¿¼«ßÔ¿). àß½¿ Òª ¿ß»«½ýº«óá¡¿Ñ ÔᬿÕ
»ÑÓѼѡ¡ÙÕ ¿ ´ó½´ÑÔß´ ¡Ñ«íÕ«ñ¿¼Ù¼ (ó þѼ óßÑúñá ßÔ«¿Ô Òß«¼¡¿Ôýß´), Ô« »Ó¿
¿Õ ¿¡ÔÑÓ»ÓÑÔᵿ¿ ß½ÑñÒÑÔ »«¼¡¿Ôý « ¼¡«ªÑßÔóÑ¡¡«ßÔ¿ áßß«µ¿áµ¿®.