Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
выш.мат. методичка.DOC
Скачиваний:
32
Добавлен:
13.02.2015
Размер:
1.71 Mб
Скачать

4.4.2. Логические операции

Логические операции применяются к величинам логического типа, результат операции тоже логического типа. Имеется одна унарная логическая операция nоt (ОТРИЦАНИЕ) и три бинарные операции and (И), оr (ИЛИ), хоr (ИСКЛЮЧАЮЩЕЕ ИЛИ). Они определяются таблицами истинности 6 и 7.

Таблица 6. Таблица истинности операции NOT.

X

nоt X

False

True

True

False

Таблица 7. Таблица истинности операций АND, OR, и ХОR.

X

Y

X and Y

X or Y

X xor Y

False

False

False

False

False

False

True

False

True

True

True

False

False

True

True

True

True

True

True

False

В Turbo Pascal имеется два вида вычисления логических выражений: полное и укороченное.

Полное вычисление означает, что вычисляется каждый операнд, даже если уже известен результат всего выражения.

Укороченное вычисление проводится до тех пор, пока не станет известен ре­зультат всего выражения, после чего вычисление последующих операндов пре­кращается.

Предположим, что дано выражение А аnd В, где А и В - некоторые логические выражения (операнды). При полном вычислении в любом случае вычисляются и значение А, и значение В, а уж затем формируется значение всего выражения. При укороченном вычислении, если величина А=False, выражение В не вычисля­ется, т. к. оно не влияет на результат, который в любом случае будет False. В этом случае несколько уменьшается время вычисления. |

Выбор вида вычисления осуществляется с помощью ключа компилятора $В. Если используется ключ {$В-} (этот вариант выбирается по умол­чанию), производится укороченное вычисление. Если выбран ключ {$В+}, производится полное вычисление. Неправильный выбор вида вычисления может иног­да привести к ошибке.

4.4.3. Операции с битами информации

Операции not, and, or, xor можно использовать для побитовых операций с целыми числами, при этом тип результата определяется наименьшим типом опе­рандов (имеющим наименьший размер). В применении к целым числам эти опе-рации имеют следующий смысл:

not - унарная операция инверсии всех битов целого числа;

and - побитовая логическая операция И двух целых чисел;

оr - побитовая логическая операция ИЛИ двух целых чисел;

хоr - побитовая логическая операция ИСКЛЮЧАЮЩЕЕ ИЛИ двух целых чисел.

К этой же группе можно отнести операции shl и shr, имеющие следующий смысл:

shl - операция I shl J сдвигает содержимое I на J битов влево. Освободившиеся биты заполняются нулями.

shr - операция I shr J сдвигает содержимое I на J битов вправо. Освободившиеся биты заполняются нулями.

4.4.4. Операции отношения

Операции отношения предназначены для сравнения двух величин (величины должны быть сравнимых типов). Результат сравнения имеет логический тип. Операции отношения следующие:

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

<> - неравно; >= - больше или равно;

< - меньше; > - больше.

Примечание. Операции отношения используются также для указателей, строк, мно­жеств.