Унарная система счисления

редактировать
Система счисления Base-1.

Унарная система счисления - простейшая система счисления для представления натуральных чисел : для представления числа N символ, представляющий 1, повторяется N раз.

В унарной системе число 0 (ноль) представлен пустой строкой , то есть отсутствием символа. Числа 1, 2, 3, 4, 5, 6,... представлены в унарном формате как 1, 11, 111, 1111, 11111, 111111,...

в структуре позиционной записи , унарная - это биективное основная -1 система счисления. Однако, поскольку значение цифры не зависит от ее положения, можно утверждать, что унарная система не является позиционной системой.

Использование меток при подсчете является применением унарная система счисления. Например, при использовании метки | цифра 3 будет представлена ​​как ||| . В культурах Восточной Азии число 3 представлено как , символ, нарисованный тремя штрихами. (Один и два представлены аналогично.) В Китае и Японии символ 正, начерченный пятью штрихами, иногда используется для обозначения 5.

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

Содержание

  • 1 Операции
  • 2 Сложность
  • 3 Приложения
  • 4 См. Также
  • 5 Ссылки
  • 6 Внешние ссылки

Операции

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

Сложность

по сравнению со стандартными позиционными системами счисления, унарная система неудобна и поэтому не используется на практике для больших вычислений. Он встречается в некоторых описаниях задач решения в теоретической информатике (например, в некоторых P-complete задачах), где он используется для «искусственного» уменьшения количества прогонов. требования к времени или пространству проблемы. Например, проблема целочисленной факторизации, как предполагается, требует больше, чем полиномиальная функция длины ввода в качестве времени выполнения, если ввод задан в binary, но это только требуется линейная среда выполнения, если входные данные представлены в унарном формате. Однако это может ввести в заблуждение. Использование унарного ввода медленнее для любого заданного числа, но не быстрее; различие в том, что двоичный (или более крупный) ввод пропорционален основному 2 (или большему основанию) логарифму числа, в то время как одинарный ввод пропорционален самому числу. Следовательно, хотя время выполнения и требования к пространству в унарном языке выглядят лучше как функция размера ввода, это не является более эффективным решением.

В теории вычислительной сложности унарная нумерация используется для различения строго NP-полных проблем от проблем, которые являются NP-полными, но не строго NP-полными. Задача, в которой входные данные включают некоторые числовые параметры, является строго NP-полной, если она остается NP-полной, даже если размер входа искусственно увеличен путем представления параметров в унарном формате. Для такой проблемы существуют жесткие экземпляры, для которых все значения параметров не более чем полиномиально большие.

Приложения

Унарная нумерация используется как часть некоторых алгоритмов сжатия данных, таких как Golomb кодировка. Он также составляет основу аксиом Пеано для формализации арифметики в рамках математической логики. Форма унарной записи, называемая кодировка Чёрча, используется для представления чисел в лямбда-исчислении.

См. Также

Ссылки

Внешние ссылки

На Викискладе есть материалы, связанные с Унарной системой счисления.
Последняя правка сделана 2021-06-20 10:31:14
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте