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

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

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

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

Решение:

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

An = an-1 ∙ qn-1 + an-2 ∙ qn-2 + ∙∙∙ + a0 ∙ q0

Отсюда:

101001010512=1 ∙ 5128 + 0 ∙ 5127 + 1 ∙ 5126 + 0 ∙ 5125 + 0 ∙ 5124 + 1 ∙ 5123 + 0 ∙ 5122 + 1 ∙ 5121 + 0 ∙ 5120 = 1 ∙ 4.7223664828696E+21 + 0 ∙ 9.2233720368548E+18 + 1 ∙ 18014398509481984 + 0 ∙ 35184372088832 + 0 ∙ 68719476736 + 1 ∙ 134217728 + 0 ∙ 262144 + 1 ∙ 512 + 0 ∙ 1 = 4.7223664828696E+21 + 0 + 18014398509481984 + 0 + 0 + 134217728 + 0 + 512 + 0 = 4.7223844972683E+2110

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

101001010512 = 4.7223844972683E+2110

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

  1. Перевести 18014398643699712 в шестнадцатеричную систему;
  2. Перевести 0.7223844972683E+21 в шестнадцатеричную систему;

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

18014398643699712 16
1.80143986437E+16 1.1258999152312E+15 16
0 1.1258999152312E+15 70368744701952 16
0 70368744701952 4398046543872 16
0 4398046543872 274877908992 16
0 274877908992 17179869312 16
0 17179869312 1073741832 16
0 1073741824 67108864 16
8 67108864 4194304 16
0 4194304 262144 16
0 262144 16384 16
0 16384 1024 16
0 1024 64 16
0 64 4
0

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

1801439864369971210=4000000800000016

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

0.7223844972683E+21 ∙ 16 = 1.1558151956293E+22 ()
0.1558151956293E+22 ∙ 16 = 2.4930431300688E+22 ()
0.4930431300688E+22 ∙ 16 = 7.8886900811008E+22 ()
0.8886900811008E+22 ∙ 16 = 1.4219041297613E+23 ()
0.4219041297613E+23 ∙ 16 = 6.7504660761808E+23 ()
0.7504660761808E+23 ∙ 16 = 1.2007457218893E+24 ()
0.2007457218893E+24 ∙ 16 = 3.2119315502288E+24 ()
0.2119315502288E+24 ∙ 16 = 3.3909048036608E+24 ()
0.3909048036608E+24 ∙ 16 = 6.2544768585728E+24 ()
0.2544768585728E+24 ∙ 16 = 4.0716297371648E+24 ()
0.0716297371648E+24 ∙ 16 = 1.1460757946368E+24 ()

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

0.7223844972683E+2110=0.16

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

4.7223844972683E+2110=40000008000000.16

Ответ: 101001010512 = 40000008000000.16.

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

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

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