9 Июнь 2008

2. Выполнение арифметических операций над числами в двоичной системе счисления.

Коды двоичных чисел

  1. прямой код
  2. обратный код
  3. дополнительный код

В ЭВМ в процессе осуществляются все вычисления. Процессор имеет в своем составе АЛУ и УУ. В свою очередь АЛУ имеет сумматор. В сумматоре выполняются суммирования чисел и логические операции. Все арифметические операции сводятся к сложению ( например вычитание есть сложение в дополнительном коде, умножение - есть сложение со сдвигом влево, деление – есть сложение со сдвигом вправо) все остальные функции сводятся к выполнению арифметических операций (например: sin x раскладывается в ряд)

1. прямой код – получается из двоичного числа путем прибавления 0 – для положительного числа и 1 – для отрицательного числа. Знаковый разряд отделяется от двоичных записей числа точкой.

А10=13

А2=1101

Апрямой код=0.1101

0.-знак разряда

1101 – двоичная запись числа

B10=-11

B2=-1011

Bпрямой код=1.1011

1.-знаковый разряд

1011 – двойная запись числа

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

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

Апрямой кодобратный коддополнительный код

Bпрямой код=1.1011

Bобратный код=1.0100

3. Дополнительный код

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

Bпрямой код=1.1011

Bобратный код=1.0100

Bдополнительный код=1.0100+1=1.0101

А10=24

В10=-18

А2=11000

Апк=0.11000

Аок=0.11000

Адк=0.11000

Bпк=1.10010

Bок=1.01101

Bдк=1.01110

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

x

y

z

0

0

0

0

1

1

1

0

1

1

1

0

1 примечание: при выполнении действий количества разрядов в двоичной записи числа должно быть одинаковым 101+добавляем 010.

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

А=85

B=-58

А10=85

85 1

42 0

21 1

10 0

5 1

2 0

1

А2=1010101

А8=125

А2=1010101

А10=55

А10=5*16 (в 1 степени)+5*16 (в 0 степени)=80+5=85

B=-58

B10=-58

B2=111010

58 0

29 1

14 0

7 1

3 1

1

B8=72 B10=7*8 (в 1 степени)+7*2(в 0 степени)=56+2=58

B16=3A B10=3*16(в 1 степени)+10*16(в 0 степени)=48+10=58

Bпрямой код=1.0111010

Bобратный код=1.1000101

Bдополнительный код=1.1000110

Апк=0.1010101 (+85)+Bдк= 1.1000110 (-58) = 0.00011011

© Проект «Студенты-Программеры»., 2008. Все права защищены.
Перепечатка материалов только при наличии активной ссылки на источник.
Powered by WordPress