Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laboratornye_raboty_po_Informatike_2011.doc
Скачиваний:
7
Добавлен:
11.12.2018
Размер:
502.27 Кб
Скачать

3.1.4. Выражения, операнды и операции.

3.1.4.1. Общие сведения.

Переменные и константы всех типов используются в выражениях. Выражение задает порядок выполнения действий над элементами данных и состоит из операндов (констант, переменных, обращений к функциям), круглых скобок и знаков операций. Операции определяют действия, которые надо выполнить над операндами, например, в вы­ражении (Х+У-Z) Х,У и Z - операнды; +,- - знаки опе­раций сложения и вычитания. В простейшем случае выражение может состоять из одной переменной или константы. Круглые скобки ста­вятся так же, как и в обычных арифметических выражениях для уп­равления ассоциативностью и порядком выполнения операций.

Операции в языке Delphi подразделяются на арифметические, отношения, логические (булевские), операцию @, строковые и др. Выражения соответственно называются арифметическими, отношения, булевскими, строковыми и т.д. в зависимости от того, какого типа операнды и операции в них используются.

Операции могут быть унарными и бинарными. В первом случае операция относится к одному операнду и всегда записывается перед ним, во втором операция выражает отношение между двумя операнда­ми и записывается между ними. Например, -А - унарная операция, X+Y - бинарная.

3.1.4.2. Арифметические выражения и операции.

Арифметическое выражение порождает целое или действительное значение. Наиболее простыми формами арифметических выражений яв­ляются: целая или действительная константа без знака: целая или действительная переменная; элемент массива целого или действи­тельного типа; функция, принимающая целое или действительное значение. Значение переменной или элемента массива должно быть опреде­лено до их появления в арифметическом выражении. Другие арифме­тические выражения составляются из вышеперечисленных простых форм путем применения круглых скобок и арифметических операций.

Арифметические операции выполняют арифметические действия в выражениях над значениями операндов целочисленных и вещественных типов

Арифметические операции

Операция

Действие

Типы операндов

Тип результата

Пример

Бинарные

+

Сложение

Целый

Вещественный

Целый

Вещественный

1 + 5 = 6

1.5 + 5.3 = 6.9

-

Вычитание

Целый

Вещественный

Целый

Вещественный

6 – 1 = 5

7.2 – 4.1 = 3.1

*

Умножение

Целый

Вещественный

Целый

Вещественный

3 * 5 = 15

3.2 * 2 = 6.4

/

Деление

целый

Вещественный

Вещественный

30 / 5 = 6

30 / 60 = 0.5

div

Целочисленное

Деление

Целый

Целый

12 div 5 = 2

11 div 3 = 3

1 div 3 = 0

Mod

Остаток

целый

Целый

11 mod 5 = 1

10 mod 3 = 1

14 mod 5 = 4

and

Арифметическое И

Целый

Целый

1 and 1 = 1, 1 and 0 = 0, 0 and 1=0, 0 and 0 = 0

12 and 22 = 4

or

Арифметическое ИЛИ

Целый

Целый

1 or 1 = 1, 1 or 0 = 1,

0 or 1 = 1, 0 or 0 = 0,

12 or 22 = 30

Унарные

+

Сохранение знака

Целый

Вещественный

Целый

Вещественный

+(-12) = -12

+(34) = 34

-

Отрицание знака

Целый

Вещественный

Целый

Вещественный

-(-17) = 17

-(24) = -24

not

Арифметическое отрицание

Целый

Целый

Not 0 = -1

Not 78 = -79

Операции сложения (+), вычитания (-), умножения (•) и деления (/) выполняются так же, как и в обычных арифметических выражени­ях. Целочисленное деление (div) отличается от обычной операции деления тем, что возвращает целую часть частного, дробная часть отбрасывается. Перед выполнением операции оба операнда округля­ются до целых значений. Результат целочисленного деления всегда равен нулю, если делимое меньше делителя.

Деление по модулю (mod) восстанавливает остаток от выполнения целочисленного деления.

Арифметическое И (and) производит логическое умножение опе­рандов.

Операнды записываются в десятичной форме,но во время выполне­ния переводятся в двоичную форму. Результат представлен в деся­тичной форме.

Пример. Вычислить результат выражения A and В, если А=12 и В=22. А и В занимают в памяти 2 байта и в двоичной форме имеют вид: 000000000001100 и 000000000010110. В результате выполнения операции 0000000000001100 and 0000000010110 в соответствии с таблицей истинности получим результат 0000000000000100, или 4 в десятичной форме. Следовательно. 12 and 22 = 4.

Логическое сложение (or) выполняет сложение операндов в дво­ичной форме.

Пример. Вычислить результат выполнения выражения 12 or 22. 12 и 22 занимают в памяти по 2 байта и в двоичной форме имеют вид 0000000000001100 и 0000000000010110 соответственно.. Выполнив сложение в соответствии с таблицей истинности, получим двоичное значение суммы 0000000000011110, что соответствует числу 30 в десятичной форме. Следовательно, 12 or 22 = З0.

Применение операции not к данным целочисленных типов вызывает побитную инверсию соответствующего данному числу двоичного кода.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]