Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Представление данных.doc
Скачиваний:
45
Добавлен:
16.04.2015
Размер:
713.73 Кб
Скачать

Сложение и вычитание

На рис.3.16 приведен пример сложения чисел в дополнительном коде как беззнаковых чисел по правилам обычной двоичной арифметики. На этом же рисунке дается различная трактовка слагаемых и результата. Все числа представлены в формате “слово” длиной 8 битов.

Слагаемое 7 6 5 4 3 2 1 0

0

0

1

1

0

1

0

1

Слагаемое 7 6 5 4 3 2 1 0

1

1

0

1

0

0

1

1

Сумма 7 6 5 4 3 2 1 0

0

0

0

0

1

0

0

0

Трактовка типа данных и типа арифметики

а) целые числа

( 25+ 24 + 22 + 20 ) + (_ 27 + 26+ 24+ 21+ 20) = 23= 8

б) дробные числа; дробная арифметика

( 2-2 + 2-3+ 2-5+ 2-7) + (_20 + 2-1+ 2-3+2-6+ 2-7 ) = 23= 0,0625

в) дробные числа; целочисленная арифметика;

слагаемые и сумма – целые числа, которые

масштабируются к машинной единице равной 2

( см. вариант а)

53 / 128 + (_ 45) / 128 = 8 / 128 = 0,0625

Рис. 3.16. Сложение в дополнительном коде

Как видно из рис.3.16, операция сложения в дополнительном коде выполняется одинаково для целых и дробных чисел при целочисленной и дробной арифметиках.

На рис.3.17 приведен пример вычитания чисел в дополнительном коде как беззнаковых чисел по правилам обычной двоичной арифметики. Трактовка исходных данных и результата аналогична рис. 3.16. Все числа представлены в формате “слово” длиной 8 битов.

Уменьшаемое

7 6 5 4 3 2 1 0

0

1

1

0

0

0

0

0

Вычитаемое 7 6 5 4 3 2 1 0

0

0

0

1

0

0

0

0

Разность 7 6 5 4 3 2 1 0

0

1

0

1

0

0

0

0

Трактовка типа данных и типа арифметики

а) целые числа

(26+ 25)_24=96_ 16 = 80

б) дробные числа; дробная арифметика

(2-1+ 2-2)_2-3 = 0,625

в) дробные числа; целочисленная арифметика;

уменьшаемое, вычитаемое и разность _целые числа,

которые масштабируются к машинной единице равной 27

96 / 128 _16 / 128 = 80 / 128 = 0,625

Рис. 3.17. Вычитание в дополнительном коде