Информатика и ИТ. Нейросети. Выпуск 2. Николай Морозов. Читать онлайн. Newlib. NEWLIB.NET

Автор: Николай Морозов
Издательство: Издательские решения
Серия:
Жанр произведения:
Год издания: 0
isbn: 9785006483118
Скачать книгу
вычитаемое в дополнительный код.

      – Сложить эти два числа (уменьшаемое и вычитаемое в дополнительном коде).

      – При сложении бит переноса не учитывать.

      – Полученный результат – разность.

      Например, найдем разность между числами 13 и 5

      Запишем в двоичном коде: 13 (00001101), 5 (00000101).

      Переведем в дополнительный код вычитаемое: (5 (11111011).

      Бит переноса из старшего разряда отбрасываем. Результат: 10002=810.

      Деление в двоичной системе происходит так же как в десятичной системе счисления.

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

      При выполнении действий двоичной арифметики возможны ситуации, приводящие к неточности результата или ошибке. Так, при использовании целочисленного представления возможна ситуация потери старших разрядов результата (в случае превышения разрядов сетки). Еще одна парадоксальная ошибка «целочисленной арифметики» – при использовании знакового формата при сложении или умножении положительных чисел возможно получение результата, неверного по знаку (с единицей в знаковом бите) и модулю (без учета знакового бита). Для форматов с плавающей точкой возможна другая опасность: выход за границу допустимого диапазона значений. Это может произойти, если порядок результата оказывается больше максимального возможного значения. Обычно в такой ситуации выполнение программы прерывается по ошибке – «арифметическое переполнение». Схожая ситуация, когда результат меньше минимально возможного приведет к исчезновению числа (превращению в нуль, что опасно, например, при делении).

      Булевы функции. Сложение по модулю два

      Говоря об арифметических операциях с двоичными числами нельзя не сказать о логических операциях с ними. В XIX веке английский математик Джордж Буль разработал основные положения алгебры логики, ныне используемые для формального описания узлов ЭВМ. В алгебре логики (булевой алгебре) различают двоичные переменные и булевы функции.

      Двоичные переменные могут принимать два значения: 0 и 1. Они обозначаются символами x1, x2, x3,…

      Булевы функции зависят от двоичных переменных. Они, как и аргументы, могут принимать лишь два значения: 0 или 1, и обозначаются как f (x1,x2,x3,…) Булевы функции принято задавать таблицами истинности, где для всех наборов переменных указываются соответствующие им значения функции. Вместо значений 0,1 может использоваться любая другая пара подходящих символов, например false и true (F и T, «ложь» и «истина»). Элементарные булевы функции служат аргументами еще более сложных логических функций.

      К элементарным логическим функциям относятся:

      Логическое отрицание – инверсия (логическая функция НЕ). Логическим отрицанием переменной x называется такая булева функция f1 (x), которая имеет