- •Учебно-методическое пособие
- •Маршрутная карта изучения дисциплины по Модулю 1
- •1. Логические и арифметические основы эвм
- •Системы счисления
- •1.1. Десятичная система счисления
- •1.2. Двоичная система счисления
- •1.3. Восьмеричная и шестнадцатеричная системы счисления
- •1.4. Перевод чисел из любой системы счисления в десятичную
- •1.5. Перевод чисел из десятичной системы счисления в любую другую
- •Вопросы для самоконтроля
- •Методические указания для выполнения практического задания №1. «Системы счисления»
- •Приложение 1. Таблица вариантов заданий
- •2. Алгебра логики
- •2.1. Логические операции
- •Инверсия
- •2.2. Нормальные формы
- •Конъюнктивная нормальная форма
- •Дизъюнктивная нормальная форма
- •3. Применение средств алгебры логики для описания функционирования устройств компьютера
- •3.1. Логические схемы
- •Пример решение логических задач средствами алгебры логики
- •Методические указания для выполнения практического задания №2. «Алгебра логики». Построение таблиц истинности.
- •Пример построения логических схем
- •Методические указания для выполнения практического задания №3. «Алгебра логики». Построение логических схем.
- •Приложение 2. Таблица вариантов заданий
- •4. Индивидуальное задание. Модуль 1. «Построение логических схем по заданным булевым выражениям»
- •Приложение 3. Таблица вариантов индивидуального задания
- •Приложение 4. Титульный лист идз
- •Маршрутная карта изучения дисциплины по Модулю 2
- •5. Введение в алгоритмизацию
- •6. Знакомство со средой Турбо Паскаль
- •6.1. Общие сведения
- •6.2. Запуск Турбо-Паскаля на выполнение
- •6.3. Назначение функциональных клавиш системы Турбо-Паскаль
- •6.4. Работа с текстовым редактором Турбо-Паскаля
- •Клавиши перемещения курсора
- •Работа с блоками текста
- •7. Основы алгоритмизации
- •7.1. Алгоритм
- •7.2. Алгоритмические структуры
- •8. Программирование на языке Pascal
- •8.1. Алфавит языка
- •8.2. Арифметические выражения и правила их записи
- •Знаки операций
- •Операции div и mod
- •8.3. Типы данных
- •Целые типы
- •Логический тип
- •8.5. Структура программы на языке Паскаль
- •8.6. Описательная часть программы
- •8.7. Исполнительная часть программы
- •8.10. Комментарии в программе
- •Пример программы линейной структуры
- •Вопросы для самоконтроля
- •8.11. Методические указания для выполнения практического задания №4. «Следования»
- •Приложение 5. Таблица вариантов заданий
- •9. Ветвления
- •9.1. Операторы условия и перехода
- •Логический оператор
- •Операции отношения
- •Логические операции
- •9.2. Оператор выбора
- •Пример программы разветвленной структуры
- •Вопросы для самоконтроля
- •9.3. Методические указания для выполнения практического задания №5. «Ветвления»
- •Приложение 6. Таблица вариантов заданий
- •10. Циклические вычислительные процессы
- •10.1. Оператор цикла с параметром
- •10.2. Оператор цикла с постусловием
- •10.3. Оператор цикла с предусловием
- •10.4. Вложенные циклы
- •10.5. Оператор прерывания цикла
- •Пример программы циклической структуры
- •Вопросы для самоконтроля
- •10.6. Методические указания для выполнения практического задания №6. «Циклы»
- •Приложение 7. Таблица вариантов заданий
- •11. Операции с индексированными переменными
- •11.1. Массивы одномерные
- •11.2. Описание массивов
- •Ввод элементов массива
- •Вывод элементов массива
- •11.3. Обработка одномерных массивов
- •Пример программы обработки одномерного массива
- •Вопросы для самоконтроля
- •11.4. Методические указания для выполнения практического задания №7. «Операции с индексированными переменными»
- •Приложение 8. Таблица вариантов заданий
- •12. Двумерные массивы
- •12.1. Матрицы
- •12.2. Описание двумерного массива
- •Ввод элементов двумерного массива
- •Вывод элементов двумерного массива
- •12.3. Обработка двумерных массивов
- •Пример программы обработки двумерного массива
- •Вопросы для самоконтроля
- •12.4. Методические указания для выполнения практического задания №8. «Матрицы»
- •Приложение 9. Таблица вариантов заданий
- •13. Подпрограммы
- •13.1. Функции и процедуры
- •Структура программы, содержащей процедуру (функцию)
- •13.2. Процедуры
- •13.3. Вложенные процедуры Директива forward
- •13.4. Функции
- •Пример программы с использованием подпрограмм
- •Вопросы для самоконтроля
- •Методические указания для выполнения практического задания №9. «Подпрограммы»
- •Приложение 10. Таблица вариантов заданий
- •14. Обработка строк текста
- •14.3. Строковые переменные
- •14.4. Функции обработки строковых переменных
- •14.5. Процедуры обработки строковых переменных
- •14.6. Примеры обработки строковых переменных
- •Вопросы для самоконтроля
- •15. Структурированные типы данных
- •Пример программы использования массива записей
- •Вопросы для самоконтроля
- •Методические указания к выполнению индивидуального задания по Модулю 2. «Массивы записей»
- •Приложение 11. Таблица вариантов индивидуального задания
2.1. Логические операции
Истинностные значения новых высказываний определяются при этом только истинностными значениями входящих в них высказываний. Построение из данных высказываний (или из данного высказывания) нового высказывания называется логической операцией. Знаки логических операций называютсялогическими связками. Логические связки бывают одноместными (унарными), двухместными (бинарные), трехместными (тернарными) и т.д.
Пример 10.
Из высказываний «х > 2», «х < 3» при помощи связки «и» можно получить высказывание «x > 2 и х < 3»;
из высказываний «у > 10», «х < 3» при помощи связки «или» можно получить высказывание «у > 10 или х < 3»;
из высказываний «х > 2», «у < 3» при помощи связки «если..., то...» можно получить высказывание «если x > 2, то у < 3».
Истинность или ложность получаемых таким образом высказываний зависит от истинности и ложности исходных высказываний и соответствующей трактовки связок как операций над высказываниями.
В алгебре логики логические операции чаще всего описываются при помощи таблиц истинности. В таблице 1 представлена таблица истинности для операции «отрицание» («инверсия»).
Таблица истинности для операции «отрицания»
Таблица 1
А |
не А |
0 |
1 |
1 |
0 |
В таблице 2 приведены основные бинарные логические операции и связки.
Основные бинарные логические операции и связки
Таблица 2
Обозначение логической операции |
Другие обозначения логической операции |
Название логической операции и связки |
Примечание (читается) |
А1 А2 |
А1 & А2 А1 А2 А1А2 |
конъюнкция, логическое умножение, логическое «и» |
А1 и А2 |
А1 А2 |
А1 + А2 |
дизъюнкция, логическое сложение, логическое «или» |
А1 или А2 |
А1 А2 |
А1 А2 А1 А2 |
импликация, логическое следование |
если А1, то А2; А1 имплицирует А2; А1 влечет А2 |
А1 А2 |
А1 + А2 А1 А2 А1 А2 |
сумма по модулю 2, разделительная дизъюнкция, разделительное «или» |
А1 плюс А2; либо А1, либо А2 |
А1 ~ А2 |
А1 А2 А1 А2 А1 А2 |
эквиваленция, эквивалентность, равнозначность, тождественность |
А1 тогда и только тогда, когда А2; А1 эквивалентно А2 |
А1 А2 |
|
штрих Шеффера, антиконъюнкция |
неверно, что А1 и А2; А1 штрих Шеффера А2 |
А1 А2 |
А1 А2 А1 А2 |
стрелка Пирса, антидизъюнкция, функция Вебба, функция Даггера |
ни А1, ни А2; А1 стрелка Пирса А2 |
Примечание:А1иА2являются высказываниями.
Связки и частица «не» рассматриваются в алгебре логики как операции над величинами, принимающими значения 0 (ложь/false) и 1 (истина/true), и результатом применения этих операций также являются числа 0 или 1. В таблице 3 представлены все наборы значений переменных А1иА2и значения функций на этих наборах.
Таблица истинности для основных бинарных логических операций
Таблица 3
А1 |
А2 |
Ù |
Ú |
® |
Å |
~ |
½ |
¯ |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |