Перевести число 001101101110.111011010000 из шестнадцатеричной системы в восьмеричную

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

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

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

Решение:

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

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

Отсюда:

001101101110.11101101000016=0 ∙ 1611 + 0 ∙ 1610 + 1 ∙ 169 + 1 ∙ 168 + 0 ∙ 167 + 1 ∙ 166 + 1 ∙ 165 + 0 ∙ 164 + 1 ∙ 163 + 1 ∙ 162 + 1 ∙ 161 + 0 ∙ 160 + 1 ∙ 16-1 + 1 ∙ 16-2 + 1 ∙ 16-3 + 0 ∙ 16-4 + 1 ∙ 16-5 + 1 ∙ 16-6 + 0 ∙ 16-7 + 1 ∙ 16-8 + 0 ∙ 16-9 + 0 ∙ 16-10 + 0 ∙ 16-11 + 0 ∙ 16-12 = 0 ∙ 17592186044416 + 0 ∙ 1099511627776 + 1 ∙ 68719476736 + 1 ∙ 4294967296 + 0 ∙ 268435456 + 1 ∙ 16777216 + 1 ∙ 1048576 + 0 ∙ 65536 + 1 ∙ 4096 + 1 ∙ 256 + 1 ∙ 16 + 0 ∙ 1 + 1 ∙ 0.0625 + 1 ∙ 0.00390625 + 1 ∙ 0.000244140625 + 0 ∙ 1.52587890625E-5 + 1 ∙ 9.5367431640625E-7 + 1 ∙ 5.9604644775391E-8 + 0 ∙ 3.7252902984619E-9 + 1 ∙ 2.3283064365387E-10 + 0 ∙ 1.4551915228367E-11 + 0 ∙ 9.0949470177293E-13 + 0 ∙ 5.6843418860808E-14 + 0 ∙ 3.5527136788005E-15 = 0 + 0 + 68719476736 + 4294967296 + 0 + 16777216 + 1048576 + 0 + 4096 + 256 + 16 + 0 + 0.0625 + 0.00390625 + 0.000244140625 + 0 + 9.5367431640625E-7 + 5.9604644775391E-8 + 0 + 2.3283064365387E-10 + 0 + 0 + 0 + 0 = 73032274192.06710

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

001101101110.11101101000016 = 73032274192.06710

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

  1. Перевести 73032274192 в восьмеричную систему;
  2. Перевести 0.067 в восьмеричную систему;

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

73032274192 8
73032274192 9129034274 8
0 9129034272 1141129284 8
2 1141129280 142641160 8
4 142641160 17830145 8
0 17830144 2228768 8
1 2228768 278596 8
0 278592 34824 8
4 34824 4353 8
0 4352 544 8
1 544 68 8
0 64 8 8
4 8 1
0

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

7303227419210=10401040104208

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

0.067 ∙ 8 = 0.536 (0)
0.536 ∙ 8 = 4.288 (4)
0.288 ∙ 8 = 2.304 (2)
0.304 ∙ 8 = 2.432 (2)
0.432 ∙ 8 = 3.456 (3)
0.456 ∙ 8 = 3.648 (3)
0.648 ∙ 8 = 5.184 (5)
0.184 ∙ 8 = 1.472 (1)
0.472 ∙ 8 = 3.776 (3)
0.776 ∙ 8 = 6.208 (6)
0.208 ∙ 8 = 1.664 (1)

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

0.06710=0.042233513618

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

73032274192.06710=1040104010420.042233513618

Ответ: 001101101110.11101101000016 = 1040104010420.042233513618.

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

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

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