Перевести число 100000000000000000000000000000000000000000000000000000 из двоичной системы в восьмеричную

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

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

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

Решение:

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

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

Отсюда:

1000000000000000000000000000000000000000000000000000002=1 ∙ 253 + 0 ∙ 252 + 0 ∙ 251 + 0 ∙ 250 + 0 ∙ 249 + 0 ∙ 248 + 0 ∙ 247 + 0 ∙ 246 + 0 ∙ 245 + 0 ∙ 244 + 0 ∙ 243 + 0 ∙ 242 + 0 ∙ 241 + 0 ∙ 240 + 0 ∙ 239 + 0 ∙ 238 + 0 ∙ 237 + 0 ∙ 236 + 0 ∙ 235 + 0 ∙ 234 + 0 ∙ 233 + 0 ∙ 232 + 0 ∙ 231 + 0 ∙ 230 + 0 ∙ 229 + 0 ∙ 228 + 0 ∙ 227 + 0 ∙ 226 + 0 ∙ 225 + 0 ∙ 224 + 0 ∙ 223 + 0 ∙ 222 + 0 ∙ 221 + 0 ∙ 220 + 0 ∙ 219 + 0 ∙ 218 + 0 ∙ 217 + 0 ∙ 216 + 0 ∙ 215 + 0 ∙ 214 + 0 ∙ 213 + 0 ∙ 212 + 0 ∙ 211 + 0 ∙ 210 + 0 ∙ 29 + 0 ∙ 28 + 0 ∙ 27 + 0 ∙ 26 + 0 ∙ 25 + 0 ∙ 24 + 0 ∙ 23 + 0 ∙ 22 + 0 ∙ 21 + 0 ∙ 20 = 1 ∙ 9007199254740992 + 0 ∙ 4503599627370496 + 0 ∙ 2251799813685248 + 0 ∙ 1125899906842624 + 0 ∙ 562949953421312 + 0 ∙ 281474976710656 + 0 ∙ 140737488355328 + 0 ∙ 70368744177664 + 0 ∙ 35184372088832 + 0 ∙ 17592186044416 + 0 ∙ 8796093022208 + 0 ∙ 4398046511104 + 0 ∙ 2199023255552 + 0 ∙ 1099511627776 + 0 ∙ 549755813888 + 0 ∙ 274877906944 + 0 ∙ 137438953472 + 0 ∙ 68719476736 + 0 ∙ 34359738368 + 0 ∙ 17179869184 + 0 ∙ 8589934592 + 0 ∙ 4294967296 + 0 ∙ 2147483648 + 0 ∙ 1073741824 + 0 ∙ 536870912 + 0 ∙ 268435456 + 0 ∙ 134217728 + 0 ∙ 67108864 + 0 ∙ 33554432 + 0 ∙ 16777216 + 0 ∙ 8388608 + 0 ∙ 4194304 + 0 ∙ 2097152 + 0 ∙ 1048576 + 0 ∙ 524288 + 0 ∙ 262144 + 0 ∙ 131072 + 0 ∙ 65536 + 0 ∙ 32768 + 0 ∙ 16384 + 0 ∙ 8192 + 0 ∙ 4096 + 0 ∙ 2048 + 0 ∙ 1024 + 0 ∙ 512 + 0 ∙ 256 + 0 ∙ 128 + 0 ∙ 64 + 0 ∙ 32 + 0 ∙ 16 + 0 ∙ 8 + 0 ∙ 4 + 0 ∙ 2 + 0 ∙ 1 = 9007199254740992 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 = 900719925474099210

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

1000000000000000000000000000000000000000000000000000002 = 900719925474099210

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

9007199254740992 8
9.007199254741E+15 1.1258999068426E+15 8
0 1.1258999068426E+15 1.4073748835533E+14 8
0 1.4073748835533E+14 17592186044416 8
0 17592186044416 2199023255552 8
0 2199023255552 274877906944 8
0 274877906944 34359738368 8
0 34359738368 4294967296 8
0 4294967296 536870912 8
0 536870912 67108864 8
0 67108864 8388608 8
0 8388608 1048576 8
0 1048576 131072 8
0 131072 16384 8
0 16384 2048 8
0 2048 256 8
0 256 32 8
0 32 4
0

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

900719925474099210=4000000000000000008

Ответ: 1000000000000000000000000000000000000000000000000000002 = 4000000000000000008.

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

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

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