Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
05-06 Сістэма тыпаў.doc
Скачиваний:
18
Добавлен:
09.11.2019
Размер:
746.5 Кб
Скачать

Простыя даныя мовы Pascal і работа з імі Тыпы звестак

У мове Pascal даныя характарызуюцца сваім тыпам, г. зн. маюць ней­кія акрэсленыя характарыстыкі. Пад тыпам у дадзеным выпадку ра­зу­ме­ец­ца мноства значэнняў, якія могуць прымаць даныя праграмы, і як вы­нік мноства аперацый, дапушчальных над гэтымі данымі.

Pascal з’яўляецца тыпізаванай мовай, г. зн. тып да­ных вы­зна­ча­ец­ца пры іх апісанні і не можа быць зменены. Даныя могуць удзе­ль­ні­чаць толькі ў аперацыях, дапушчальных іх тыпам. Гэта дазваляе ствараць высоканадзейныя праграмы, якія кампілятарам аўтаматычна пра­вя­ра­юц­ца на карэктнасць.

Базавымі ў сістэме тыпаў з’яўляюцца простыя (скалярныя) тыпы. Стан­дар­т­ныя скалярныя тыпы дзеляцца на чатыры групы:

1) цэлыя тыпы (Shortint, Integer, Longint, Byte, Word);

2) сапраўдныя тыпы (Real, Single, Double, Extended, Comp);

3) літарны тып (Char);

4) булеўскі тып (Boolean).

Састаўныя, ці структураваныя, тыпы па пэўных правілах будуюцца з простых. Абмежаваныя тыпы фарміруюцца з парадкавых шляхам зву­жэн­ня іх вобласці дапушчальных значэнняў. Любы скалярны тып ха­рак­та­ры­зу­ец­ца мноствам яго розных значэнняў са сваім лінейным парадкам.

Сістэма тыпаў мовы Pascal наступная.

Першая група:

Другая група:

string

Трэцяя група:

Чацвёртая група:

Канстанты і пераменныя

Любая праграма мае сэнс, калі яна апрацоўвае якія-небудзь даныя. Як і ін­шыя мовы праграміравання, Pascal тлумачыць даныя як канстан­ты і пе­ра­мен­ныя, якія вызначаюцца ідэнтыфікатарамі (імёнамі). Да іх можна звяр­тац­ца па імёнах, каб, напрыклад, атрымаць бягучае зна­чэнне.

Канстантамі называюць элементы даных, значэнні якіх ус­та­ноў­ле­ны ў апісальнай частцы праграмы ў секцыі CONST.

У мове існуе шэраг канстант, якія можна выкарыстоўваць без па­пя­рэд­ня­га вызначэння. Гэта, напрыклад, Pi, True, False, NIL, Maxint (яны апісаны дзесьці ў другім месцы, у службовых праграмах).

Фармат вызначэння канстант:

CONST

ідэнтыфікатар_1 = значэнне_канстанты_1;...

ідэнтыфікатар_m = значэнне_канстанты_m;

Прыклад вызначэння канстант:

CONST

Max = 1000;

Vhod = 'сегмент 5';

Min = -Max;

Пераменныя атрымліваюць свае значэнні ў працэсе выканання пра­гра­мы. Кожная пераменная і канстанта належаць да вызначанага (акрэсленага) тыпу даных. Тып канстанты аўтаматычна распазнаецца кам­пі­ля­та­рам па яе напісанні без папярэдняга апісання. Тып пераменнай па­ві­нен быць апісаны. Пераменныя апісваюцца ў секцыі VAR.

Фармат вызначэння пераменных:

VAR

Ідэнтыфікатар :тып;

або

VAR

ід1, ід2, ...,ідm : тып;

Прыклад вызначэння пераменных:

VAR

Sum1, Sum2 : Real;

Апісанне пераменных:

Вызначэнне пераменных:

Кожная пераменная, апісаная ў блоку, павінна ўпамінацца ў апісанні не больш 1 разу.

Абсалютныя пераменныя

Папярэднія пераменныя атрымлівалі ў памяці тое месца, якое ім да­ваў кампілятар. Але ёсць іншая магчымасць. Пераменныя можна апісаць так, што яны будуць размяшчацца па пэўным адрасе ў памяці, і тады яны на­зы­ва­юц­ца абсалютнымі.

Аб’яўленне абсалютнай пераменнай:

Дырэктыва абсалютнай пераменнай:

Першая форма з дырэктывай ABSOLUTE утрымлівае адрас пе­ра­мен­най, зададзены як сегмент і зрушэнне. Абедзве канстанты не павінны вы­ходзіць за межы дыяпазону ад $0000 да $FFFF (ад 0 да 65 535).

Другая форма выкарыстоўваецца для аб’яўлення пераменнай, якая змяш­ча­ец­ца «паверх» другой пераменнай, г. зн. па тым жа адрасе, што і першая пераменная.

VAR

A : Byte;

B : Char ABSOLUTE A;

Імя пераменнай з’яўляецца «абалонкай». Апошнюю можна запоўніць роз­ны­мі значэннямі, якія дапускае дадзены тып.

Акрамя канстант і пераменных існуюць так званыя тыпізаваныя кан­с­тан­ты – гэта пераменныя з пачатковым значэннем, аднак яны выз­на­ча­юц­ца ў секцыі CONST.

Фармат вызначэння тыпізаванай канстанты:

CONST

Ідэнтыфікатар : тып = значэнне;

Прыклад вызначэння тыпізаванай канстанты:

CONST

Max : Word = 10000;

У прыкладным аспекце тыпізаваная канстанта – гэта пераменная з за­гадзя ініцыялізаваным значэннем. Над ёй у праграме могуць вы­кон­вац­ца тыя ж дзеянні, што і над пераменнай.

Апісанне канстанты:

Вызначэнне тыпізаванай канстанты:

Вызначэнне канстанты: