Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БГУИР---2012 / Лекции в БГУИР / FK9-Компьютерная арифметика. Кодирование чисел.ppt
Скачиваний:
58
Добавлен:
11.05.2015
Размер:
1.14 Mб
Скачать

Двоичная арифметика (продолжение)

22

 

Умножение (продолжение).

 

 

 

Пример 1:

 

 

 

Вычислить произведение 17(10) * 12(10)

в двоичной форме.

Пример:

Найдем произведение двух чисел

X*Y=1101(2)*1011(2)=13(10)*11(10)= 143(10). Обозначим Pi

Физика компьютеров 2011

Л.А.Золоторевич

Двоичная арифметика (продолжение)

23

Умножение (продолжение).

Деление.

Деление - операция, обратная умножению, поэтому при

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

Число этих повторений показывает, сколько раз вычитаемое

укладывается в уменьшаемомФизика компьютеров. 2011

Л.А.Золоторевич

Двоичная арифметика (продолжение)

24

 

Деление (продолжение).

 

 

Пример 1:

Вычислить 204(10) /12(10) в двоичном

Таким образом, процедура деления не так проста для машинной реализации, как операция умножения, поскольку постоянно приходится выяснять, сколько раз делитель укладывается в определенном числе. В общем случае

частное от деления получается дробным, причем

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

числами. Л.А.Золоторевич

Кодирование. Декодирование информации

25

(продолжение)

 

 

 

 

Для представления информации в компьютерах

 

 

используются прямой, обратный и дополнительный

 

 

двоичные коды.

 

 

Двоичный код – код, алфавит которого ограничен двумя

 

 

знаками {0,1}.

 

 

При этом предполагается, что длина двоичного кода

 

 

ограничена и что для представления знака числа выделен

 

 

отдельный бит – знаковый разряд.

 

 

Прямой двоичный код – двоичный код, в котором знак

 

 

представляется нулем для положительных чисел и

 

 

единицей для отрицательных, а абсолютная величина

 

 

изображается в двоичной позиционной системе (например,

 

 

310=00011ПК, -310=10011ПК).

 

 

Обратный двоичный код (ОК) – двоичный код, который

 

 

для положительных чисел совпадает с прямым двоичным

 

 

кодом, а для отрицательных чисел получается из

 

 

соответствующего прямого двоичного кода путем

 

 

инвертирования каждого бита, кроме знакового разряда

 

 

(например, 310=00011ОК, -310=11100ОК).

 

 

Физика компьютеров 2011

 

 

 

 

Обратный код позволяет унифицировать сложение и

 

 

Л.А.Золоторевич

 

 

ополнительныйКод рование. Декодированиедвоичный кодинф– двоичныйрмациикод, который26дл оложительных(продолжение)чисел совпадает с прямым, а для отрицатель

олучается из обратного кода путем добавления к нему «1»

апример, 310=00011ДК, -310=11101ДК).

реимущество дополнительного кода перед обратным кодом остоит в упрощении суммирования, так как отсутствует иклический перенос из старшего разряда в младший. воично-десятичный код – код, в котором десятичные цифр

представляются их четырехразрядными двоичны алентами апример, 3=0011, 9=1001).

ри двоично- десятичном представлении чисел байт разбивае а две тетрады (два четырехбитных набора), в каждую из кот

омещается код десятичной цифры или знака числа. Двоично- десятичная система счисления применяется

тва бщения человека с компьютером.

Физика компьютеров 2011 Л.А.Золоторевич

Двоичная арифметика (продолжение)

27

 

Особенности сложения в прямом коде.

 

 

 

Сложение в прямом коде чисел, имеющих одинаковые

 

 

 

знаки, достаточно просто: числа складываются, и сумме

 

 

 

присваивается знак слагаемых. Значительно более

 

 

 

сложным является алгебраическое сложение в прямом

 

 

 

коде чисел с разными знаками. В этом случае приходится

 

 

 

определять большее по модулю число, производить

 

 

 

вычитание модулей и присваивать разности знак большего

 

 

 

по модулю числа. Такую операцию значительно проще

 

 

 

выполнять, используя обратный и дополнительный коды.

 

 

 

Особенности сложения в обратном коде.

 

 

 

В общем случае ОК является дополнением модуля

 

 

 

исходного числа до наибольшего числа без знака,

 

 

помещенного в разрядную сетку.

Алгоритм формирования ОК очень прост, при этом ОК позволяет унифицировать операции сложения и вычитания в АЛУ, которые в прямом коде выполняются по-разному.

Однако работа с ОК вызывает ряд трудностей. В частности,

возникают два нуля:Физика+0 и -0,компьютеровт.е. в прямом2011коде (в котором

представлены положительныеЛ.А.Золоторевиччисла) имеет место (+0) =

Двоичная арифметика (продолжение)

28

 

Особенности сложения в обратном коде(продолжение).

 

 

 

Пример 1:

 

 

 

Вычислить выражение -3(10) -2(10).

 

 

Пример 2:

Вычислить 7(10) -

В современных ЭВМ абсолютное большинство

операций выполняется в дополнительном коде.

Физика компьютеров 2011 Л.А.Золоторевич

Двоичная арифметика (продолжение)

29

 

Особенности сложения в дополнительном коде.

 

 

Общее правило:

При алгебраическом сложении двух двоичных чисел, представленных обратным (или дополнительным) кодом,

производится арифметическое суммирование этих кодов, включая разряды знаков.

При возникновении переноса из разряда знака единица переноса прибавляется к МЗР суммы кодов при использовании ОК и отбрасывается при использовании ДК.В результате получается алгебраическая сумма в обратном (или дополнительном) коде.

Рассмотрим подробнее алгебраическое сложение для

случая представления отрицательных чисел в ДК.

Физика компьютеров 2011 Л.А.Золоторевич

Двоичная арифметика (продолжение)

30

 

Особенности сложения в дополнительном коде.

 

 

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

знаковый разряд равен нулю: результат - положительное число в ПК;

знаковый разряд равен единице: результат - отрицательное число в ДК.

Для определения абсолютного значения результата, его необходимо инвертировать, затем прибавить единицу.

Физика компьютеров 2011 Л.А.Золоторевич

Двоичная арифметика (продолжение)

31

 

Особенности сложения в дополнительном коде.

 

 

 

Пример 1:

 

 

 

Вычислить алгебраическую сумму 58 - 23.

 

 

Пример 2:

Вычислить алгебраическую сумму 26 - 34.

Физика компьютеров 2011 Л.А.Золоторевич

Соседние файлы в папке Лекции в БГУИР