Двоичное вычитание с использованием дополнительных кодов.

При реализации двоичной арифметики в современных процессорных элементах ЭВМ необходимо учитывать, что возможности аппаратной «двоичной электроники» не позволяют непосредственно осуществлять операцию вычитания. Одним из приемлемых технических решений, позволяющих заменить операцию двоичного вычитания двоичным сложением. является замена вычитаемого представлением его в виде дополнительного кода.

Формирование дополнительного кода, или сокращенного дополнения, как было рассмотрено в пп.3.4.1, состоит из двух операций: операции получения обратного кода и операции добавления единицы в младший разряд.

Правило. Обратный (инверсный) код числа получается обращением (инвертированием) нулей двоичного числа в единицы, а единиц — в нули. Дополнительный код числа — это сумма его обратного кода и единицы младшего разряда.

Пример: пусть 1001 есть исходное число
  — обратный код числа
  — добавляемая единица
  —дополнительного код числа

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

Пример:, Пусть необходимо из числа 1001102 вычесть число 10102, т.е.:

1001102 – 10102

Для этого перепишем указанные числа в виде восьмиразрядных, т.е. так, как они обычно записываются в ячейки памяти компьютера:

00100110 – 000001010

Далее получим дополнительный код вычитаемого 1010 (точнее его восьмиразрядной записи)

  — прямой код числа
  — обратный код числа
  — добавляемая единица
  —дополнительного код числа

Найдем разность исходных чисел, сложив полученный дополнительный код числа с уменьшаемым и отбросив «лишний» девятый разряд, если он образуется:

   
   
   

Арифметические операции в позиционных системах счисления

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

Пример: Арифметические действия над числами, представленными в системе счисления с основанием 3:  
  Сложение     Вычитание   Умножение   Деление  
  213       2103   2123     2213 123  
  2,13       1023   12103     123 123  
  100,13       1013          
                     
                   
                     
              11112203        
                               

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

Основные понятия логики.

Определение. Логика (формальная логика) — это наука о формах и законах человеческого мышления и, в частности, о законах доказательных рассуждений.

Примечание.

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

Определение. Двоичная логика, которая тесно связана с двоичной системой кодирования, часто называется булевой алгеброй по имени английского математика Джорджа Буля, сформулировавшего в 19-м веке положения этого раздела математической логики.

Начальным понятием булевой алгебры является высказывание.

Определение. Высказывание — это любое утверждение, оцениваемое только с точки зрения его истинности. Соответственно, высказывания могут быть истинными или ложными.

Пример: Из двух высказываний

X = «Алмаз имеет кристаллическую структуру» и

Y = «Волга впадает в Балтийское море»

первое истинно, а второе ложно.

Примечание.

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

Высказывания, по существу, и являются переменными булевой алгебры, принимающими значение 1 в случае истинности высказывания и 0, если высказывание ложно. Такие переменные называют логическими (или булевыми) переменными.

Пример: Для двух высказываний приведенного логического примера возможна такая запись: X=1; Y=0.

Определение. Высказывания могут быть простымии сложными. Высказывание называется простым, если его значение не зависит от значений каких-либо других высказываний. Сложным считается высказывание, значение истинности которого определяется значениями других высказываний.

Пример: Известное высказывание «Хорошо живет на свете Винни-Пух, если, конечно, он вовремя подкрепится» является сложным высказыванием: благополучное содержание первой части фразы (первого высказывания) зависит от некоторого условия, составляющего вторую половину предложения (второго высказывания).

Логические операции.

Части сложного высказывания соединяются с помощью логических операций. Известны три простейшие логические операции — отрицание(логическое НЕ), логические умножение (логическое И или конъюнкция),логическое сложение (логическое ИЛИ или дизъюнкция)[11]). Рассмотрим эти операции подробнее.

Двоичное вычитание с использованием дополнительных кодов. - student2.ru 3.6.1.Отрицание (Инверсия).

Эта логическая операция обозначается словом НЕ: Y = НЕ (X). Функция отрицания имеет еще и такое обозначение: Y =`X.

Для образности понятия функции НЕ воспользуемся представлением, известным как диаграмма Эйлера-Венна. Если на этой диаграмме (рис.3.1). заштрихованный круг представляет собой область истинности значений Х, то все, что находится за пределами этого круга, будет представлять НЕ (Х) (или`X).

Таблица соответствия возможных значений аргумента (входных двоичных переменных) значениям функции, называемая в случае булевых функций (логических операций) таблицей истинности, имеет следующий вид для функции логического отрицания НЕ:

X НЕ (Х)
Да (1) Нет (0)
Нет (0) Да (1)

Перечислим некоторые свойства функции НЕ:

1. Двойное отрицание некоторого аргумента Х равно самому аргументу, т.е.

Х= НЕ (НЕ (X)) = X

2. Если имеется некоторое логическое равенство, то отрицание обеих его частей не нарушает этого равенства, т.е.

если X= Y, то`X =`Y.

Наши рекомендации