ПОДАННЯ ДВІЙКОВИХ ЧИСЕЛ З УРАХУВАННЯМ ЗНАКА

Операцію віднімання двох позитивних А і В чисел можна розглядати як операцію алгебраїчного додавання чисел з різними знаками А - В = А + ( ). Тому для заміни арифметичної операції віднімання операцією алгебраїчного додавання необхідно якимось чином представити число з урахуванням знака. Для представлення чисел зі знаком використовуються прямий, зворотний і додатковий коди. Так як кодування позитивних чисел зводиться до запису нуля в старший додатковий розряд двійкового числа, основна особливість цих кодів полягає в тому, що всі три коду для позитивних чисел збігаються. Наприклад, для 3-розрядного позитивного числа А= 110 прямий, зворотний і додатковий коди мають вигляд 4-розрядного числа: А = Л () бр = ЛДО || = 0110.

Тому в подальшому основну увагу приділено поданням негативних двійкових чисел у вигляді "розрядних кодів. Для простоти розглядаються цілі числа.

Визначимо діапазон значень чисел, що представляються (п - 1) розрядних двійковим кодом з урахуванням того, що п- й розряд відводиться під знак числа. У розрядну сітку цифрового пристрою можна записати наступне максимальне за абсолютним значенням (і - 1) -розрядної двійковечисло | Л | тах = 11 ... 1 = 2 "" 11, де п - 1 - кількість значущих розрядів розрядної сітки. отже, діапазон зміни значень цілих чисел лежить в межах ~ (2 "~ 1 - 1) < <А <( 2" - '- 1), тобто

Прямий код. Для уявлення цілого негативного двійкового числа А = -яг_2ап-з-aiag в ПРЯМ0М коді досить в додатковий знаковий розряд записати одиницю, зберігши всі цифрові розряди незмінними: ОПР = п 2 а п З ... а { а 0. Наприклад, якщо А = -101, то ОПР = 1101. Правила перетворення цілих чисел в прямий код мають вигляд

де | Л | - модуль числа А.

Зворотний код. Для отримання зворотного коду цілого двійкового негативного числанеобхідно проинвертировать все цифрові розряди, тобто всі нулі замінити на одиниці, а всі одиниці - на нулі, і в додатковий старший розряд записати одиницю:. Наприклад, якщо А = -101, то. Відзначимо, що стоять попереду незначущі нулі модуля числа також інвертуються: для А = -001 зворотний код має вигляд

Правила перетворення цілих чисел в зворотний код мають вигляд

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

Правила перетворення цілих чисел в додатковий код мають вигляд

Наприклад, для числа А = -101 отримуємо Лдоп = 1010 + 1 = 1011; для числа А = -001 отримуємо Лдоп = 1110 + 1 = 1111.

Для наочності в табл. 2.5 наведені правила і приклади запису цілих чисел і чисел з фіксованою точкою.

Таблиця 2.5

числа А

прямий код

А пр

зворотний код

А обр

додатковий код

А доп

Цілі

> 0

А

А

А

<0

1 А

1 А

1 А + 1

101

0101

0101

0101

-101

1 101

1010

1011

+000

0000

0000

0000

-000

1000

1111

0000

З фіксованою точкою

> 0

А

А

А

<0

0,101

0101

0101

0101

-0,101

1 101

1010

1011

+0,000

0000

0000

0000

-0,000

1000

1111

0000

 
< Попер   ЗМІСТ   Наст >