Перевести число 100000110.10101 из восьмеричной системы в двоичную

Задача: перевести число 100000110.10101 из восьмеричной в двоичную систему счисления.

Для перевода 100000110.10101 из восьмеричной в двоичную систему счисления, воспользуемся следующим алгоритмом:

  1. Переведем число 100000110.10101 из восьмеричной системы в десятичную;
  2. Полученное число переведём из десятичной системы в двоичную;

Решение:

1. Для перевода числа 100000110.10101 в десятичную систему воспользуемся формулой:

An = an-1 ∙ qn-1 + an-2 ∙ qn-2 + ∙∙∙ + a0 ∙ q0 + a-1 ∙ q-1 + ∙∙∙ + a-m ∙ q-m

Отсюда:

100000110.101018=1 ∙ 88 + 0 ∙ 87 + 0 ∙ 86 + 0 ∙ 85 + 0 ∙ 84 + 0 ∙ 83 + 1 ∙ 82 + 1 ∙ 81 + 0 ∙ 80 + 1 ∙ 8-1 + 0 ∙ 8-2 + 1 ∙ 8-3 + 0 ∙ 8-4 + 1 ∙ 8-5 = 1 ∙ 16777216 + 0 ∙ 2097152 + 0 ∙ 262144 + 0 ∙ 32768 + 0 ∙ 4096 + 0 ∙ 512 + 1 ∙ 64 + 1 ∙ 8 + 0 ∙ 1 + 1 ∙ 0.125 + 0 ∙ 0.015625 + 1 ∙ 0.001953125 + 0 ∙ 0.000244140625 + 1 ∙ 3.0517578125E-5 = 16777216 + 0 + 0 + 0 + 0 + 0 + 64 + 8 + 0 + 0.125 + 0 + 0.001953125 + 0 + 3.0517578125E-5 = 16777288.12698410

Таким образом:

100000110.101018 = 16777288.12698410

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

  1. Перевести 16777288 в двоичную систему;
  2. Перевести 0.126984 в двоичную систему;

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

16777288 2
16777288 8388644 2
0 8388644 4194322 2
0 4194322 2097161 2
0 2097160 1048580 2
1 1048580 524290 2
0 524290 262145 2
0 262144 131072 2
1 131072 65536 2
0 65536 32768 2
0 32768 16384 2
0 16384 8192 2
0 8192 4096 2
0 4096 2048 2
0 2048 1024 2
0 1024 512 2
0 512 256 2
0 256 128 2
0 128 64 2
0 64 32 2
0 32 16 2
0 16 8 2
0 8 4 2
0 4 2 2
0 2 1
0

Полученные остатки записываем в обратном порядке, таким образом:

1677728810=10000000000000000010010002

2.2 Для перевода десятичной дроби 0.126984 в двоичную систему, необходимо выполнить последовательное умножение дроби на 2, до тех пор, пока дробная часть не станет равной 0 или пока не будет достигнута заданная точность вычисления. Получаем:

0.126984 ∙ 2 = 0.253968 (0)
0.253968 ∙ 2 = 0.507936 (0)
0.507936 ∙ 2 = 1.015872 (1)
0.015872 ∙ 2 = 0.031744 (0)
0.031744 ∙ 2 = 0.063488 (0)
0.063488 ∙ 2 = 0.126976 (0)
0.126976 ∙ 2 = 0.253952 (0)
0.253952 ∙ 2 = 0.507904 (0)
0.507904 ∙ 2 = 1.015808 (1)
0.015808 ∙ 2 = 0.031616 (0)
0.031616 ∙ 2 = 0.063232 (0)

Ответом станет прямая последовательность целых частей произведения. Т.е.

0.12698410=0.001000001002

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

16777288.12698410=1000000000000000001001000.001000001002

Ответ: 100000110.101018 = 1000000000000000001001000.001000001002.

Смотрите также:

  • Смотрите также
  • Калькуляторы
  • Последние переводы
  • Какое число еще хотите перевести?

    * Все поля обязательны
  • Дробное число вводите через точку
  • Введите от 2 до 16
  • Введите от 2 до 16
Подписаться
Уведомить о
guest
0 Комментарий
Межтекстовые Отзывы
Посмотреть все комментарии
Adblock
detector