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

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

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

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

Решение:

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

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

Отсюда:

1111.0010110111011100001110108=1 ∙ 83 + 1 ∙ 82 + 1 ∙ 81 + 1 ∙ 80 + 0 ∙ 8-1 + 0 ∙ 8-2 + 1 ∙ 8-3 + 0 ∙ 8-4 + 1 ∙ 8-5 + 1 ∙ 8-6 + 0 ∙ 8-7 + 1 ∙ 8-8 + 1 ∙ 8-9 + 1 ∙ 8-10 + 0 ∙ 8-11 + 1 ∙ 8-12 + 1 ∙ 8-13 + 1 ∙ 8-14 + 0 ∙ 8-15 + 0 ∙ 8-16 + 0 ∙ 8-17 + 0 ∙ 8-18 + 1 ∙ 8-19 + 1 ∙ 8-20 + 1 ∙ 8-21 + 0 ∙ 8-22 + 1 ∙ 8-23 + 0 ∙ 8-24 = 1 ∙ 512 + 1 ∙ 64 + 1 ∙ 8 + 1 ∙ 1 + 0 ∙ 0.125 + 0 ∙ 0.015625 + 1 ∙ 0.001953125 + 0 ∙ 0.000244140625 + 1 ∙ 3.0517578125E-5 + 1 ∙ 3.814697265625E-6 + 0 ∙ 4.7683715820312E-7 + 1 ∙ 5.9604644775391E-8 + 1 ∙ 7.4505805969238E-9 + 1 ∙ 9.3132257461548E-10 + 0 ∙ 1.1641532182693E-10 + 1 ∙ 1.4551915228367E-11 + 1 ∙ 1.8189894035459E-12 + 1 ∙ 2.2737367544323E-13 + 0 ∙ 2.8421709430404E-14 + 0 ∙ 3.5527136788005E-15 + 0 ∙ 4.4408920985006E-16 + 0 ∙ 5.5511151231258E-17 + 1 ∙ 6.9388939039072E-18 + 1 ∙ 8.673617379884E-19 + 1 ∙ 1.0842021724855E-19 + 0 ∙ 1.3552527156069E-20 + 1 ∙ 1.6940658945086E-21 + 0 ∙ 2.1175823681358E-22 = 512 + 64 + 8 + 1 + 0 + 0 + 0.001953125 + 0 + 3.0517578125E-5 + 3.814697265625E-6 + 0 + 5.9604644775391E-8 + 7.4505805969238E-9 + 9.3132257461548E-10 + 0 + 1.4551915228367E-11 + 1.8189894035459E-12 + 2.2737367544323E-13 + 0 + 0 + 0 + 0 + 6.9388939039072E-18 + 8.673617379884E-19 + 1.0842021724855E-19 + 0 + 1.6940658945086E-21 + 0 = 585.0019875252810

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

1111.0010110111011100001110108 = 585.0019875252810

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

  1. Перевести 585 в шестнадцатеричную систему;
  2. Перевести 0.00198752528 в шестнадцатеричную систему;

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

585 16
576 36 16
9 32 2
4

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

58510=24916

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

0.00198752528 ∙ 16 = 0.03180040448 (0)
0.03180040448 ∙ 16 = 0.50880647168 (0)
0.50880647168 ∙ 16 = 8.14090354688 (8)
0.14090354688 ∙ 16 = 2.25445675008 (2)
0.25445675008 ∙ 16 = 4.07130800128 (4)
0.07130800128 ∙ 16 = 1.14092802048 (1)
0.14092802048 ∙ 16 = 2.25484832768 (2)
0.25484832768 ∙ 16 = 4.07757324288 (4)
0.07757324288 ∙ 16 = 1.24117188608 (1)
0.24117188608 ∙ 16 = 3.85875017728 (3)
0.85875017728 ∙ 16 = 13.74000283648 (D)

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

0.0019875252810=0.0082412413D16

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

585.0019875252810=249.0082412413D16

Ответ: 1111.0010110111011100001110108 = 249.0082412413D16.

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

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

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