Системы счисления. Правила перевода чисел из одной системы счисления в другую.
Система счисления — символический метод записи чисел, представление чисел с помощью письменных знаков.
Система счисления:
· даёт представления множества чисел (целых или вещественных)
· даёт каждому числу уникальное представление (или, по крайней мере, стандартное представление)
· отражает алгебраическую и арифметическую структуру чисел.
Например, привычное десятичное представление целых чисел уникальным образом формирует каждое целое число как конечную последовательность цифр. Арифметические операции (сложение, вычитание, умножение и деление) суть стандартные арифметические алгоритмы. Тем не менее, когда десятичное представление используется для рациональных или вещественных чисел, оно более не уникально: многие рациональные числа имеют две записи - стандартная десятичная дробь (например, 2.31) и периодическая (например, 2.309999999...). Десятичные дроби не имеют ненулевых цифр после некоторой заданной позиции. Например, числа 2.31 и 2.310 обычно считаются одинаковыми, за исключением экспериментальных наук, где нулевыми младшими разрядами обозначается точность представления.
Системы счисления подразделяются на позиционные, непозиционные и смешанные.
Позиционные системы счисления
Основная статья: Позиционная система счисления
В позиционных системах счисления один и тот же числовойзнак (цифра) в записи числа имеет различные значения в зависимости от того места (разряда), где он расположен. Изобретение позиционной нумерации, основанной на поместном значении цифр, приписывается шумерам и вавилонянам; развита была такая нумерация индусами и имела неоценимые последствия в истории человеческой цивилизации. К числу таких систем относится современная десятичная система счисления, возникновение которой связано со счётом на пальцах. В средневековой Европе она появилась через итальянских купцов, в свою очередь заимствовавших её у мусульман.
Каждая позиционная система счисления определяется некоторым целым числом b > 1 (т. н. основание системы счисления) таким, что b единиц в каждом разряде объединяется в одну единицу следующего по старшинству разряда. Система счисления с основанием b также называется b-ричной.
Целое число x в b-ричной показательной системе счисления представляется в виде конечной линейной комбинации степеней числа b:
, где ak — это целые числа, называемые цифрами, удовлетворяющие неравенству .
Каждая степень bk в такой записи называется b-ричным разрядом, старшинство разрядов и соответствующих им цифр определяется значением показателя k. Обычно для ненулевого числа x требуют, чтобы старшая цифра an − 1 в b-ричном представлении x была также ненулевой.
Если не возникает разночтений (например, когда все цифры представляются в виде уникальных письменных знаков), число x записывают в виде последовательности его b-ричных цифр, перечисляемых по убыванию старшинства разрядов слева направо:
Например, число сто три представляется в десятичной системе счисления в виде:
Наиболее употребляемыми в настоящее время позиционными системами являются:
· 1 — единичная система счисления (как позиционная, может и не рассматриваться; счёт на пальцах, зарубки, узелки «на память» и др.),
· 2 — двоичная (в дискретной математике, информатике, программировании),
· 3 — троичная система счисления,
· 4 — четверичная система счисления, применяется в вычислительной технике,
· 10 — десятичная система счисления,
· 12 — двенадцатеричная система счисления (счёт дюжинами),
· 16 — шестнадцатеричная (наиболее часто используется в программировании, а также в шрифтах),
· 60 — шестидесятеричная (единицы измерения времени, измерение углов и, в частности, координат, долготы и широты).
Смешанные системы счисления
Смешанная система счисления является обобщением b-ричной системы счисления и также зачастую относится к позиционным системам счисления. Основанием смешанной системы счисления является возрастающая последовательность чисел и каждое число x представляется как линейная комбинация:
, где на коэффициенты ak (называемые как и прежде цифрами) накладываются некоторые ограничения.
Записью числа x в смешанной системе счисления называется перечисление его цифр в порядке уменьшения индекса k, начиная с первого ненулевого.
В зависимости от вида bk как функции от k смешанные системы счисления могут быть степенными, показательными и т.п. Показательная смешанная система счисления, когда bk = bk для некоторого b, совпадает с b-ричной системой счисления.
Наиболее известным примером смешанной системы счисления являются представление времени в виде количества суток, часов, минут и секунд. При этом величина d дней h часов m минут s секунд соответствует значению
секунд.
Непозиционные системы счисления
В непозиционных системах счисления величина, которую обозначает цифра, не зависит от положения в числе. При этом система может накладывать ограничения на положение цифр, например, чтобы они были расположены в порядке убывания.
Позиционная системма счислемния — система счисления, в которой один и тот же числовой знак (цифра) в записи числа имеет различные значения в зависимости от того места (разряда), где он расположен. Изобретение позиционной нумерации, основанной на поместном значении цифр, приписывается шумерам и вавилонянам; развита была такая нумерация индусами и имела неоценимые последствия в истории человеческой цивилизации. К числу таких систем относится современная десятичная система счисления, возникновение которой связано со счётом на пальцах. В средневековой Европе она появилась через итальянских купцов, в свою очередь заимствовавших её у мусульман.
Правила перевода чисел из одной системы счисления в другую
Перевод чисел из одной системы счисления в другую составляет важную часть машинной арифметики. Рассмотрим основные правила перевода.
1. Для перевода двоичного числа в десятичное необходимо его записать в виде многочлена, состоящего из произведений цифр числа и соответствующей степени числа 2, и вычислить по правилам десятичной арифметики:
При переводе удобно пользоваться таблицей степеней двойки:
Таблица 4. Степени числа 2
n (степень) | |||||||||||
2. Для перевода восьмеричного числа в десятичное необходимо его записать в виде многочлена, состоящего из произведений цифр числа и соответствующей степени числа 8, и вычислить по правилам десятичной арифметики:
При переводе удобно пользоваться таблицей степеней восьмерки:
Таблица 5. Степени числа 8
n (степень) | |||||||
3. Для перевода шестнадцатеричного числа в десятичное необходимо его записать в виде многочлена, состоящего из произведений цифр числа и соответствующей степени числа 16, и вычислить по правилам десятичной арифметики:
При переводе удобно пользоваться таблицей степеней числа 16:
Таблица 6. Степени числа 16
n (степень) | |||||||
4. Для перевода десятичного числа в двоичную систему его необходимо последовательно делить на 2 до тех пор, пока не останется остаток, меньший или равный 1. Число в двоичной системе записывается как последовательность последнего результата деления и остатков от деления в обратном порядке.
5. Для перевода десятичного числа в восьмеричную систему его необходимо последовательно делить на 8 до тех пор, пока не останется остаток, меньший или равный 7. Число в восьмеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.
6. Для перевода десятичного числа в шестнадцатеричную систему его необходимо последовательно делить на 16 до тех пор, пока не останется остаток, меньший или равный 15. Число в шестнадцатеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.
7. Чтобы перевести число из двоичной системы в восьмеричную, его нужно разбить на триады (тройки цифр), начиная с младшего разряда, в случае необходимости дополнив старшую триаду нулями, и каждую триаду заменить соответствующей восьмеричной цифрой (табл. 3).
8. Чтобы перевести число из двоичной системы в шестнадцатеричную, его нужно разбить на тетрады (четверки цифр), начиная с младшего разряда, в случае необходимости дополнив старшую тетраду нулями, и каждую тетраду заменить соответствующей восьмеричной цифрой (табл. 3).
9. Для перевода восьмеричного числа в двоичное необходимо каждую цифру заменить эквивалентной ей двоичной триадой.
10. Для перевода шестнадцатеричного числа в двоичное необходимо каждую цифру заменить эквивалентной ей двоичной тетрадой.
11. При переходе из восьмеричной системы счисления в шестнадцатеричную и обратно, необходим промежуточный перевод чисел в двоичную систему.