Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика - лекции.doc
Скачиваний:
18
Добавлен:
07.11.2018
Размер:
512.51 Кб
Скачать

Операторы присваивания.

Основной операцией является операция присваивания:

Ratio:= A/B.

В Паскале операция присваивания - это комбинация двоеточия и знака равенства: ":=". В примере значение выражения А /В, стоящее справа от ":=", присваивается переменной Ratio, стоящей слева.

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

Паскаль поддерживает обычный стандартный набор бинарных арифметических операторов, которые выполняются над целыми и веществеными числами:

- умножение (*);

- деление целых (div);

- деление вещественных с остатком (/);

- остаток от деления (mod);

- сложение (+);

- вычитание (-).

Побитовые операторы.

Для операций над битами в Паскале имеются следующие операторы:

- shl (shift left) Сдвигает биты влево на указанное число бит, заполняя оставшиеся справа разряды нулями

- shr (shift right) Cдвигает биты вправо на указанное число бит, заполняя оставшиеся слева разряды нулями

- and выполняет логическое and (и) над парой битов, возвращает 1 , если оба бита 1 и 0 в противном случае

- or выполняет логическое or (или) над парой битов, возвращает 0 , если оба бита равны 0 и 1 в противном случае

- xor выполняет логическое исключающее или над парой битов, возвращает 1, если биты имеют разное значение и 0 в противном случае

- not операция логического дополнения бита заменяет 0 на 1 и обратно.

Эти операции выполняют действия на низком уровне с целочисленными значениями .

Операторы отношений.

Операторы отношений сравнивают два значения, возвращая в результате булевское значение True или False. В Паскале реализуются операторы:

> - больше, чем;

>= - больше, чем или равно;

< - меньше, чем;

<= - меньше, чем или равно;

= - равно;

<> - не равно;

in - является элементом.

Почему необходимо знать, каков результат: True или False? Введем следующую программу:

program TestGreater;

var

A, B: Integer;

Test: Boolean;

begin

Write('Введите два числа: ');

Readln(A, B);

Test := A > B;

Writeln('А больше чем В', Test);

end.

Результат программы : True, если А больше В , и False , если А меньше или равно В.

Логические операторы.

В Паскале есть четыре логических оператора - and, xor, or, not. Они аналогичны побитовым операторам, но имеют свои отличия.

Эти логические операторы работают с логическими значениями (True и False), позволяя комбинировать выражения отношений, булевские переменные и булевские выражения.

Различия между этими операторами и побитовыми операторами следующие:

- Логические операторы возвращают результат True или False (булевское значение), в то время как побитовые операторы производят действие над целыми значениями.

- Эти операторы не позволяют комбинировать булевские и целые выражения; другими словами, выражение Flag and Indx недопустимо, если Flag - булевский тип, а Indx - целый тип ( или наоборот).

Адресные операторы.

В Паскале поддерживаются два специальных оператора над адресами: вычисление адреса (@) и оператор косвенной ссылки (^).

Оператор @ возвращает адрес заданной переменной; если Sum переменная целого типа, то @Sum - адрес в памяти этой переменной.

Аналогично, если ChrPtr - это указатель на тип Сhar, то ChrPtr^ - это символ, на который указывает ChrPtr.