Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 4.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
188.93 Кб
Скачать

Лекция 4

2.2.АРИФМЕТИЧЕСКИЕ ДЕЙСТВИЯ НАД МНОГОРАЗРЯДНЫМИ ДВОИЧНЫМИ ЧИСЛАМИ

2.2.1.Сложение многоразрядных чисел

Сложение двух двоичных чисел осуществляется точно так же, как и в случае десятичных чисел. Более того, двоичное сложение даже проще, так как есть лишь несколько правил, которые необходимо будет запомнить. Рассмотрим десятичное сложение:

3

7

6

+4

6

1

8

3

7

Сначала складываются младшие значащие разряды, которые в данном примере дают в сумме 7. После этого прибавляются разряды во второй позиции справа. Их сумма равна 13, поэтому делается перенос 1 из разряда десятков в старший разряд. Складывая ее с цифрами, которые там уже имеются, получаем 8.

Аналогичные операции нужно выполнить и в случае двоичного сложения. Однако теперь дело приходится иметь только с четырьмя возможными вариантами сложе­ния, так как в любой позиции можно складывать лишь два двоичных числа (бита):

0 + 0 = 0

1 + 0 = 1

1 + 1 = 10 = 0 + перенос 1 в следующий разряд

1 + 1 + 1 = 11 = 1 + перенос 1 в следующий разряд

Последний случай иллюстрирует ситуацию, когда складываются единицы, стоящие в одном разряде, а к ним после переноса из младшего разряда добавляется еще одна единица. Теперь рассмотрим несколько примеров сложения пары двоичных чисел (в скобках рядом приведены их десятичные эквиваленты):

1011

(9)

+ 1111

(15)

11000

(24)


011

(3)

+ 110

(6)

1001

(9)


Рассматривать сложение более чем двух двоичных чисел нет никакой необходимости, так как все цифровые системы могут складывать лишь по два числа за такт. Если же надо сложить более двух чисел, то сначала складываются два первых из тах, а затем к сумме прибавляется третье и т.д. Поскольку современные цифровые компьютеры могут осуществлять операцию сложения за время порядка наносекунды, то такой подход вполне оправдывает себя.

2.2.2. Представление чисел со знаком

В цифровых компьютерах двоичные числа выражаются набором состояний двоичных устройств хранения (триггеров). Каждое устройство представляет один бит, например, шестибитовый триггерный регистр может хранить двоичные числа от 000000 до 111111 (от 0 до 63 в десятичном представлении). Эта величина называется модулем числа. Большинство современных цифровых компьютеров и калькуляторов работают как с положительными числами, так и с отрицательными, поэтому требуется какой-то способ представления знака числа (“+” или " –" ). Обычно с этой целью к числу прибавляют еще один бит, который называется знаковым битом.

В общем случае, если знаковый бит содержит 0, то число считается положительным, а если 1, то число будет отрицательным, как показано на рис.2.2.1. Регистр А содержит биты 0110100. Крайний слева 0 (бит А6) — это знаковый бит, который представляет со­бой “+”. Шесть остальных битов представляют модуль двоичного числа 1101002, что эквивалентно 5210. Таким образом, число, хранящееся в регистре А, будет равно +52. Аналогично, число в регистре В будет равно -52, так как 1 в знаковом бите представляет знак "-".

А6

А5

А4

А3

А2

А1

А0

0

1

1

0

1

0

0

= +52

знаковый

бит "+"

Модуль 5210

А6

А5

А4

А3

А2

А1

А0

1

1

1

0

1

0

0

= -52

знаковый

бит "-"

Модуль 5210

Рис.2.4. Представление чисел со знаком в форме знак-модуль

Знаковый бит используется, чтобы показать принадлежность данного хранящего­ся двоичного числа к положительным или отрицательным числам. Числа на рис. 2.4 состоят из знакового бита и шести бит, представляющих модуль. Биты модуля — действительные двоичные эквиваленты десятичных значений. Такая система называ­ется системой типа знак-модуль и служит для представления двоичных чисел со знаком.

Хотя эта система и относится к прямым методам представления чисел, калькуля­торы и компьютеры обычно ее не используют, так как в этом случае реализация схем, как правило, более сложна, чем для других систем. Наиболее распространен­ная система представления чисел со знаком — дополнительный код, однако сначала необходимо научиться получать обратный и дополнительный коды двоичного числа.

2.2.3.Обратный код

Обратный код двоичного числа (l’s complement) получают заменой каждого 0 на 1 и каждой 1 на 0. Иначе говоря, каждый бит числа изменяется на противоположный (обратный). Этот процесс показан далее.

1

0

1

1

0

1

двоичное число

0

1

0

0

1

0

обратный код двоичного числа

Таким образом, обратный код числа 101101 будет равен 010010.