Умножение в двоичной системе счисления калькулятор. Счет в различных системах счисления

Сложение и вычитание чисел в любой позиционной системе счисления выполняется поразрядно. Для нахождения суммы складываются единицы одного и того же разряда, начиная с единиц первого разряда (справа). Если сумма единиц складываемого разряда превышает число, равное основанию системы, то из этой суммы выделяется единица старшего разряда, которая и добавляется к соседнему разряду слева. Поэтому сложение можно производить непосредственно, как и в десятичной системе, в "столбик", используя таблицу сложения однозначных чисел.

Например, в системе счисления с основанием 4 таблица сложения имеет такой вид:

Еще проще таблица сложения в двоичной системе счисления:

0 + 0 = 0 0 + 1 = 1 1 + 1 = 10.

Пример:

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

Пример: 2311 4 - 1223 4 .

  1. В первом разряде от 1 нельзя отнять 3, "занимаем" единицу второго разряда, она содержит четыре единицы первого разряда. К ним добавляем имеющуюся единицу первого разряда, всего получим пять единиц в первом разряде - в четверичной системе они записываются как 11.
  2. Вычитаем в первом разряде из пяти единиц три единицы: 11-3=2.
  3. Во втором разряде единиц не осталось, занимаем в третьем (в третьем останется 2 единицы). Единица третьего разряда содержит 4 единицы второго. Вычитаем во втором разряде: 4-2 = 2.
  4. В третьем разряде: 2-2=0.
  5. В четвертом разряде: 2-1=1.

Примеры перевода чисел в различные системы счисления

Пример №1
Переведем число 12 из десятичной в двоичную систему счисления
Решение

Переведем число 12 10 в 2-ичную систему счисления, при помощи последовательного деления на 2, до тех пор, пока неполное частное не будет равно нулю. В результате будет получено число из остатков деления записанное справа налево.

12 : 2 = 6 остаток: 0
6 : 2 = 3 остаток: 0
3 : 2 = 1 остаток: 1
1 : 2 = 0 остаток: 1

12 10 = 1100 2

Пример №2
Переведем число 12.3 из десятичной в двоичную систему счисления

12.3 10 = 1100.010011001100110011001100110011 2

Решение

Переведем целую часть 12 числа 12.3 10 в 2-ичную систему счисления, при помощи последовательного деления на 2, до тех пор, пока неполное частное не будет равно нулю. В результате будет получено число из остатков деления записанное справа налево.

12 : 2 = 6 остаток: 0
6 : 2 = 3 остаток: 0
3 : 2 = 1 остаток: 1
1 : 2 = 0 остаток: 1

12 10 = 1100 2

Переведем дробную часть 0.3 числа 12.3 10 в 2-ичную систему счисления, при помощи последовательного умножения на 2, до тех пор, пока в дробной части произведения не получиться ноль или не будет достигнуто необходимое количество знаков после запятой. Если в результате умножения целая часть не равна нулю, тогда необходимо заменить значение целой части на ноль. В результате будет получено число из целых частей произведений, записанное слева направо.

0.3 · 2 = 0 .6
0.6 · 2 = 1 .2
0.2 · 2 = 0 .4
0.4 · 2 = 0 .8
0.8 · 2 = 1 .6
0.6 · 2 = 1 .2
0.2 · 2 = 0 .4
0.4 · 2 = 0 .8
0.8 · 2 = 1 .6
0.6 · 2 = 1 .2
0.2 · 2 = 0 .4
0.4 · 2 = 0 .8
0.8 · 2 = 1 .6
0.6 · 2 = 1 .2
0.2 · 2 = 0 .4
0.4 · 2 = 0 .8
0.8 · 2 = 1 .6
0.6 · 2 = 1 .2
0.2 · 2 = 0 .4
0.4 · 2 = 0 .8
0.8 · 2 = 1 .6
0.6 · 2 = 1 .2
0.2 · 2 = 0 .4
0.4 · 2 = 0 .8
0.8 · 2 = 1 .6
0.6 · 2 = 1 .2
0.2 · 2 = 0 .4
0.4 · 2 = 0 .8
0.8 · 2 = 1 .6
0.6 · 2 = 1 .2

0.3 10 = 0.010011001100110011001100110011 2
12.3 10 = 1100.010011001100110011001100110011 2

