
- •Оглавление
- •Глава 3. Логика высказываний 78
- •Глава 4. Логика предикатов 90
- •Введение
- •I. Системы счисления
- •1.1. Непозиционные системы счисления. Римская система счисления
- •1.2. Позиционные системы счисления
- •1.3. Взаимосвязь систем счисления
- •I. Алгоритм перевода целого числа Aq из q-ичной системы счисления в число Bd d-ичной системы
- •II. Алгоритм перевода целого числа Ad из d-ичной системы счисления в число Bq q-ичной системы
- •III. Алгоритм перевода правильных дробей из q-ичной системы счисления в d-ичную с вычислениями в d-ариф-метике
- •IV. Алгоритм перевода правильных дробей из d-ичной системы счисления в q-ичную с вычислениями в d-арифметике
- •V. Алгоритм перевода чисел из d-ичной системы счисления в dn-ичную систему счисления
- •VI. Алгоритм перевода чисел из dn-ичной системы счисления в d-ичную систему счисления.
- •1.4. Двоичная система счисления
- •1.4.1. Двоичная арифметика
- •1.4.3. Вычитание с использованием двоичного дополнения. Умножение
- •Алгоритм вычитания целых десятичных чисел
- •Алгоритм отыскания двоичного дополнения числа
- •Теория множеств
- •Глава 1. Множества
- •1.1. Основные определения
- •1.2. Основные операции теории множеств
- •Старшинство операций (операции даны по убыванию приоритетов)
- •1.4. Диаграммы Венна
- •1.5. Основные законы теории множеств
- •1.6. Декартово произведение и отношения
- •Глава 2. Бинарные отношения
- •2.1. Основные определения
- •Глава 3.Функции и операции
- •Примеры функций
- •Операции над функциями
- •Свойства бинарных операций
- •Глава 4.Алгебраические структуры
- •III. Математическая логика
- •Глава 1. Переключательные функции
- •1.1. Основные определения
- •Переключательные функции двух аргументов
- •1.2. Основные теоремы (эквивалентные соотношения) переключательных функций
- •Глава 2.Булева алгебра
- •2.1. Основные определения
- •Эквивалентные соотношения в булевой алгебре
- •2.2. Минимизация булевых функций
- •2.3. Аналитические методы нахождения мднф Метод Квайна
- •Формулы метода
- •Алгоритм метода
- •Метод Блейка
- •Формулы метода
- •Алгоритм метода
- •Сравнение методов Квайна и Блейка
- •Построение мднф из Сокр.Днф с помощью таблицы Квайна
- •Алгоритм получения fМднФс помощью таблицы Квайна
- •2.4. Графическая минимизация логических функций
- •Метод карт Карнапа
- •Алгоритм минимизации по карте Карнапа
- •2.5. Полнота систем булевых функций
- •Классы Поста
- •Полиномы Жегалкина
- •Глава 3.Логика высказываний
- •3.1. Основные понятия
- •3.2. Алгебра логики высказываний
- •3.3. Применение к естественному языку
- •Список наиболее часто встречающихся выражений, соответствующих логическим связкам
- •3.4. Исчисление высказываний (ив)
- •Глава 4.Логика предикатов
- •Определения кванторных высказываний
- •4.1. Алгебра логики предикатов
- •4.2. Выполнимость и общезначимость
- •4.3. Равносильность формул
- •Приведенные формулы
- •4.4. Применение логики предикатов к естественному языку
- •4.4.1. Суждения
- •Виды категорических суждений
- •4.4.2. Исчисление одноместных предикатов как исчисление классов. Теория категорических суждений и силлогизмов Аристотеля
- •Законы формальной логики Аристотеля:
- •4.4.3. Умозаключения
- •Наиболее распространенные схемы правильных дедуктивных рассуждений
- •4.4.4. Основные законы формальной логики. Логические основы аргументации
- •4.5. Исчисление предикатов
- •Литература
- •Предметный указатель
1.4.3. Вычитание с использованием двоичного дополнения. Умножение
Вся теория будет строиться сначала для десятичных чисел.
Десятичным
дополнениемn-разрядного
числаназывается разность
.
Например, десятичное дополнение числа
7 – 3, числа 342 – 658, числа
007 – 993.
Идея
использования десятичного дополнения
при вычитании основана на следующих
рассуждениях. Пусть необходимо найти
разность
.
Возможны случаи:
а)
.
В этом случае рассмотрим тождество
,
откуда следует правило нахождения
разности:
– найти десятичное дополнение к вычитаемому;
– сложить найденное дополнение и уменьшаемое;
– зачеркнуть единицу старшего разряда и вместо нее поставить знак «+»;
б)
.
В этом случае используем тождество
,
или, если через
обозначить сумму
,
получим
.
Отсюда
следует, что искомая разность есть
десятичное дополнение к числу,
взятое со знаком «–».
Приведенные рассуждения позволяют сформулировать следующий алгоритм.
Алгоритм вычитания целых десятичных чисел
Шаг
1. Уравнять число разрядов в числахи
,
приписав впереди требуемое число нулей.
Шаг 2. Найти десятичное дополнение вычитаемого
.
Шаг
3. Найти сумму.
Шаг
4. Если появилась единица в дополнительном
старшем разряде числа,
то заменить ее знаком «+».В противном
случае найти десятичное дополнение
числа
и поставить перед ним знак «–».
Шаг
5. Полученное число считать искомой
разностью.
Заметим, что алгоритм не требует предварительного сравнения уменьшаемого и вычитаемого.
Пример
7.Найти разность.
1.
;
.
Находим дополнение числа 39, имеем
.
Складываем уменьшаемое и найденное
дополнение:
.
Отбрасываем единицу старшего разряда
и получаем 35 (или 74 – 39=35).
2.
;
.
Находим дополнение числа 47:
.
Складываем уменьшаемое и найденное
дополнение:
.
Так как единица в старшем разряде не
появилась, то находим десятичное
дополнение числа 76:
,
берем его со знаком минус и считаем
искомой разностью:
.
Приведенные
рассуждения и основанный на них алгоритм
могут быть построены и в позиционной
системе счисления с натуральным
основанием, отличным от десяти. Однако
наиболее эффективен такой подход к
вычитанию в двоичной арифметике.
Объясняется это тем, что в этой системе
счисления очень просто находится
«двоичное дополнение» (двоичным
дополнением n-значного
числаявляется разность
).
Алгоритм отыскания двоичного дополнения числа
Шаг
1. Все единицы числазаменить нулями, а все нули – единицами.
Шаг 2. К полученному числу по правилам двоичной арифметики прибавить 1.
Чтобы получить алгоритм вычитания двоичных чисел, достаточно в приведенном выше алгоритме заменить слово «десятичный» словом «двоичный», а индекс «10» заменить индексом «2».
Пример
8.Найти разность.
|
|
Находим
двоичное дополнение
| |
|
|
Находим сумму
| |
|
|
В соответствии с алгоритмом отбрасываем единицу в дополнительном старшем разряде |
Так
как число
|
|
|