Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Логические выражения




Выражения отношения

Выражения отношения – это два операнда, связанных операцией сравнения. Операндами отношений могут быть выражения, результат которых – значения любого простого типа, строка или множество. Типы обоих операндов должны быть совместимыми. Тип результата сравнения – логический, т.е. значение TRUE или FALSE.

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

 

 

Операция Действие Операнды
= Равно Любой простой тип, строка или множество, в том числе элемент массива или записи
<> Не равно
< Меньше
> Больше
<= Меньше или равно
>= Больше или равно
IN Принадлежность к множеству Левый операнд – выражение любого ординального типа, совместимого с типом базовых элементов правого операнда; правый операнд – величина типа множества: константа или переменная

 

Выражения сравнения можно использовать:

1) в условных операторах;

2) в операторах присваивания;

3) в качестве фактических параметров процедур и функций;

4) в списках данных операторов вывода.

Примеры. VAR A, D: BOOLEAN; I: INTEGER; B, C: REAL;

A:= B > C; D:= I IN (1, 3, 5.. 12);

 

Логическое выражение – это средство алгебры логики. Логические выражения применяются для анализа, т.е. определения истинности или ложности определенных ситуаций. Используются логические выражения в языке Паскаль там же, где и выражения сравнения. Логические выражения строятся из допустимых операндов и логических операций.

Логические операции в порядке приоритета (от высшего к низшему):

NOT (НЕ) – отрицание;

AND (И) – логическое умножение;

OR (ИЛИ) – логическое сложение;

XOR (исключающее ИЛИ) – сложение по модулю 2.

Логические операции применимы к логическим и целым операндам.

Логические операции с операндами логического типа:

 

Операнд 1 Операнд 2 Результат операций
NOT AND OR XOR
F F T F F F
F T T F T T
T F F F T T
T T F T T F

 

F = FALSE; T = TRUE.

Операция NOT одноместная и выполняется над одним (первым) операндом.

Операндами логических операций могут быть:

- логические переменные;

- логические константы;

- функции, результат которых – логическое значение;

- результаты операций отношения.

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

Если операнды целые числа, то результат логической операции тоже целое число. Биты результата формируются из битов разрядов операндов поразрядно по правилам логических операций. В результате образуется новое целое число, биты которого получены из соответствующих битов операндов.

Пример: 101

INTEGER: I, J, K; 011

…. I:= 5; J:= 3; K:= I AND J; 001 = K

 

К логическим в Паскале относят и две сдвиговые операции:

I SHL J - ShiftLeft – сдвиг содержимого I на J разрядов влево, а освободившиеся правые разряды заполняются нулями;

I SHR J - ShiftRight – сдвиг содержимого I на J разрядов вправо, а освободившиеся левые разряды заполняются нулями.

ПРИМЕР.

I:= 3; J:= 1; K:= I SHL J; { K = 6 }

K:= I SHR J; { K = 3 }

Для работы с логическим типом данных можно использовать встроенные функции:

ORD (FALSE) = 0 (определяет порядковый номер FALSE в упорядоченной последовательности логических переменных);

SUCC (TRUE) = FALSE (формирует результат в виде значения, следующего после значения TRUE в упорядоченной последовательности значений);

PRED (TRUE) = FALSE (определяет значение результата в виде значения, предшествующего значению TRUE в упорядоченной последовательности значений.




Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 317; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.