Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Переполнение разрядной сетки может привести к переносу единицы в знаковый разряд, что приведет к неправильному результату. Положительное число, получившееся в результате арифметической операции может восприниматься как отрицательное, так как в знаковом разряде появится "1" и наоборот.
Например: X = 0,1011110 Y = 0,1101100 X+Y = 1,1001010 |
X и Y – коды положительных чисел, но в процессе сложения в знаковом разряде появилась "1", что означает код отрицательного числа. Чтобы распознать переполнение разрядной сетки вводятся модифицированные коды.
Модифицированный обратный код характеризуется тем, что под знак числа отводится не один, а два разряда. Форма записи чисел в модифицированном обратном коде выглядит следующим образом:
· для положительного числа X= Þ X = ;
· для отрицательного числа X= Þ X = ;
( - обозначение логической операции отрицания "не X", если X=0, то =1; X=1, =0).
В модифицированных обратном и дополнительном кодах под знак числа отводится не один, а два разряда: "00" соответствует знаку "+", "11" – знаку "-". Любая другая комбинация (“01” или “10”), получившаяся в знаковых разрядах является признаком переполнения разрядной сетки. Сложение чисел в модифицированных кодах ничем не отличается от сложения в обычных обратном и дополнительном кодах.
Пример. Даны два числа: X=101001 и Y= –11010. Сложить их в дополнительном и модифицированном дополнительном кодах.
Обычная запись | Обратный код | Модифициро-ванный обратный код | Дополнитель-ный код | Модифициро-ванный дополнительный код |
X=+0101011 Y=–0011110 | Xобр=0,0101011 Yобр=1,1100001 | Х =00,101011 Y =11,100001 | Xдоп=0,0101011 Yдоп=1,1100010 | X =00,101011 Y =11,100010 |
Выполним сложение:
Дополнительный код | Модифицированный дополнительный код | ||||
Xдоп= 0,0101011
Yдоп= 1,1100010
(X+Y)доп= 0,0001101 | X = 00,0101011
Y = 11,1100010
(X+Y) = 00,001101 |
Переполнение не наблюдается (в знаковых разрядах “00”). Результаты, полученные в обычном и модифицированном кодах, совпадают (X+Y=1101).
Дата публикования: 2015-09-18; Прочитано: 4559 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!