53
2.2.4. Представление знакопеременных величин
в цифровых средствах измерений
В большинстве случаев измеряемые средствами ЦИТ реализации
величин или, в более общем виде, атрибутов – различные напряжения, токи,
пространственные координаты и т.д. – могут иметь как положительный, так и
отрицательный знак (применительно к напряжениям используют также термин
полярность). Даже при измерении беззнаковых величин, таких как масса,
электрическое сопротивление или абсолютная температура, разности и
приращения измеряемых величин могут иметь различные знаки.
Способы кодового представления знакопеременных величин мало
зависят от структур выбранных кодов, если последние предназначаются только
для представления чисел. Используются три основных способа:
дополнительные коды, смещенные коды и прямые коды со знаком.
Принцип построения дополнительных кодов основан на том, что таблицу
числового кода, как правило, можно замкнуть в кольцо: прибавление единицы к
последнему числу таблицы дает число, расположенное в ее начале.
Соответственно, если отнять единицу от нуля, расположенного в начале
таблицы, получится число, кодовая комбинация которого находится в конце
таблицы. В дополнительном коде этой комбинации присваивается значение
минус единицы, и вычитание может быть продолжено дальше до середины
таблицы. Таким образом, отрицательные числа располагаются в интервале от
середины до конца таблицы.
При переходе от натурального n-разрядного двоичного кода к
дополнительному коду старший (n-й) разряд становится знаковым (значение
α
n
= 0 соответствует неотрицательным, а α
n
= 1 – отрицательным числам); при
этом количество изображаемых положительных чисел оказывается равным
2
n-1
– 1, а отрицательных 2
n-1
. Общее количество комбинаций, включая нулевую,
остается равным 2
n
. То же справедливо для дополнительного кода Грея.
Ясно, что любой АЦ преобразователь, основанный на реверсивном счете
импульсов, при переходе измеряемой величины через нуль в отрицательную
область автоматически даст отсчет в дополнительном коде, если только не
организовать логическими средствами запрет такого перехода. Например, в
дополнительном коде будет работать инкрементный – см. рис. 1.22 в разделе
1.5.5 – преобразователь перемещение → код.
Точно так же, если использовать для преобразования угловой
координаты кодированный диск, размеченный по всей окружности всеми
возможными кодовыми комбинациями, то можно с одинаковым правом считать
диапазоном изменения координаты 0…360° или (–180…+180)°, не меняя
рисунка кода и начального положения воспринимающих элементов, будь то
натуральный двоичный код, двоично-сдвинутый код или код Грея. В любом из
этих случаев отрицательные углы будут отсчитываться в дополнительном коде
(заметим, что понятие дополнительный код относится ко всей кодовой
таблице, включающей как отрицательные, так и положительные числа).
Двоичный дополнительный код является взвешенным; вес старшего
(знакового) разряда равен (–2
n-1
), остальные разряды имеют веса 2
i-1
, как и в
натуральном двоичном коде. Например, комбинация 10001110 двоичного
дополнительного кода может быть расшифрована как –128 + 8 + 4 + 2 = –114.
Другой способ расшифровки состоит в нахождении модуля числа по известному
правилу: инвертировать все биты комбинации отрицательного числа и