Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Данилецкий_Вычислительная техника.docx
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆
  1. Системы счисления

Система счисления — символический метод записи чисел, представление чисел с помощью письменных знаков.

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

Цифры — знаки, используемые для записи чисел.

Цифры бывают разные: самыми распространёнными являются арабские цифры, представляемые знаками от нуля (0) до девяти (9); менее распространены римские цифры, их можно встретить на циферблате часов или в обозначении века (XIX век).

Поскольку чисел гораздо больше чем цифр, то для записи числа обычно используется набор (комбинация) цифр. Только для небольшого количества чисел — для самых малых по величине — бывает достаточно одной цифры. Существует много способов записи чисел с помощью цифр, называемых системой счисления. Величина числа может зависеть от порядка цифр в записи, а может и не зависеть. Это свойство определяется системой счисления и служит основанием для простейшей классификации таких систем, что позволяет все системы счисления разделить на три класса (группы):

  • позиционные;

  • непозиционные;

  • смешанные.

Позиционные системы счисления — это системы счисления, в которых значение цифры напрямую зависит от её положения в числе.

Например, число 01 обозначает единицу, 10 — десять.

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

Представление чисел с помощью арабских цифр — самая распространённая позиционная система счисления, она называется «десятичной системой счисления». Десятичной системой она называется потому, что использует десять цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9. Заметьте: максимальная цифра (9) на единичку меньше количества цифр (10).

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

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

Количество цифр, используемых в системе счисления, называется её «основанием». В десятичной системе основание равно десяти, в двоичной системе — двум, ну а в восьмеричной и шестнадцатеричной — соответственно, восьми и шестнадцати. То есть в р-ичной системе счисления количество цифр равно р и используются цифры от 0 до р-1.

В общем случае в позиционной системе счисления числа представляются следующим образом:  , где   — цифры, а   — основание системы счисления. Если используется десятичная система, то   — можно опустить.

Смешанные системы счисления

Смешанная система счисления является обобщением b-ричной системы счисления и также зачастую относится к позиционным системам счисления. Основанием смешанной системы счисления является возрастающая последовательность чисел , и каждое число x в ней представляется как линейная комбинация:

, где на коэффициенты ak, называемые как и прежде цифрами, накладываются некоторые ограничения.

Записью числа x в смешанной системе счисления называется перечисление его цифр в порядке уменьшения индекса k, начиная с первого ненулевого.

В зависимости от вида bk как функции от k смешанные системы счисления могут быть степенными, показательными и т. п. Когда для некоторого b, смешанная система счисления совпадает с показательной b-ричной системой счисления.

Наиболее известным примером смешанной системы счисления является представление времени в виде количества суток, часов, минут и секунд. При этом величина «d дней, h часов, m минут, s секунд» соответствует значению секунд.

В факториальной системе счисления основаниями являются последовательность факториалов  , и каждое натуральное число   представляется в виде:

, где  .

Факториальная система счисления используется при декодировании перестановок списками инверсий: имея номер перестановки, можно воспроизвести её саму следующим образом: число, на единицу меньшее номера (нумерация начинается с нуля) записывается в факториальной системе счисления, при этом коэффициент при числе i! будет обозначать число инверсий для элемента i+1 в том множестве, в котором производятся перестановки (число элементов меньших i+1, но стоящих правее его в искомой перестановке).

Пример: рассмотрим множество перестановок из 5 элементов, всего их 5! = 120 (от перестановки с номером 0 ­- (1,2,3,4,5) до перестановки с номером 119 - (5,4,3,2,1)), найдём 101-ую перестановку: 100 = 4!*4 + 3!*0 + 2!*2 + 1!*0 = 96 + 4; положим ti — коэффициент при числе i!, тогда t4 = 4, t3 = 0, t2 = 2, t1 = 0 , тогда: число элементов меньших 5, но стоящих правее равно 4; число элементов меньших 4, но стоящих правее равно 0; число элементов меньших 3, но стоящих правее равно 2; число элементов меньших 2, но стоящих правее равно 0 (последний элемент в перестановке «ставится» на единственное оставшееся место) — таким образом, 101-я перестановка будет иметь вид: (5,3,1,2,4) Проверка данного метода может быть осуществлена путём непосредственного подсчёта инверсий для каждого элемента перестановки.

Фибоначчиева система счисления основывается на числах Фибоначчи. Каждое натуральное число   в ней представляется в виде:

, где   — числа Фибоначчи,  , при этом в коэффициентах   есть конечное количество единиц и не встречаются две единицы подряд.

Непозиционные системы счисления

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

В биномиальной системе счисления (англ.) число x представляется в виде суммы биномиальных коэффициентов:

, где 

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

Система остаточных классов (СОК)

Представление числа в системе остаточных классов основано на понятии вычета и китайской теореме об остатках. СОК определяется набором попарно взаимно простых модулей   с произведением  так, что каждому целому числу x из отрезка   ставится в соответствие набор вычетов  , где

…

При этом китайская теорема об остатках гарантирует однозначность представления для чисел из отрезка [0,M - 1].

В СОК арифметические операции (сложение, вычитание, умножение, деление) выполняются покомпонентно, если про результат известно, что он является целочисленным и также лежит в [0,M - 1].

Недостатками СОК является возможность представления только ограниченного количества чисел, а также отсутствие эффективных алгоритмов для сравнения чисел, представленых в СОК. Сравнение обычно осуществляется через перевод аргументов из СОК в смешанную систему счисления по основаниям  .