Пример №3
Переведем число 10011 из двоичной системы в десятичную систему счисления
Решение

Переведем число 10011 2 в десятичную систему счисления, для этого сначала запишем позицию каждой цифры в числе с права налево, начиная с нуля

Каждая позиция цифры будет степенью числа 2, так как система счисления 2-ичная. Необходимо последовательно умножить каждое число 10011 2 на 2 в степени соответствующей позиции числа и затем сложить с последующим произведением следующего числа в степени соответствующей его позиции.

10011 2 = 1 ⋅ 2 4 + 0 ⋅ 2 3 + 0 ⋅ 2 2 + 1 ⋅ 2 1 + 1 ⋅ 2 0 = 19 10

Пример №4
Переведем число 11.101 из двоичной системы в десятичную систему счисления

11.101 2 = 3.625 10

Решение

Переведем число 11.101 2 в десятичную систему счисления, для этого сначала запишем позицию каждой цифры в числе

Каждая позиция цифры будет степенью числа 2, так как система счисления 2-ичная. Необходимо последовательно умножить каждое число 11.101 2 на 2 в степени соответствующей позиции числа и затем сложить с последующим произведением следующего числа в степени соответствующей его позиции.

11.101 2 = 1 ⋅ 2 1 + 1 ⋅ 2 0 + 1 ⋅ 2 -1 + 0 ⋅ 2 -2 + 1 ⋅ 2 -3 = 3.625 10

Пример №5
Переведем число 1583 из десятичной системы в шестнадцатеричную систему счисления

1583 10 = 62F 16

Решение

Переведем число 1583 10 в 16-ичную систему счисления, при помощи последовательного деления на 16, до тех пор, пока неполное частное не будет равно нулю. В результате будет получено число из остатков деления записанное справа налево.

1583 : 16 = 98 остаток: 15, 15 = F
98 : 16 = 6 остаток: 2
6 : 16 = 0 остаток: 6

1583 10 = 62F 16

Пример №6
Переведем число 1583.56 из десятичной системы в шестнадцатеричную систему счисления

1583.56 10 = 62F.8F5C28F5C28F5C28F5C28F5C28F5C2 16

Решение

Переведем целую часть 1583 числа 1583.56 10 в 16-ичную систему счисления, при помощи последовательного деления на 16, до тех пор, пока неполное частное не будет равно нулю. В результате будет получено число из остатков деления записанное справа налево.

1583 : 16 = 98 остаток: 15, 15 = F
98 : 16 = 6 остаток: 2
6 : 16 = 0 остаток: 6

1583 10 = 62F 16

Переведем дробную часть 0.56 числа 1583.56 10 в 16-ичную систему счисления, при помощи последовательного умножения на 16, до тех пор, пока в дробной части произведения не получиться ноль или не будет достигнуто необходимое количество знаков после запятой. Если в результате умножения целая часть не равна нулю, тогда необходимо заменить значение целой части на ноль. В результате будет получено число из целых частей произведений, записанное слева направо.

0.56 · 16 = 8 .96
0.96 · 16 = 15 .36, 15 = F
0.36 · 16 = 5 .76
0.76 · 16 = 12 .16, 12 = C
0.16 · 16 = 2 .56
0.56 · 16 = 8 .96
0.96 · 16 = 15 .36, 15 = F
0.36 · 16 = 5 .76
0.76 · 16 = 12 .16, 12 = C
0.16 · 16 = 2 .56
0.56 · 16 = 8 .96
0.96 · 16 = 15 .36, 15 = F
0.36 · 16 = 5 .76
0.76 · 16 = 12 .16, 12 = C
0.16 · 16 = 2 .56
0.56 · 16 = 8 .96
0.96 · 16 = 15 .36, 15 = F
0.36 · 16 = 5 .76
0.76 · 16 = 12 .16, 12 = C
0.16 · 16 = 2 .56
0.56 · 16 = 8 .96
0.96 · 16 = 15 .36, 15 = F
0.36 · 16 = 5 .76
0.76 · 16 = 12 .16, 12 = C
0.16 · 16 = 2 .56
0.56 · 16 = 8 .96
0.96 · 16 = 15 .36, 15 = F
0.36 · 16 = 5 .76
0.76 · 16 = 12 .16, 12 = C
0.16 · 16 = 2 .56

