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

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

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

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

Решение:

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

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

Отсюда:

FFFF.FFFF.FFFF.FFFF.FFFF.FFFF.FFFF.FFFF16=F ∙ 163 + F ∙ 162 + F ∙ 161 + F ∙ 160 + F ∙ 16-1 + F ∙ 16-2 + F ∙ 16-3 + F ∙ 16-4 = 15 ∙ 4096 + 15 ∙ 256 + 15 ∙ 16 + 15 ∙ 1 + 15 ∙ 0.0625 + 15 ∙ 0.00390625 + 15 ∙ 0.000244140625 + 15 ∙ 1.52587890625E-5 = 61440 + 3840 + 240 + 15 + 0.9375 + 0.05859375 + 0.003662109375 + 0.0002288818359375 = 65535.99998474110

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

FFFF.FFFF.FFFF.FFFF.FFFF.FFFF.FFFF.FFFF16 = 65535.99998474110

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

  1. Перевести 65535 в двоичную систему;
  2. Перевести 0.999984741 в двоичную систему;

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

— 65535 2
65534 — 32767 2
1 32766 — 16383 2
1 16382 — 8191 2
1 8190 — 4095 2
1 4094 — 2047 2
1 2046 — 1023 2
1 1022 — 511 2
1 510 — 255 2
1 254 — 127 2
1 126 — 63 2
1 62 — 31 2
1 30 — 15 2
1 14 — 7 2
1 6 — 3 2
1 2 1
1

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

6553510=11111111111111112

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

0.999984741 ∙ 2 = 1.999969482 (1)
0.999969482 ∙ 2 = 1.999938964 (1)
0.999938964 ∙ 2 = 1.999877928 (1)
0.999877928 ∙ 2 = 1.999755856 (1)
0.999755856 ∙ 2 = 1.999511712 (1)
0.999511712 ∙ 2 = 1.999023424 (1)
0.999023424 ∙ 2 = 1.998046848 (1)
0.998046848 ∙ 2 = 1.996093696 (1)
0.996093696 ∙ 2 = 1.992187392 (1)
0.992187392 ∙ 2 = 1.984374784 (1)
0.984374784 ∙ 2 = 1.968749568 (1)

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

0.99998474110=0.111111111112

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

65535.99998474110=1111111111111111.111111111112

Ответ: FFFF.FFFF.FFFF.FFFF.FFFF.FFFF.FFFF.FFFF16 = 1111111111111111.111111111112.

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

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

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