- •Лекция 2
- •4.Выражения
- •4.1. Переменные
- •4.2. Константы
- •4.2.1. Целые константы
- •4.2.2. Вещественные константы
- •4.2.3. Строковые константы
- •4.2.4. Константные выражения
- •4.2.5. Типизированные константы
- •4.3. Стандартные функции
- •4.3.1. Арифметические функции
- •4.3.2. Функции преобразования типа
- •4.3.3. Функции для величин порядкового типа
- •4.4. Знаки операций
- •Операции со строками;
- •4.4.2. Операции отношения
- •4.4.3. Логические операции
- •Результат операции and
- •4.4.3. Операции с битами информации
- •4.4.4. Приоритеты операций
Лекция 2
4.Выражения
Выражения в Турбо Паскале формируются из констант, переменных, функций (стандартных и написанных пользователем), знаков операций и круглых скобок.
4.1. Переменные
Переменными называются величины программы, значения которых могут изменяться в процессе её выполнения.
Все используемые в программе переменные должны быть определены с указанием их типов. Переменные определяются:
-
в разделе объявления переменных программы;
-
в разделе объявления переменных подпрограммы;
-
в разделе объявлений переменных модуля;
-
в заголовке подпрограммы.
Пример:
var
x,y,z:real;
i,j,k:integer;
digit:0..9;
operator:0..9;
c:color; {используемый тип color должен быть ранее определен разделе объявления типов}
Переменные, объявленные не в подпрограмме, называются глобальными и размещаются в сегменте данных размером 65520 байтов. Переменные, объявленные в подпрограмме, называются локальными и размещаются в стековом сегменте. Обычно стековый сегмент имеет размер в 16384 байта, однако с помощью директивы компилятора $M его можно изменить в пределах от 1024 до 65520 байтов.
Глобальные переменные постоянно находятся в памяти, локальные размещаются в стеке лишь на время выполнения подпрограммы, затем область стека освобождается.
4.2. Константы
Константами называются величины программы, значения, которых не меняются в процессе её выполнения.
В Паскале возможно двоякое использование констант:
-
непосредственное использование значения константы;
-
использование идентификатора константы.
Задание константы идентификаторами осуществляется в разделе объявления констант. В Турбо Паскале имеются две разновидности констант:
-
обычные константы, тип которых определяется их значением;
-
типизированные константы, для которых в явном виде указывается их тип.
4.2.1. Целые константы
В изображении целых констант присутствуют лишь знак и цифры. Предполагается десятичная система счисления, однако, если требуется использовать шестнацатеричную систему счисления, перед константой следует поставить знак $. В Турбо Паскале даны две заранее определенные константы:
Maxint=32767{215-1}
MaxLongInt=2147483647 {231-1}
4.2.2. Вещественные константы
Вещественные константы в своем изображении содержат либо десятичную точку, либо символ Е (е), например:
x=0.5;
y=1.0;
z=-1.0E-5;
w=7.5e+15;
4.2.3. Строковые константы
Строка символов – это последовательность любого числа символов (в том числе и равного нулю) ASCII – кодировки, расположенных на одной строке и заключенных в апострофы.
Если между апострофами нет ни одного символа, то такая строка называется нулевой строкой.
Для включения в строку символов, не имеющих физического изображения, используются их ASCII – код с символом перед ним. Для использования управляющих символов (коды от 0 до 31) можно использовать символ ^ и соответствующую букву, код которой равен коду управляющего символа плюс 64.
Пример. Строковые константы.
symbols =’Turbo;’
apostrophe =’’’’;
twolines=’line1’#13#10’line2’;
return=#13#10;
4.2.4. Константные выражения
Константные выражения – это такие выражения, которые могут быть вычислены компилятором без запуска программы. Они являются частным случаем выражений и могут состоять из констант, знаков операций, круглых скобок и некоторых стандартных функций.
Пример. Константные выражения.
100 |
{выражение, состоящее из константы} |
‘A’ |
{выражение, состоящее из символьной константы } |
(3.1+7.9)/7.5 |
{выражение со знаками операций} |
‘TURBO’+’-‘+’PASCAL’ |
{объединение (склеивание) строк} |
ORD(‘Z’)-ORD(‘A’)+1 |
{выражение с использованием функции} |