Зворотний і додатковий коди числа
Формат представлення чисел з плаваючою комою
Приклад №1. Уявити число 133,54 в формі числа з плаваючою крапкою.
Рішення. Уявімо число 133.54 в нормалізованому експоненційному вигляді:
1.3354 * 10 2 = 1.3354 * exp10 2
Число 1.3354 * exp10 2 складається з двох частин: мантиси M = 1.3354 і експоненти exp10 = 2
Якщо мантиса знаходиться в діапазоні 1 ≤ M 3
Приклад №2. Уявити двійкове число 101.102 в нормалізованому вигляді, записати в 32-бітом стандарті IEEE754.
Цілі числа в ЕОМ можуть бути представлені у вигляді:- прямого коду. Прямий код двійкового числа збігається із зображення із записом самого числа.
- зворотного коду. Зворотний код для позитивного числа збігається з прямим кодом. Для негативного числа всі цифри числа замінюються на протилежні (1 на 0, 0 на 1), а в знаковий розряд заноситься одиниця.
- додаткового коду. Додатковий код позитивного числа збігається з прямим кодом. Для негативного числа додатковий код утворюється шляхом отримання зворотного коду і додаванням до молодшого розряду одиниці.
Прямий код числа кодує тільки знакову інформацію і використовується для зберігання позитивних і негативних чисел в ЕОМ. Прямий код двійкового числа збігається із зображення із записом самого числа, але в знаковому розряді ставиться 0, якщо число позитивне і, 1 якщо число негативне.
Зворотний і додатковий коди використовуються для виконання всіх арифметичних операцій через операцію додавання.
Слід пам'ятати, що позитивні числа в зворотному і додатковому коді збігаються з прямим кодом.
1) Прямий код числа (кодується тільки знакова інформація), "+" = 0; "-" = 1.
Для прямого коду можливі два подання нуля, машинний позитивний нуль, тобто + 0,110 = 0,110, машинний негативний нуль, тобто -0,111 = 1,111.
приклад перекладу
2) Зворотний код числа, використовується для виконання арифметичних операцій віднімання, множення, ділення, через додавання. Зворотний код позитивного числа збігається з його прямим кодом, зворотний код негативного числа формується за правилами: в знаковому розряді записується "1"; цифрові значення змінюються на протилежні.
3) Додатковий код числа. має таке ж призначення, як і зворотний код числа. Формується за такими правилами: позитивні числа в додатковому коді виглядають так само як і в зворотному і в прямому коді, тобто не змінюються. Негативні числа кодуються так: до зворотного коду негативного числа (до молодшого розряду) додається 1, за правилом двійковій арифметики.
приклад перекладу
Для виявлення помилок при виконанні арифметичних операцій використовуються також модифіковані коди: модифікований прямий; модифікований зворотний; модифікований додатковий, для яких під код знака числа відводиться два розряду, тобто "+" = 00; "-" = 11. Якщо в результаті виконання операції в знаковому розряді з'являється комбінація 10 або 01 то для машини це ознака помилки, якщо 00 або 11 то результат вірний.
Як визначити, позитивне або негативне число? Знак числа визначає старший біт: 0 - позитивне число, 1 - негативне число. Наприклад, для числа 1,001 відразу можна визначити, що воно негативне (менше нуля).
Приклад. Уявити в додатковому коді десяткові числа: -4.
Рішення. Уявімо число в двійковому коді.
4 = 00001002
Інвертуємо все розряди числа, а в знаковий розряд заносимо 1.
Двійкове число 0000100 має зворотний код 1,1111011
Додаємо до молодшого розряду 1.
У 0-му розряді виникло переповнення (1 + 1 = 10). Тому записуємо 0, а 1 переносимо на 1-й розряд.