Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как перевести число из восьмеричной системы в десятичную?

Анонимный вопрос
  ·   · 21,1 K
< Frontend-разработчик /> "Это не похоже на...  · 17 янв 2021

Думаю, лучше будет объяснить общее правило, а уж восьмерочку подставить вместо n мозгов много не надо.

В общем, суть:

число в системе счисления с основанием N можно представить как сумму произведений каждой цифры в этом числе на N в степени, равной номеру этой цифры, если считать с конца и вести отсчет с нуля.

Например, в нашей десятичной системе есть число 1234. Что это такое? Это

4*10^0 (нулевая цифра, если считать с конца)
+ 3*10^1 (первая цифра, значит степень = 1)
+ 2*10^2 + 1*10^3 = 4 + 30 + 200 + 1000.

Соответственно, 5678 в N-ной системе счисления можно представить как 5*N^3 + 6*N^2 + 7*N^1 + 8*N^0. И результат от этой суммы будет уже являться привычным нам десятичным числом :)

P.S.

  1. Запись n^k означает "число n в степени k".
  2. Любое число в нулевой степени равно единице.
  3. Если речь о системе счисления с основанием больше 10, то там понятие "цифра" при переводе в десятичное представление превращается в "число", и это нормально. Т.е. AB1 в шестнадцатеричной будет разложено как 10*16^2 + 11*16^1 + 1*16^0.
НЛО прилетело и опубликовало эту запись здесь.  · 26 дек 2017
Берёшь последнюю цифру числа, умножаешь её на 1 (ну то есть оставляешь как есть). Берёшь вторую с конца, умножаешь на 8. Берёшь третью с конца, умножаешь на 8 в квадрате (это 64). Четвёртую с конца — на 8 в кубе (это 512). И... Читать далее
Люблю читать, потому что хочу всё знать :)  · 17 нояб 2018
Давайте разберём на примере и переведём число 2364 из восьмеричной системы в десятичную. Для удобства запишем цифры числа в столбик (это первое действие). Теперь начиная с нижней строки нумеруем строчки, начиная с нуля (второе... Читать далее

а разве 512 х 2 = 1024 ?