Jump to content

Несмежная форма

( Несмежная форма NAF ) числа — это уникальное представление цифр со знаком , в котором ненулевые значения не могут быть соседними. Например:

(0 1 1 1) 2 = 4 + 2 + 1 = 7
(1 0 −1 1) 2 = 8 − 2 + 1 = 7
(1 −1 1 1) 2 = 8 − 4 + 2 + 1 = 7
(1 0 0 −1) 2 = 8 − 1 = 7

Все они являются допустимыми представлениями числа 7 со знаком, но только последнее представление (1 0 0 −1) 2 находится в несмежной форме.

Несмежная форма также известна как представление «канонической цифры со знаком».

Характеристики

[ редактировать ]

NAF обеспечивает уникальное представление целого числа , но его основное преимущество заключается в том, что вес Хэмминга значения будет минимальным. Для обычных двоичных представлений значений в среднем половина всех битов будет ненулевой, но с NAF это число снижается до одной трети всех цифр. Это приводит к эффективной реализации цепей сложения/вычитания (например, умножения на константу) в аппаратной цифровой обработке сигналов . [1]

Очевидно, что не более половины цифр отличны от нуля, поэтому это было введено Г.В. Рейтвейснером. [2] для ускорения ранних алгоритмов умножения, во многом похожих на кодирование Бута .

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

Свойства NAF делают его полезным в различных алгоритмах, особенно в криптографии ; например, для уменьшения количества умножений, необходимых для возведения в степень . В алгоритме возведения в степень возведением в квадрат количество умножений зависит от количества ненулевых битов. Если показатель степени здесь указан в форме NAF, цифровое значение 1 подразумевает умножение по основанию, а цифровое значение -1 - на обратное.

Другие способы кодирования целых чисел, избегающие последовательных единиц, включают кодирование Бута и кодирование Фибоначчи .

Конвертация в НАФ

[ редактировать ]

Существует несколько алгоритмов получения представления NAF значения, заданного в двоичном формате. Одним из таких является следующий метод с использованием многократного деления; он работает путем выбора ненулевых коэффициентов так, чтобы полученное частное делилось на 2 и, следовательно, следующий коэффициент был равен нулю. [3]

   Input     E = (em−1 em−2 ··· e1 e0)2
   Output     Z = (zm zm−1 ··· z1 z0)NAF
   i ← 0
   while E > 0 do
       if E is odd then
           zi ← 2 − (E mod 4)
           EEzi
       else
           zi ← 0
       EE/2
       ii + 1
   return z

Более быстрый способ предлагает Prodinger. [4] где x — входные данные, np — строка положительных битов, а nm — строка отрицательных битов:

   Input   x
   Output  np, nm
   xh = x >> 1;
   x3 = x + xh;
   c = xh ^ x3;
   np = x3 & c;
   nm = xh & c;

который используется, например, в A184616 .

[ редактировать ]
  • Введение в каноническое представление знаковых цифр
  • Коулман, Джо; Юрдакул А. (21–23 марта 2001 г.). Дроби в канонической знаково-цифровой системе счисления . Конференция по информационным наукам и системам. Университет Джонса Хопкинса. OCLC   48052559 .
  1. ^ Хьюлитт, РМ (2000). Каноническое представление цифр со знаком для цифровых фильтров FIR . Системы обработки сигналов, 2000. SiPS 2000. 2000 Семинар IEEE. стр. 416–426. дои : 10.1109/SIPS.2000.886740 . ISBN  978-0-7803-6488-2 . S2CID   122082511 .
  2. ^ Рейтвизнер, Джордж В. (1960). «Двоичная арифметика». Достижения в области компьютеров . 1 : 231–308. дои : 10.1016/S0065-2458(08)60610-5 . ISBN  9780120121014 .
  3. ^ Хэнкерсон, Д.; Менезес, А.; Ванстон, Ю.А. (2004). Руководство по криптографии на основе эллиптических кривых . Спрингер. п. 98. ИСБН  978-0-387-21846-5 .
  4. ^ Продингер, Хельмут. «О двоичных представлениях целых чисел с цифрами -1, 0, 1» (PDF) . Целые числа . Проверено 25 июня 2021 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 2c29eb6778521840079967b9fc8e8b64__1683341940
URL1:https://arc.ask3.ru/arc/aa/2c/64/2c29eb6778521840079967b9fc8e8b64.html
Заголовок, (Title) документа по адресу, URL1:
Non-adjacent form - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)