Перевод чисел из одной СС в другую


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

Правило перевода из двоичной СС в десятичную можно сформулировать следующим образом: все цифры числа и основание СС заменяются их десятичными эквивалентами; число представляется в виде суммы произведений степеней на значения соответствующих позиций; затем производится арифметический подсчет.

Пример:

Правила перевода чисел из десятичную в двоичную различны для целой и дробной частей числа.

Для перевода целого числа (или целой части смешанного числа) используется алгоритм последовательного деления исходного числа на основание новой СС (т. е. на 2), действия производятся в старой СС (в десятичной). Деление прекращается, когда очередное частное от деления станет равно 0. Остатки от деления, выписанные в обратном порядке, образуют результат.

 

 

Пример:

     
1    
   
   
   

 

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

 

Для перевода дробной части числа используется алгоритм последовательного умножения на основание новой СС (на 2), действия производятся в старой СС (в десятичной), целые части чисел, полученные в результате умножения дают запись результата.

Пример:

х  
 
1
х  
 
х  
 

Умножение прекращается, либо когда дробная часть становится равна 0, либо, когда будет получена требуемая точность представления числа.

х  
 
1
х  
 
х  
 

. . . .

Аналогично переводятся позиционные числа и с другими основаниями СС.