Учебник турбо паскал

Глава 3. Езикови Elements

- 3.1. азбука
- 3.2. идентификатори
- 3.3. константи
- 3.4. изражения
- 3.5. операции
- 3.6. структурна програма

Turbo Pascal азбука включва букви, цифри, шестнадесетичен вид, специални знаци, интервали и запазени думи.

Писма - буквите от азбуката от А до Я, от А до Я, и характера долна черта _ (ASCII код 95). В Turbo Pascal не се прави разлика между главни и малки букви от азбуката, толкова дълго, тъй като те не са включени в символни низове и експресии.

Цифрите - арабски цифри от 0 до 9.

Всяка шестнадесетична цифра има стойност от 0 до 15. Първите 10 стойности са означени с арабски цифри 0. 9, другите шест - латинските букви A. F или. е.

Специални знаци Turbo Pascal - са символи

Специалните символи включват следните двойки символи:

Специално място в езиковата азбука заемат пространства, които включват всички ASCII-символни кодове в диапазона от 0 до 32. Тези символи се третират като ограничители идентификатори, константи, цифри, запазени думи. Няколко последователни помещения се считат за един интервал (последното не е низ константа).

В Turbo Pascal има следните запазени думи:

Идентификатори в Turbo Pascal - постоянна имена, променливи, етикети, видове съоръжения, процедури, функции, модули, програми и полета в записите. Идентификатори могат да бъдат с произволна дължина, но съдържателен (уникален в областта) са само първите 63 знака.

Идентификаторът винаги започва с буквата, евентуално последвано от букви и цифри. Позволете ми да ви напомня, че писмото също така се смята за долна черта, така че ID може да започне този герой и да се състои дори само на един или повече долна черта. Интервали и специални знаци от азбуката, не могат да бъдат включени в идентификатор.

Примери за валидни идентификатори:

Примери за невалидни идентификатори:

Както и в Turbo Pascal константи може да се използва цяло, реални и шестнадесетични числа, логически константи, символи, символни низове и поставя знак за неопределен дизайнери NIL показалка.

Целите числа са написани със знак или не от обикновените правила и могат да имат полза от -2147483648 до 2147483647. Трябва да се отбележи, че ако постоянно число е извън тези граници, компилаторът дава съобщение за грешка. Тези константи трябва да бъдат написани с десетична запетая, т.е. определя като реални числа.

Реални числа са написани със знака или без да се използва десетичната запетая и / или експоненциална част. Експоненциалният част започва с характер Е или Е, който може да бъде последван знаци "+" или "-" и десетична. F Символът (Е) е знак и има значението "умножава по 1.0 градуса". Например,

3.14E5 - 3.14 умножена по 10 на силата 5;

-17д-2 - умножена по минус 17 до 10 градуса, минус 2.

Ако записът на реално число има десетична запетая, преди момента, и то трябва да бъде най-малко една цифра. Ако символът е и експонентата д (Е), той трябва да бъде последван поне един десетичен номер на поръчката.

Шестнадесетично число се състои от шестнадесетични цифри, предшествани от знака $ (код 36 в ASCII). Обхватът на шестнадесетични числа - от $ 00000000 до $ FFFFFFFF.

Логически постоянно - това е нито дума невярно (невярно), или думата TRUE (вярно).

А символна константа - е всеки компютър характер затворени в единични кавички:

Ако искате да запишете собствения си апостроф, той се удвоява:

Разрешава използването на запис символ, като се посочва вътрешната си код, предшествано от символа # (код 35), например:

Низ константа - последователност от знаци (с изключение на характер CR -Refund превоз), затворени в единични кавички. Ако линията е необходимо да се посочи апостроф себе си, той се удвоява, например:

"Това - низ от символи;

низ характер може да бъде празен, т.е. няма никакви знаци в рамкиране си апострофи. Line може да се състои от кодовете съответните знаци преди всеки код характер #, например, ред # 83 # 121 # 109 # 98 # 11 # 108 е еквивалентно на линия за "символ".

И накрая, в командния ред, можете да редувате страна записано в апострофи на рамкиране, с части от записаните кодове. По този начин той може да бъде включен в никакви знаци за контрол на линия, включително CR характер (код 13), например:

7'Oshibka #! "# 13'Nazhmite произволен клавиш. '# 7.

Дизайнерски комплекти - списък на елементите на снимачната площадка, в рамка от квадратни скоби, например:

абе ето указател_към_нея суап

CHR странно rpund TRUNC

дължина Pred Succ

MaxReal = Maxlnt Разделение SizeOf (реален);

NUMCHARS = РСР ( "Z") - РСР ( "А") + 1;

Основните елементи на които са построени изпълним част от програмата, са константи, променливи и извиквания на функции. Всеки от тях се характеризира с нейната стойност принадлежи на всякакъв вид данни. Със знаци и скоби от тях могат да бъдат израз, който в действителност са правилата за новите стойности.

Специален случай на експресията може просто да бъде единичен елемент, т.е. константа, променлива или функция разговор. Стойността на този израз е, разбира се, от същия тип като самия елемент. В по-общ случай експресия се състои от няколко елемента (операнди) и признаци на операции и вида на неговата стойност определя от вида и типа на операндите приложени към него операции. Примери на изразите:

