Spoun |
ДСПК 06.10.2005, 19:00 |
|
06/10/05 1
|
Кто нить подскажите где взять ответ на вопрос : вычитание чисел на двоичном сумматоре обратного кода.?
|
|
|
|
|
Zadov |
06.10.2005, 19:25 |
|
20/08/05 20 не ждали
|
Была такая тема в прошлом году по информатике, может, и пригодится...
В общем, прямые коды со знаковым битом не используются из-за появления специальной арифметики. Используется специальное кодирование - 0 и положительные числа-как обычно до того, как не будет достигнуто число 0111(для 4-битного поля). -1=1111,-2=1110 итд. Это называется дополнительный код. Чтобы получить такой код для отрицательного числа, надо из кода на 1 больше, чем максимально возможный для данного поля, вычесть код числа, как если бы оно было положительным.(Например, дополнительный код числа -3 будет для 4-х битного поля 10000-11=1101). По дополнительному коду прямой получается по тем же правилам.(То есть из числа на 1 больше максимального вычитается дополнительный код). Такие дополнительные коды могут складываться как обычно (ведь вычитание-это сложение с отрицательным числом. Например, -3+2 в десятичной системе в дополнительных кодах будет выглядеть как 1101+10=1111=-1, 3-2 будет 11+1110=10001, первя единичка убиреется(у нас 4-х битное поле), результат=1). Надеюсь, ответил на вопрос.
|
|
|
|
|
|
Страница 1 из 1
|
[ Сообщений: 2 ] |
|
Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы