Top.Mail.Ru
Ответы

Перевод числа в другую систему счисления методом деления на основание

Объясните, пожалуйста, максимально подробно, как этим методом переводить из меньшего основания в большее (из четверичной в восьмеричную, из восьмеричной в шестнадцатеричную, например) . В интернете и ютубе полезной инфы 0, есть только объяснение с переводом сначала в десятичную, потом в ту которую надо. Очень хотелось бы объяснение именно метода деления

По дате
По рейтингу
Аватар пользователя

Универсальный алгоритм (для целых чисел), думаю, будет выглядеть так.

Делимое - число, которое нужно переводить.
Делитель - основание системы счисления в которую нужно перевести, но записанное в системе счисления делимого.
Далее идёт процесс последовательного деления, но операции производятся в системе счисления делимого.
Потом последнее частное, а также полученные остатки заменяют соответствующими цифрами системы счисления в которую переводится число.

12345678910111213141516171819202122
 Рассмотрим вопрос на примере перевода двоичного числа 100100011   
в восьмеричную c/c.  
При этом параллельно покажем это с использованием 10-й системы.  
  
Делимое - 100100011(2)          =291(10)  
  
Делитель - 8(10)=1000(2)        =8(10)  
  
  
 100100011│ 1000                291│ 8  
-100100000└───────             -288└───  
 ─────────  100100 │ 1000       ───  36│ 8  
        11 -100000 └─────         3 -32└───  
        │   ──────  100              ──  4  
        │      100  │                 4  
        │      │    │  
        │      │    4  
        3      4   
  
Записываем последовательно разряды числа снизу вверх. Начинаем   
с последнего частного, затем идя вверх записываем все остатки.  
Полученное число в 8 c/c: 443 
Аватар пользователя
Ученик

Chatgpt попробуй

Аватар пользователя
Ученик

Он тоже выдаёт решение как на сайтах (сначала в десятичку, потом в нужную)



Видео по теме