0.56 10 = 0.8F5C28F5C28F5C28F5C28F5C28F5C2 16
1583.56 10 = 62F.8F5C28F5C28F5C28F5C28F5C28F5C2 16

Пример №7
Переведем число A12DCF из шестнадцатеричной системы в десятичную систему счисления

A12DCF 16 = 10563023 10

Решение

Переведем число A12DCF 16 в десятичную систему счисления, для этого сначала запишем позицию каждой цифры в числе с права налево, начиная с нуля

Каждая позиция цифры будет степенью числа 16, так как система счисления 16-ичная. Необходимо последовательно умножить каждое число A12DCF 16 на 16 в степени соответствующей позиции числа и затем сложить с последующим произведением следующего числа в степени соответствующей его позиции.
2

1 0 -1 -2 -3 Число A 1 2 D C F 1 2 A
Каждая позиция цифры будет степенью числа 16, так как система счисления 16-ичная. Необходимо последовательно умножить каждое число A12DCF.12A 16 на 16 в степени соответствующей позиции числа и затем сложить с последующим произведением следующего числа в степени соответствующей его позиции.
A 16 = 10 10
D 16 = 13 10
C 16 = 12 10
F 16 = 15 10

A12DCF.12A 16 = 10 ⋅ 16 5 + 1 ⋅ 16 4 + 2 ⋅ 16 3 + 13 ⋅ 16 2 + 12 ⋅ 16 1 + 15 ⋅ 16 0 + 1 ⋅ 16 -1

1 0 Число 1 0 1 0 1 0 0 0 1 1
Каждая позиция цифры будет степенью числа 2, так как система счисления 2-ичная. Необходимо последовательно умножить каждое число 1010100011 2 на 2 в степени соответствующей позиции числа и затем сложить с последующим произведением следующего числа в степени соответствующей его позиции.

1010100011 2 = 1 ⋅ 2 9 + 0 ⋅ 2 8 + 1 ⋅ 2 7 + 0 ⋅ 2 6 + 1 ⋅ 2 5 + 0 ⋅ 2 4 + 0 ⋅ 2 3 + 0 ⋅ 2 2 + 1 ⋅ 2 1 + 1 ⋅ 2 0 = 675 10

Переведем число 675 10 в 16-ичную систему счисления, при помощи последовательного деления на 16, до тех пор, пока неполное частное не будет равно нулю. В результате будет получено число из остатков деления записанное справа налево.

675 : 16 = 42 остаток: 3
42 : 16 = 2 остаток: 10, 10 = A
2 : 16 = 0 остаток: 2

675 10 = 2A3 16

Арифметические операции в двоичной системе счисления

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

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

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

Арифметические операции в восьмеричной системе счисления

Для представления чисел в восьмеричной системе счисления используются восемь цифр(0, 1, 2, 3, 4, 5, 6, 7), так как основа восьмеричной системы счисления равна8. Все операции производятся посредством этих восьми цифр. Операции сложения и умножения в восьмеричной системе счисления производятся с помощью следующих таблиц:

Таблицы сложения и умножения в восьмеричной системе счисления

Пример 5 .Вычесть восьмеричные числа 5153- 1671и2426,63- 1706,71

Пример 6 .Умножить восьмеричные числа51 16и16,6 3,2

Арифметические операции в шестнадцатеричной системе счисления

Для представления чисел в шестнадцатеричной системе счисления используются шестнадцать цифр:0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. В шестнадцатеричной системе числошестнадцатьпишется как10. Выполнение арифметических операций в шестнадцатеричной системе производится как и в десятиричной системе, но при выполнении арифметических операций над большими числами необходимо использовать таблицы сложения и умножения чисел в шестнадцатеричной системе счисления.

Таблица сложения в шестнадцатеричной системе счисления

Таблица умножения в шестнадцатеричной системе счисления

Пример 7 .Сложить шестнадцатеричные числа

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

