Главная > Разное > Теория и применение цифровой обработки сигналов
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

5.5. Система счисления с фиксированной запятой

В данной главе принято, что для представления чисел в цифровом фильтре используются b двоичных разрядов. С их помощью можно точно представить различных -разрядных чисел. В системе счисления с фиксированной запятой считается, что положение двоичной запятой фиксировано. Разряды справа от запятой дают дробную часть числа, а слева от нее — целую часть. Так, двоичное число 01,01100 равно ) или 1,375 в десятичной системе.

В зависимости от способа представления отрицательных чисел различают три вида системы счисления с фиксированной запятой. Числа могут быть представлены в прямом, дополнительном и обратном кодах. При использовании прямого кода старший разряд является знаковым (0 соответствует знаку +, 1 — знаку -), а остальные разрядов дают модуль числа. Например, если , то десятичное число —1,375 записывается как 11,01100, причем двоичная запятая располагается после второго старшего разряда. При таком кодировании число 0 имеет две формы: 00,00000 и 10,00000, поэтому с помощью разрядов можно точно представить только чисел.

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

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

Наибольшее положительное число, которое можно точно представить в дополнительном коде, равно 01,11111 (при ), а наименьшее отрицательное число равно 10,00000; его модуль на единицу младшего разряда превышает предыдущее число. Поскольку для нуля имеется только одна форма записи, в дополнительном -разрядном коде можно точно представить различных чисел.

Обратный код положительных чисел совпадает с их прямым и дополнительным кодом. Обратный код отрицательных чисел формируется путем простой инверсии всех разрядов соответствующего положительного числа. Например, обратный код отрицательного числа с модулем (01,01100) будет равен . Таким образом, нуль имеет в данной системе две формы записи: 00,00000 и 11,11111.

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

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

<< Предыдущий параграф Следующий параграф >>
Оглавление