Перевести число 01001010 из 0101010-ой системы в 01010101-ую

Задача: перевести число 01001010 из 0101010-ой в 01010101-ую систему счисления.

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

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

Решение:

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

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

Отсюда:

010010100101010=0 ∙ 01010107 + 1 ∙ 01010106 + 0 ∙ 01010105 + 0 ∙ 01010104 + 1 ∙ 01010103 + 0 ∙ 01010102 + 1 ∙ 01010101 + 0 ∙ 01010100 = 0 ∙ 1.072878636961E+35 + 1 ∙ 1.0621509127423E+30 + 0 ∙ 1.0515304551453E+25 + 0 ∙ 1.04101619161E+20 + 1 ∙ 1030607060301000 + 0 ∙ 10203020100 + 1 ∙ 101010 + 0 ∙ 1 = 0 + 1.0621509127423E+30 + 0 + 0 + 1030607060301000 + 0 + 101010 + 0 = 1.0621509127423E+3010

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

010010100101010 = 1.0621509127423E+3010

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

  1. Перевести 2426314299245854720 в 01010101-ую систему;
  2. Перевести 0.0621509127423E+30 в 01010101-ую систему;

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

— 2426314299245854720 01010101
2.4263142992449E+18 — 2402051180273 01010101
2402050481030 — 2378030 01010101
2020202 2

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

242631429924585472010=201010101

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

0.0621509127423E+30 ∙ 01010101 = 6.277869911191E+34 (0)
0.277869911191E+34 ∙ 01010101 = 2.8067667516394E+39 (0)
0.8067667516394E+39 ∙ 01010101 = 8.1491590259771E+44 (0)
0.1491590259771E+44 ∙ 01010101 = 1.5066568129849E+49 (0)
0.5066568129849E+49 ∙ 01010101 = 5.1177455345286E+54 (0)
0.1177455345286E+54 ∙ 01010101 = 1.1893488217287E+59 (0)
0.1893488217287E+59 ∙ 01010101 = 1.9126143417698E+64 (0)
0.9126143417698E+64 ∙ 01010101 = 9.2183265923602E+69 (0)
0.2183265923602E+69 ∙ 01010101 = 2.2053190926963E+74 (0)
0.2053190926963E+74 ∙ 01010101 = 2.0739302085163E+79 (0)
0.0739302085163E+79 ∙ 01010101 = 7.4676977552523E+83 (0)

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

0.0621509127423E+3010=0.0000000000001010101

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

1.0621509127423E+3010=2.0000000000001010101

Ответ: 010010100101010 = 2.0000000000001010101.

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

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

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