Вместе с этим калькулятором также используют следующие:
Перевод чисел в двоичную, шестнадцатеричную, десятичную, восьмеричную системы счисления
Умножение двоичных чисел
Формат представления чисел с плавающей запятой
Пример №1 . Представить число 133,54 в форме числа с плавающей точкой.
Решение . Представим число 133.54 в нормализованном экспоненциальном виде:
1.3354*10 2 = 1.3354*exp 10 2
Число 1.3354*exp 10 2 состоит из двух частей: мантиссы M=1.3354 и экспоненты exp 10 =2
Если мантисса находится в диапазоне 1 ≤ M Представление числа в денормализованном экспоненциальном виде .
Если мантисса находится в диапазоне 0,1 ≤ M Представим число в денормализованном экспоненциальном виде: 0.13354*exp 10 3

Пример №2 . Представить двоичное число 101.10 2 в нормализованном виде, записать в 32-битом стандарте IEEE754.
Таблица истинности


Вычисление пределов

Арифметика в двоичной системе счисления

Арифметические действия в двоичной системе выполняются так же, как и в десятичной. Но, если в десятичной системе счисления перенос и заём осуществляется по десять единиц, то в двоичной - по две единицы. В таблице представлены правила сложения и вычитания в двоичной системе счисления.
  1. При сложении в двоичной системе системе счисления двух единиц в данном разряде будет 0 и появится перенос единицы в старший разряд.
  2. При вычитании из нуля единицы производится заём единицы из старшего разряда, где есть 1 . Единица, занятая в этом разряде, даёт две единицы в разряде, где вычисляется действие, а также по единице, во всех промежуточных разрядах.

Сложение чисел с учетом их знаков на машине представляет собой последовательность следующих действий:

  • преобразование исходных чисел в указанный код;
  • поразрядное сложение кодов;
  • анализ полученного результата.
При выполнении операции в обратном (модифицированном обратном) коде если в результате сложения в знаковом разряде возникает единица переноса, она прибавляется к младшему разряду суммы.
При выполнении операции в дополнительном (модифицированном дополнительном) коде если в результате сложения в знаковом разряде возникает единица переноса, она отбрасывается.
Операция вычитания в ЭВМ выполняется через сложение по правилу: Х-У=Х+(-У). Дальнейшие действия выполняются также как и для операции сложения.

Пример №1 .
Дано: х=0,110001; y= -0,001001, сложить в обратном модифицированном коде.

Дано: х=0,101001; y= -0,001101, сложить в дополнительном модифицированном коде.

Пример №2 . Решить примеры на вычитание двоичных чисел, используя метод дополнения до 1 и циклического переноса.
а) 11 - 10.
Решение .
Представим числа 11 2 и -10 2 в обратном коде.

Двоичное число 0000011 имеет обратный код 0,0000011

Сложим числа 00000011 и 11111101

7 6 5 4 3 2 1 0
1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0

7 6 5 4 3 2 1 0
1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0

В 2-ом разряде возникло переполнение (1 + 1 = 10). Поэтому записываем 0, а 1 переносим на 3-й разряд.
7 6 5 4 3 2 1 0
1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0

7 6 5 4 3 2 1 0
1 1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0 0

7 6 5 4 3 2 1 0
1 1 1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0

7 6 5 4 3 2 1 0
1 1 1 1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0 0

7 6 5 4 3 2 1 0
1 1 1 1 1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0 0 0

7 6 5 4 3 2 1 0
1 1 1 1 1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0 0 0 0

В итоге получаем:
7 6 5 4 3 2 1 0
1 1 1 1 1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0 0 0 0

Возник перенос из знакового разряда. Добавим его (т.е. 1) к полученному числу (тем самым осуществляя процедуру циклического переноса).
В итоге получаем:
7 6 5 4 3 2 1 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1

Результат сложения: 00000001. Переведем в десятичное представление . Для перевода целой части необходимо умножить разряд числа на соответствующую ему степень разряда.
00000001 = 2 7 *0 + 2 6 *0 + 2 5 *0 + 2 4 *0 + 2 3 *0 + 2 2 *0 + 2 1 *0 + 2 0 *1 = 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 = 1
Результат сложения (в десятичном представлении): 1

б) 111-010 Представим числа 111 2 и -010 2 в обратном коде.
Обратный код для положительного числа совпадает с прямым кодом. Для отрицательного числа все цифры числа заменяются на противоположные (1 на 0, 0 на 1), а в знаковый разряд заносится единица.
Двоичное число 0000111 имеет обратный код 0,0000111
Двоичное число 0000010 имеет обратный код 1,1111101
Сложим числа 00000111 и 11111101
В 0-ом разряде возникло переполнение (1 + 1 = 10). Поэтому записываем 0, а 1 переносим на 1-й разряд.

