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

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

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

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

Решение:

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

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

Отсюда:

1010101011100.101111010101011100=1 ∙ 101010101110012 + 0 ∙ 101010101110011 + 1 ∙ 101010101110010 + 0 ∙ 10101010111009 + 1 ∙ 10101010111008 + 0 ∙ 10101010111007 + 1 ∙ 10101010111006 + 0 ∙ 10101010111005 + 1 ∙ 10101010111004 + 1 ∙ 10101010111003 + 1 ∙ 10101010111002 + 0 ∙ 10101010111001 + 0 ∙ 10101010111000 + 1 ∙ 1010101011100-1 + 0 ∙ 1010101011100-2 + 1 ∙ 1010101011100-3 + 1 ∙ 1010101011100-4 + 1 ∙ 1010101011100-5 = 1 ∙ 1.1281781128912E+144 + 0 ∙ 1.1168963306577E+132 + 1 ∙ 1.1057273662575E+120 + 0 ∙ 1.0946700915123E+108 + 1 ∙ 1.0837233895254E+96 + 0 ∙ 1.0728861545691E+84 + 1 ∙ 1.0621572919729E+72 + 0 ∙ 1.0515357180132E+60 + 1 ∙ 1.0410203598035E+48 + 1 ∙ 1.0306101551862E+36 + 1 ∙ 1.0203040526252E+24 + 0 ∙ 1010101011100 + 0 ∙ 1 + 1 ∙ 9.8999999902089E-13 + 0 ∙ 9.8009999806136E-25 + 1 ∙ 9.7029899712112E-37 + 1 ∙ 9.6059600619988E-49 + 1 ∙ 9.5099004519735E-61 = 1.1281781128912E+144 + 0 + 1.1057273662575E+120 + 0 + 1.0837233895254E+96 + 0 + 1.0621572919729E+72 + 0 + 1.0410203598035E+48 + 1.0306101551862E+36 + 1.0203040526252E+24 + 0 + 0 + 9.8999999902089E-13 + 0 + 9.7029899712112E-37 + 9.6059600619988E-49 + 9.5099004519735E-61 = 1.1281781128912E+14410

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

1010101011100.101111010101011100 = 1.1281781128912E+14410

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

  1. Перевести 0 в шестнадцатеричную систему;
  2. Перевести 0.1281781128912E+144 в шестнадцатеричную систему;

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

0

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

010=016

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

0.1281781128912E+144 ∙ 16 = 2.0508498062592E+144 (0)
0.0508498062592E+144 ∙ 16 = 8.135969001472E+143 (0)
0.135969001472E+143 ∙ 16 = 2.175504023552E+143 (0)
0.175504023552E+143 ∙ 16 = 2.808064376832E+143 (0)
0.808064376832E+143 ∙ 16 = 1.2929030029312E+144 (0)
0.2929030029312E+144 ∙ 16 = 4.6864480468992E+144 (0)
0.6864480468992E+144 ∙ 16 = 1.0983168750387E+145 (0)
0.0983168750387E+145 ∙ 16 = 1.5730700006192E+145 (0)
0.5730700006192E+145 ∙ 16 = 9.1691200099072E+145 (0)
0.1691200099072E+145 ∙ 16 = 2.7059201585152E+145 (0)
0.7059201585152E+145 ∙ 16 = 1.1294722536243E+146 (0)

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

0.1281781128912E+14410=0.0000000000016

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

1.1281781128912E+14410=0.0000000000016

Ответ: 1010101011100.101111010101011100 = 0.0000000000016.

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

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

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