Выполните вычитания. Обычным способом и в дополнительном коде, переведя 1....

0 голосов
114 просмотров

Выполните вычитания. Обычным способом и в дополнительном коде, переведя
1. предварительно десятичные числа в двоичные:

а) 456 - 112
б) 234 -12
в) 345 -232
г) 456 - 78
д) 567 - 109
е) 67 - 45
2. Выполните действия:
a. 110010+11,01
b. 1111001-1101
c. 10101,1*11
d. 10101110:101


Информатика (17 баллов) | 114 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Там целая история... проще на калькуляторе, а если так то приравнивая к десятичной системе счисления, выбором остатков.. .
Вычитание двоичных чисел. Вычитать числа, будем также столбиком и общее правило тоже, что и для десятичных чисел, вычитание выполняется поразрядно и если в разряде не хватает единицы, то она занимается в старшем. Решим следующий пример:
1101
-
110
=
111

Первый разряд. 1 - 0 =1. Записываем 1.

Второй разряд 0 -1. Не хватает единицы. Занимаем её в старшем разряде. Единица из старшего разряда переходит в младший, как две единицы (потому что старший разряд представляется двойкой большей степени ) 2-1 =1. Записываем 1.

Третий разряд. Единицу этого разряда мы занимали, поэтому сейчас в разряде 0 и есть необходимость занять единицу старшего разряда. 2-1 =1. Записываем 1.

Проверим результат в десятичной системе

1101 - 110 = 13 - 6 = 7 (111) Верное равенство.

Еще один интересный способ выполнения вычитания связан с понятием дополнительного кода, который позволяет свести вычитание к сложению. Получается число в дополнительном коде исключительно просто, берём число, заменяем нули на единицы, единицы наоборот заменяем на нули и к младшему разряду добавляем единицу. Например, 10010, в дополнительном коде будет 011011.

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

Пример: 34 - 22 = 12

Запишем этот пример в двоичном виде. 100010 - 10110 = 1100

Дополнительный код числа 10110 будет такой

01001 + 00001 = 01010. Тогда исходный пример можно заменить сложением так 100010 + 01010 = 101100 Далее необходимо отбросить одну единицу в старшем разряде. Если это сделать то, получим 001100. Отбросим незначащие нули и получим 1100, то есть пример решён правильно

(128 баллов)