- •1 Частина
- •Вибір варіанту завдання та визначення вхідних даних
- •Переведення вхідних даних у двійкову систему числення
- •Переведення розрахункових чисел у двійкову, вісімкову, шістнадцяткову і двійково-десяткову системи
- •Уявлення числа в однобайтовому полі
- •Уявлення двійкових чисел у прямому, зворотному і додатковому модифікованому кодах у форматі з фіксованою комою
- •Операції додавання в зворотному і додатковому кодах
- •Уявлення чисел у форматі з плаваючою комою
-
Уявлення двійкових чисел у прямому, зворотному і додатковому модифікованому кодах у форматі з фіксованою комою
Представимо двійкові числа C і D у прямому, зворотному і додатковому модифікованому кодах у форматі з фіксованою комою(використовуючи по черзі знаки ′+′ та ′–′ перед кожним з цих чисел).
С10=1410; С2=+11102;
D10=8310; D2=+10100112;
У модифікованому коді додається до головного розряду 00 чи 11, в залежності від знаку.
У додатних чисел прямий, зворотний та додатній коди однакові.
У від’ємних чисел додатний код отримується шляхом інверсії прямого та додаванням одиниці до молодшого розряду.
См.пр = 00.1110;
-См.пр = 11.1110;
Dм.пр = 00.1010011;
-Dм.пр = 11.1010011;
См.зв = 00.1110;
- См.пр = 11.0001;
Dм.зв = 00.1010011;
-Dм.зв = 11.0101100;
См.дод = 00.1110;
-См.дод = 11.0010;
Dм.дод= 00.1010011;
-Dм.дод = 11.0101101;
-
Операції додавання в зворотному і додатковому кодах
Над отриманими числами C і D виконаємо операції додавання в зворотному і додатковому кодах (використовуючи по черзі знаки ′+′ і ′–′ перед кожним з цих чисел): (+C)+(+D), (+C)+(–D), (–C)+(+D), (–C)+(–D). Очікувані результати виконання операції додавання в десятковому коді отримаємо заздалегідь. Результат обчислень у двійковому коді представимо в прямому коді, а потім переведемо в десятковий код з метою виконати перевірку.
Таблиця 4.1 – Вхідні дані
|
Коди |
+Х |
-X |
+Y |
-Y |
|
|
||||
|
десятковий |
+14 |
-14 |
+83 |
-83 |
|
двійковий |
+1110 |
-1110 |
+1010011 |
-1010011 |
|
Машинні коди |
||||
|
прямий |
00. 001110 |
11. 1110 |
00. 1010011 |
11. 1010011 |
|
зворотний |
00. 001110 |
11.0001 |
00. 1010011 |
11.0101100 |
|
додатний |
00. 001110 |
11.0010 |
00. 1010011 |
11.0101101 |
Щоб перевести з додаткового коду у прямий, якщо число від’ємне – інвертуємо та додаємо одиницю до молодшого розряду;
Виконуємо додавання:
-
(+Х)+( +Y)
у
додатковому:
00.0001110
+ 00.1010011
00.1100001
у зворотному:
00.0001110
+ 00.1010011
00.1100001
додатковий-прямий:
00.1100001
зворотний-прямий:
00.1100001
-
(-Х)+( +Y)
у додатковому:
11.1110010
+ 00.1010011
100.1000101
у зворотному:
11.1110001
+ 00.1010011
100.1000100
Додамо 1: 00.1000101
додатковий-прямий:
Інвертуємо та додаємо 1:
00.1000101
зворотний-прямий:
00.1000101
-
(-Х)+( -Y)
у додатковому:
11.1110010
+ 11.0101101
11.0011111
у зворотному:
11.1110001
+ 11.0101100
111.0011101
Додамо одиницю:
11.0011101
+ 00.0000001
11.0011110
додатковий-прямий:
Інвертуємо та додаємо 1:
11.1100000
+ 00.0000001
11.1100001
зворотний-прямий:
Інвертуємо
11.1100001
-
(+Х)+( -Y)
у додатковому:
00.0001110
+ 11.0101101
11.0111011
у зворотному:
00.0001110
+ 11.0101100
11.0111010
додатковий-прямий:
11.1000101
зворотний-прямий:
11.1000101
Таблиця 4.2 – Результати розрахунків
|
Додавання в комбінаціях |
Результат у додатковому |
Результат у прямому |
Результат у десятковому |
|
(+Х)+( +Y) |
00.1100001 |
00.1100001 |
97 |
|
(-Х)+( +Y) |
00.1000101 |
00.1000101 |
69 |
|
(-Х)+( -Y) |
11.0011111 |
11. 1100001 |
-97 |
|
(+Х)+( -Y) |
11.0111011 |
11.1000101 |
-69 |
|
|
Результат у зворотному |
Результат у прямому |
|
|
(+Х)+( +Y) |
00.1100001 |
00.1100001 |
97 |
|
(-Х)+( +Y) |
00.1000101 |
00.1000101 |
69 |
|
(-Х)+( -Y) |
11.0011110 |
11. 1100001 |
-97 |
|
(+Х)+( -Y) |
11.0111010 |
11.1000101 |
-69 |
