A Логарифмическая система счисления (LNS ) является арифметическая система, используемая для представления действительных чисел в компьютере и цифровом оборудовании, особенно для цифровой обработки сигналов.
В LNS число, представлен логарифмом , его абсолютного значения следующим образом:
где немного обозначает знак (если и , если ).
Число представлено двоичным словом, которое обычно имеет формат с дополнением до двух. LNS можно рассматривать как число с плавающей запятой, где мантисса всегда равна 1, а нецелочисленная экспонента. Эта формулировка упрощает операции умножения, деления, степеней и корней, поскольку они сводятся к сложению, вычитанию, умножению и делению соответственно.
С другой стороны, операции сложения и вычитания более сложные и вычисляются по формуле:
где функция "сумма" определяется как , а функция "разности" - на . Эти функции и также известны как логарифмы Гаусса.
Упрощение умножения, деления, корней и степеней уравновешивается затратами на оценку этих функций для сложения и вычитания. Эта дополнительная стоимость оценки может не быть критической при использовании LNS в первую очередь для повышения точности математических операций с плавающей запятой.
Логарифмические системы счисления были независимо изобретены и опубликованы не менее трех раз в качестве альтернативы с фиксированной точкой и с плавающей запятой. -точечные системы счисления.
Николас Кингсбери и Питер Рейнер в 1971 году представили «логарифмическую арифметику» для цифровой обработки сигналов (DSP).
Аналогичная LNS с названием «знаковая логарифмическая система счисления» (SLNS) была описана в 1975 году Эрлом Шварцлендером и Аристидесом Алексопулосом; вместо использования двух дополнений для логарифмов они смещают их (масштабируют представляемые числа), чтобы избежать отрицательных логарифмов.
Самуэль Ли и Альберт Эдгар описали аналогичную систему, которую они назвали система счисления "Focus", 1977 год.
Математические основы для сложения и вычитания в LNS восходят к Карлу Фридриху Гауссу в начале 1800-х годов.
LNS использовался в специальном суперкомпьютере Gravity Pipe (GRAPE-5 ), получившем Приз Гордона Белла в 1999.
В контексте Европейского логарифмического микропроцессора (ELM) описаны значительные усилия по исследованию применимости LNS в качестве жизнеспособной альтернативы плавающей запятой для универсальной обработки вещественных чисел одинарной точности. Изготовленный прототип процессора, который имеет 32-битное основанное на котрансформации арифметико-логическое устройство LNS (ALU) на основе котрансформации, продемонстрировал LNS как «более точную альтернативу плавающей запятой» с улучшенной скоростью. Дальнейшее улучшение дизайна LNS на основе архитектуры ELM показало его способность обеспечивать значительно более высокую скорость и точность, чем с плавающей запятой.
LNS иногда используются в приложениях на основе FPGA где большинство арифметических операций - это умножение или деление.