Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Для упрощения арифметических операций числа в ЭВМ представляются специальными кодами — прямым, обратным и дополнительным. При помощи этих кодов операция вычитания (или алгебраического сложения) сводится к арифметическому сложению, упрощается определение знака результата операции, облегчается выработка признаков переполнения разрядной сетки.
Для обозначения знака числа в этих кодах выделяется специальный знаковый разряд, в котором записывается нуль для положительного числа и единица для отрицательного. Знаковый разряд всегда располагается слева от цифровых разрядов. В разрядной сетке ЕС ЭВМ он занимает нулевую позицию.
Прямой код xпр двоичного числа х содержит цифровые разряды, слева от которых записывается знаковый разряд. Сложение в прямом коде чисел, имеющих одинаковые знаки, выполняется достаточно просто. Цифровые разряды чисел складываются по правилам арифметики и сумме присваивается код знака слагаемых. Значительно сложнее реализуется в прямом коде операция алгебраического сложения, т. е. сложения чисел, имеющих разные знаки. В этом случае приходится определять большее по модулю число, производить вычитание чисел и присваивать разности знак большего по модулю числа. Данная операция сводится к простому арифметическому сложению при помощи обратного или дополнительного кода, которыми представляются отрицательные числа.
Обратный код хобр отрицательного числа х получается по следующему правилу: в знаковый разряд числа записывается единица, в цифровых разрядах нули заменяются единицами, а единицы — нулями.
Дополнительный код хдоп отрицательного числа х получается из обратного кода лг0бр путем прибавления единицы к младшему разряду.
В качестве примера представим целые двоичные числа х = +1101 и у=-1001 в прямом, обратном и дополнительном кодах. Записи положительного числа х в прямом, обратном и дополнительном кодах совпадают: хпр = хобр = хдоп = 0,1101. Отрицательное число у в этих кодах представляется по-разному. В прямом коде к цифровым разрядам числа у добавляется слева единица знакового разряда, т. е. yпр=1.1001. В обратном коде цифровые разряды прямого кода заменяются на инверсные, т. е. уобр =1.0110. Дополнительный код улоп получается из обратного добавлением единицы к младшему разряду, т. е. yдоп=1.0111
Для представления отрицательных чисел используется дополнительный код. Дополнительный код позволяет заменить арифметическую операцию вычитания операцией сложения, что существенно упрощает работу процессора и увеличивает его быстродействие.
Дата публикования: 2014-11-28; Прочитано: 314 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!