не Flag и (а = б)

Следните операции са определени в Turbo Pascal:

мултипликативна *, /, DIV, мод, а SHL, СБР;

Освен +, -, или, XOR;

съотношение = <>, <,>, <=,>=, В.

приоритет операция намалява в реда, показан, т.е. Той има най-висок приоритет на едноместно операции, по-нисък - работа отношения. Редът на изпълнение на няколко сделки на еднакъв приоритет се определя от оптимизацията съставител на условията на кода на програмата, а не непременно от ляво на дясно. При изчисляване на логически изрази операция равен приоритет винаги се оценяват от ляво на дясно и ще се изчислява на всички или само на достатъчно работа според инсталираната среда Turbo опция Паскал OPTIONS / Състав / ПЪЛЕН BOOLEAN EVAL: Когато зададете тази опция, за да се изчисли всички релационни оператори, когато не е установен - само тези, които са достатъчни, за да се получи резултат.

Този факт трябва да се вземе под внимание, когато се използва релационни оператори с функциите, които се променят глобалните променливи или параметри преминаха по име, например:

Функция допъл (Var х: цяло число): цяло число;

ако (а> б) или (доп (а)> 100), тогава б: = а;

Когато стартирате този фрагмент от стойността на A ще зависи от опции за конфигуриране: ако опцията е активирана, стойността на А е винаги увеличава с 1, когато не е активирана - само в случай на A <= В.

Условия за ползване операции с операнди от различни видове са показани в таблица. 3.1.

Когато работите с истински вид операнди може да бъде всеки тип цяло число. В резултат на операциите е показан на вида на таблица удължен само среда, посочена в режим код поколение Turbo Pascal, изчислено да аритметична копроцесор или на емулация (вж. Pril.1). Ако тази опция не е избрана, резултатът ще има стойност от тип REAL.

TwoChar = масив [1..2] на знак; Var

Int. цяло число; TwoCharPtr. ATwoChar;

ако TwoCharPtr ^ [1] = "C" след това.

Следващите логически операции, определени в Turbo Pascal:

Не - логично НЕ;

и - логическо И;

или - логически ИЛИ;

XOR - ексклузивно.

Логическите операции са приложими за целите числа, операнди и логически тип. Ако операнди - числа, резултат от логическата операция е същото число, чиято бита (двоични цифри) са оформени от битове на операнди в съответствие с правилата, описани в таблицата. 3.2.

Логическите операции по число на тип данни (битовите)

По същата логика в Turbo Pascal и обикновено включват две операции за смяна на цели числа:

съдържание на смени както по отношение на к бита от ляво - ШЛ и й; свободни места за младши

места са пълни с нули;

СБР Й - съдържание на смени както по отношение на бита й в дясно; вакантен старши

места са пълни с нули.

При тези операции и и к - експресията на всеки тип число.

Използването Пример 3.1 програма може да се покаже резултатът от прилагането на операцията по логиката на две числа.

п, т. цяло число; започвам

докато не EOF започвайте

Добави ( "п, т = '); ReadLn (п, т);
WriteLn ( "
не =
1. не п "не т);

WriteLnC
и =
". п и т)

WriteLnC
или =
1. п или m);

WriteLnC
XOR =
1. п XOR т)

WriteLn ( "
SHL =
1, п SHL т)

WriteLn ( "
СБР =
1. п SHR т)

Програмата се провежда чрез въвеждане на всеки две цели числа и отпечатва резултатът от прилагането им на всички логически операции. За да излезете от програмата трябва да натиснете Ctrl-Z, и Enter.

Логическите операции на логически данни дава резултат от булеви правила, посочени в таблица. 3.3.

Логическите операции на Boolean на тип данни

Операцията в съотношение се прилага два операнда. Първият (вляво) операнд трябва да бъде израз на всякакъв вид ред, а вторият - на снимачната площадка на елементи от един и същи тип, или множествено видове идентификатор. Операция дава TRUE, ако не се операнд принадлежи, например:

цифра = набор от "0" .. '9'; започвам

ако с в цифри след това.

3.6. СТРУКТУРА

Структурата на всякакви софтуерни единици (програми, процедури или функции) трябва да бъде :;

END <символ конца программной единицы>

Всяка от двете части на устройството за програма - раздел описания или изпълними отчети, или и двете може да бъде празен, т.е. не съдържа никакви описания или изпълними оператори.

В описанието трябва да съдържа описание на всички идентификатори, използвани в раздела на изпълними оператори. Изключение са идентификаторите, определени в предните части на програмните модули (библиотеки), и

DigType = настроен на "0". '9';

StrType = низ [40];

За разлика от стандартния Паскал форумите ВИД, CONST, VAR, LABEL може да следва един друг в произволен ред и да се срещнат в раздела Декларации толкова пъти.

Описание на процедурата или функцията е да се посочи заглавието на процедура (функция) и неговото тяло (вж. В гл. 8).

Структурата на софтуерни библиотеки (модули), описани в Ch.9.