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

3. Логические данные.

Логические переменные и логические операции относятся к области математики, которая называется алгеброй логики. В алгебре логики рассматриваются высказывания, в отношении которых имеет смысл говорить об их истинности или ложности. Например, "снег белый", "сегодня - пятница", " > 0", "" и т.д. Истинность высказывания может принимать одно из двух значений: 0 (высказывание ложное - “FALSE”) или 1 (высказывание истинное - “TRUE”). Кодирование “FALSE” и “TRUE” 0 и 1 применяется в большинстве алгоритмических языков. В языке Си “FALSE” соответствует код 0, а “TRUE” – любая последовательность битов, отличная от 0. Для простоты будем считать, что “TRUE” соответствует 1.

Алгебра логики широко применяется при проектировании и анализе работы устройств ПК, поскольку элементы, входящие в состав таких устройств, являются бинарными (двоичными) и могут находиться лишь в одном из двух возможных состояний, которые обозначаются соответственно 0 и 1. В программировании операции алгебры логики используются при вычислении логических выражений.

Алгебра логики определяет 16 логических операций. Наиболее важными из них являются три: отрицание, логическое умножение и логическое сложение, исключающее ИЛИ (сумма по модулю 2).

а) Отрицание ( операция НЕ ). Таблица операции:

Читается: "Не нуль есть единица".

б) Логическое умножение (конъюнкция, операция И). Таблица операции:

0  0 = 0

0  1 = 0

1  0 = 0

1  1 = 1

Читается: "Нуль и нуль есть нуль".

в) Логическое сложение (дизъюнкция, операция ИЛИ). Таблица операции:

0  0 = 0

0  1 = 1

1  0 = 1

1  1 = 1

Читается: "Нуль или нуль есть нуль".

г) Исключающее ИЛИ (сумма по модулю 2. Таблица операции:

0 0 = 0

0 1 = 1

1 0 = 1

1 1 = 0

Читается: "Нуль плюс по модулю два нуль есть нуль".

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

Пример 5. Пусть мы имеем два поля X и Y длиной 4 байта:

X = F570 1A8B ; Y = 37E4 90CD .

Здесь шестнадцатеричная запись используется только с целью компактности представления содержимого поля памяти.

Тогда

= 0 A 8 F E 5 7 4

X /\ Y = 3 5 6 0 1 0 8 9

X \/ Y = F 7 F 4 9 A C F

Примечание. Чтобы выполнить записанные выше операции, следует исходные числа (содержимое полей памяти) X и Y представить в виде последовательности двоичных тетрад, применить заданные логические операции отдельно для каждой пары бит, а затем каждую тетраду полученного числа записать одной шестнадцатеричной цифрой.

Э Л Е М Е Н Т Ы Я З Ы К А, Т И П Ы Д А Н Н Ы Х, К О Н С Т А Н Т Ы

Программа, написанная на языке Си, состоит из операторов. Каждый оператор вызывает выполнение некоторых действий на соответствующем шаге выполнения программы. Перед изучением правил написания программы, следует ознакомиться с соглашениями языка – описанием основных его конструкций.

Соседние файлы в папке Прогр_обменка