Обратный и дополнительный коды и их применение для выполнения арифметических операций.Машинные коды чисел бывают трех типов: прямой код, дополнительный и обратный. Рассмотрим число , представленное в форме с плавающей запятой: (4) Обозначим его мантиссу С учётом правила кодирования знаков, её представление в форме ПЗ можно записать так: Данное представление называется прямым кодом числа x. Поскольку эти выражения можно переписать в виде: (5) Из равенства следует, что операцию вычитания можно заменить операцией сложения с числом с последующим вычитанием величины . Для реализации вычитания таким способом определим дополнительный код числа x: (6) Обратим внимание на то, что с учётом отрицательного знака дополнительный код – это дополнение числа до основания системы счисления , т.е. не что иное, как обратный элемент по сложению в кольце вычетов по модулю . Операцию вычитания можно представить и в другом виде: Код, определённый с помощью этого соотношения: называется обратным кодом числа. Он представляет собой дополнение мантиссы до максимального базисного числа. Из соотношений (5)–(7) можно сделать вывод, что: · для положительных чисел прямой, обратный и дополнительный коды совпадают с нормализованной мантиссой числа. · для отрицательных чисел из (6) и (7) получаем соотношение, связывающее обратный и дополнительный коды: из которого следует, что эти коды отличаются друг от друга на единицу в последнем разряде. Дополнительный и обратный коды называются инверсными. Заметим, что по определению мантисса имеет нулевую целую часть. В то же время знак числа кодируется нулём или максимальным базисным числом и размещается перед мантиссой. Таким образом, в машинных кодах происходит отождествление разряда, соответствующего целой части числа и знакового разряда.
|