Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика_2011__1_МГРИ-РГГРУ.pdf
Скачиваний:
58
Добавлен:
29.03.2016
Размер:
2.47 Mб
Скачать

Отрицательные числа

Для представления отрицательных чисел в компьютере используют дополнительный код. Дополнительный код представляет собой дополнение модуля отрицательного числа до 0. Алгоритм получения дополнительного кода для отрицательного числа состоит из 3-х шагов.

Шаг 1: Записать модуль числа в прямом коде в n двоичных разрядах. Число 2009 в двоичной системе счисления равно 11111011001. Прямой 16разрядный код числа 2009 равен 0000011111011001.

Шаг 2: Получить обратный код, инвертируя значения всех битов в прямом коде числа. В нашем примере получим обратный код: 1111100000100110. Шаг 3: Прибавить 1 к полученному обратному коду.

1111100000100110 + 1 = 1111100000100111

Итак, отрицательное число –2009 в 16-разрядном компьютерном представ-

лении будет равно 1111100000100111.

Арифметические операции в двоичной системе счисления

Сложение в двоичной системе счисления.

Правила выполнения в двоичной системе счисления арифметического сложения одноразрядных чисел,

0+0=0 1+0=1 0+1=1 1+1=10.

Следовательно, используя перенос в старший разряд, получаем:

1

1

1

0

1

0

1

0

0

1

1

, 1

1

1

+

1

1

1

1

1

0

0

1

0

1

,

0

1

1

1 0

1

1

0

0

1

1

1

0

0

1

,

0

1

0

Вычитание в двоичной системе счисления.

Исходя из того, что вычитание есть действие, обратное сложению, запишем правила арифметического вычитания одноразрядных чисел в двоичной системе счисления:

0-0=0 1-0=1 1-1=0 10-1=1

Используя эти правила, можно проверить правильность произведенного выше сложения вычитанием из полученной суммы одного из слагаемых.

1 0

1

1

0

0

1

1

1

0

0

1

, 0

1

0

-

1

1

1

1

1

0

0

1

0

1

,

0

1

1

1

1

1

0

1

0

1

0

0

1

1

,

1

1

1

Использование дополнительного кода позволяет в компьютере вычитание заменить сложением и, тем самым, уменьшить элементную базу.

Например. 2009+(-2009)=0

 

 

 

 

 

 

 

 

 

0

0

0

0

0

1

1

1

1

1

0

1

1

0

0

1

+

1

1

1

1

1

0

0

0

0

0

1

0

0

1

1

1

 

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

Для этого отрицательные числа на компьютере нужно хранить или преобра-

зовывать в дополнительный код.

50