Машинные коды чисел. Общие правила образования двоичных машинных кодов
Машинные коды чисел.
В компьютерах все арифметические операции осуществляются в машинных кодах и могут быть сведены к операции сложения и операциям сдвига вправо или влево. Обычно применяются прямой, обратный и дополнительный коды.
Представление чисел в прямом коде осуществляется в виде знакового разряда и абсолютной величины числа.
Пример.
+2910 = 001111012 -2910 = 10111101
+12710 = 011111112 -12710 = 111111112
Для представления отрицательных чисел или замены операции вычитания на сложение используются обратный и дополнительный коды.
Сущность этих кодов заключается в том, что вычитаемое число Х, как отрицательное число, представляется в виде дополнения до некоторой константы С, такого, что С – Х >0. Обратный и дополнительный коды отличаются выбором этой константы.
Для дополнительного кода отрицательное число Z представим как
Z = -Х = (10n –Х) – 10n,
где Z <0, Х>0, n – величина разрядной сетки, а 10n –Х – дополнительный код числа.
Для обратного кода отрицательное число Z представим как
Z = -Х = (10n – 1 – Х) – 10n +1,
где Z <0, Х>0, n – величина разрядной сетки, а 10n – 1 – Х – обратный код числа.
Пример.
Для положительного числа прямой, обратный и дополнительный коды будут одинаковыми. Для числа +31→Ап =Ао =Ад =0000 0000 0001 11112.
Для числа -31→ Ап =1000 0000 0001 11112.
Для построения дополнительного кода выбираем константу 1015= 1000 0000 0000 0000 и получаем Ад =1111 1111 1110 00012.
Общие правила образования двоичных машинных кодов:
-положительное число в прямом, обратном и дополнительном кодах одинаково;
-прямой код отрицательных и положительных чисел имеет различие только в знаковом разряде, модуль числа не меняется;
-обратный код отрицательного числа получается из прямого кода путем инверсии, т.е. замены 1 на 0 и всех 0 на 1, кроме знакового разряда;
-дополнительный код получается из обратного прибавлением 1 к младшему разряду (перенос 1 в знаковый разряд не учитывается);
-дополнительный код отрицательного числа получается из прямого кода заменой всех 1 на 0 и всех 0 на 1, кроме 1 самого младшего разряда и следующих за ней 0.
Обычно в компьютере числа в естественной форме записи хранятся в дополнительном коде, а числа в нормальной форме хранятся в прямом коде. Обратный код применяется для получения дополнительного кода.
Оставьте комментарий!
Вы должны быть авторизированы чтобы оставлять комментарии.