7 6 5 4 3 2 1 0
1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0

В 1-ом разряде возникло переполнение (1 + 1 = 10). Поэтому записываем 0, а 1 переносим на 2-й разряд.
7 6 5 4 3 2 1 0
1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 0

В 2-ом разряде возникло переполнение (1 + 1 + 1 = 11). Поэтому записываем 1, а 1 переносим на 3-й разряд.
7 6 5 4 3 2 1 0
1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
1 0 0

В 3-ом разряде возникло переполнение (1 + 1 = 10). Поэтому записываем 0, а 1 переносим на 4-й разряд.
7 6 5 4 3 2 1 0
1 1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 1 0 0

В 4-ом разряде возникло переполнение (1 + 1 = 10). Поэтому записываем 0, а 1 переносим на 5-й разряд.
7 6 5 4 3 2 1 0
1 1 1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 0 1 0 0

В 5-ом разряде возникло переполнение (1 + 1 = 10). Поэтому записываем 0, а 1 переносим на 6-й разряд.
7 6 5 4 3 2 1 0
1 1 1 1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 0 0 1 0 0

В 6-ом разряде возникло переполнение (1 + 1 = 10). Поэтому записываем 0, а 1 переносим на 7-й разряд.
7 6 5 4 3 2 1 0
1 1 1 1 1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 0 0 0 1 0 0

В 7-ом разряде возникло переполнение (1 + 1 = 10). Поэтому записываем 0, а 1 переносим на 8-й разряд.
7 6 5 4 3 2 1 0
1 1 1 1 1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0 1 0 0

В итоге получаем:
7 6 5 4 3 2 1 0
1 1 1 1 1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0 1 0 0

Возник перенос из знакового разряда. Добавим его (т.е. 1) к полученному числу (тем самым осуществляя процедуру циклического переноса).
В итоге получаем:
7 6 5 4 3 2 1 0
0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 1
0 0 0 0 0 1 0 1

Результат сложения: 00000101
Получили число 00000101. Для перевода целой части необходимо умножить разряд числа на соответствующую ему степень разряда.
00000101 = 2 7 *0 + 2 6 *0 + 2 5 *0 + 2 4 *0 + 2 3 *0 + 2 2 *1 + 2 1 *0 + 2 0 *1 = 0 + 0 + 0 + 0 + 0 + 4 + 0 + 1 = 5
Результат сложения (в десятичном представлении): 5

Сложение двоичных вещественных чисел с плавающей запятой

В компьютере любое число может быть представлено в формате с плавающей точкой. Формат с плавающей точкой показан на рисунке:


Например, число 10101 в формате с плавающей точкой можно записать так:


В компьютерах используется нормализованная форма записи числа, в которой положение запятой всегда задается перед значащей цифрой мантиссы, т.е. выполняется условие:
b -1 ≤|M|Нормализованное число - это число, у которого после запятой идет значащая цифра (т.е. 1 в двоичной системе счисления). Пример нормализации:
0,00101*2 100 =0,101*2 10
111,1001*2 10 =0,111001*2 101
0,01101*2 -11 =0,1101*2 -100
11,1011*2 -101 =0,11011*2 -11

При сложении чисел с плавающей точкой выравнивание порядков выполняют в сторону большего порядка:

Алгоритм сложения чисел с плавающей точкой:

  1. Выравнивание порядков;
  2. Сложение мантисс в дополнительном модифицированном коде;
  3. Нормализация результата.

Пример №4 .
A=0,1011*2 10 , B=0,0001*2 11
1. Выравнивание порядков;
A=0,01011*2 11 , B=0,0001*2 11
2. Сложение мантисс в дополнительном модифицированном коде;
MA доп.мод. =00,01011
MB доп.мод. =00,0001
00,01011
+ 00,00010
=
00,01101
A+B=0,01101*2 11
3. Нормализация результата.
A+B=0,1101*2 10

Пример №3 . Записать десятичное число в двоично-десятичной системе счисления и сложить два числа в двоичной системе счисления.