ПЕРЕВОД ЧИСЕЛ ИЗ ОДНОЙ СИСТЕМЫ СЧИСЛЕНИЯ В ДРУГУЮ


Эта страница предпологает наличие математического образования у пользователя. так как она содержит математические символы и термины.

Числа в разных системах счисления можно представить следующим образом:

А(S)=anSn+ an-1Sn-1+…+ a1S1+ a0S0 + a-1S-1 +…+ a-mSm=bkRk+ bk-1Rk-1+…+b1R1+ b0R0+ b-1R-1+…+ b-lRl=A(R)

Поэтому в общем виде задача перевода чисел из системы счисления с основаниеи S в систему счисления с основанием R представляет собой либо задачу определения коэффициентов bi по правилам S-арифметики, либо задачу вычисления А(R) по правилам R-арифметики, исходя из того, что известны aj. и Sj .

Правило перевода целых чисел на основании S-арифметики

Исходное число А(S), разделить на R по правилам S-арифметики, Полученное частное принять за исходное число и вновь разделить на R. Процесс деления очередного частного продолжать до тех пор, пока не бу дет получено частное меньше R . Изображение числа а(S) в R-системе счисления получают записью остатков от деления в порядке, обратном порядку их получения.

Правило перевода целых чисел на основании R-арифметики

Самую старшую цифру an в изображении числа а(S) умножить на S по правилам R-арифметики. Добавить следующую цифру an-1 и вновь умножить на S. Умножение и сложение выполнять до тех пор, пока не будет добавлена самая младшая цифра a0 . Полученное число будет представлять собой A(R) .

Правило перевода дробных чисел на основании S-арифметики

Исходное число A(S) умножить на R по правилам S-арифметики. Целая часть полученного числа представляет собой цифру b-1 числа А(R) . Затем, отбросив целую часть, умножить дробную часть на R . При этом получается число, целая часть которого есть цифра b-2 . Повторять процесс умножения l раз, пока не будут найдены все l цифр числа A(R).

Правило перевода дробных чисел на основании R -арифметики

Самую младшую цифру в am в изображении числа A(S) разделить на S по правилам R-арифметики. Добавить следующую цифру a-(m-1) вновь разделить на S. Сложение и деление выполнять до тех пор, пока не будет добавлена самая старшая цифра a-1. Последнее число, полученное делением, представляет собой число A(R)

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

Если требуемая абсолютная погрешность перевода равна X , то количество разрядов f определяют по формуле

f=]logR

1

[

X

где ] [ означает округление до большего целого.

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

Табличные методы перевода

Первый табличный метод заключается в том, что имеются таблицы эквивалентов в каждой системе счисления для цифр этих систем и степеней основания (весов разрядов); задача перевода сводится к тому, что в выражение

А(S)=anSn+ an-1Sn-1+…+ a1S1+ a0S0 + a-1S-1 +…+ a-mSm

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

Во многих практических применениях вычислительных устройств требуется перевод из S-системы счисления в R-систему и наоборот. При использовании рассмотренного табличного метода необходимо иметь таблицы эквивалентов для S-и R-систем счисления и аппаратуру для выполнения арифметических операций в этих системах, что является неэффективным.

Второй табличный метод позволяет осуществлять перевод чисел из R-системы счисления в S-систему, т.е. обратный перевод, используя эквиваленты S-системы и R -арифметику.

Исходное число A(R) сравнить с эквивалентами чисел Sn, 2Sn; 3Sn,..., (S-1)Sn . Если A(R), меньше всех этих эквивалентов, то аn = 0, и перейти к сравнению с эквивалентами чисел Sп-1,2 Sn-1, 3Sn-1, .... (S -1)Sn-1. Если gSn<A(R)<(g+1) Sn (где g = 1, 2,... S-2), то an = g, образовать разность r= A(R)-gSn и перейти к сравнение остатка r. с очередными эквивалентами. Аналогично определяются все остальные коэффициенты aj .

Следует отметить, что данный метод перевода, основанный на сравнении эквивалентов с исходным числом, а впоследствии с остатками, является единственным при переводе чисел на основании S-арифметики в системы счисления с искусственным порядком весов.

Использование промежуточной системы счисления.

Этот метод применяют при переводе из десятичной системы в двоичную и наоборот. В качестве промежуточной системы счисления используют систему с основанием 2х ( К =• 2, 3...). При переводе из десятичной системы вначале осуществляют перевод в промежуточную систему счисления любым из описанных ранее методов, а затем вместо 2 -х цифр подставляют двоичные эквиваленты.

Для перевода из двоичной в десятичную систему вначале разбивают двоичный код на группы по К разрядов и каждую группу заменяют соответствующей 2k цифрой, затем переходят от промежуточной к десятичной системе счисления любым из методов.

В качестве промежуточной широко используются восьмеричная и шестнадцатеричная системы.



Программу по переводу чисел Вы можете найти здесь.
Главная страница.