Натуральний, прямий, обернений і додатковий коди двійкових чисел
Залежно від способу обробки бітів, розміщених у розрядній сітці, розрізняють два види кодів: паралельний, коли в кожний момент часу всі розряди сітки доступні для обробки, і послідовний, коли в кожний момент часу доступний один розряд сітки. Числа, подані паралельним кодом, доступні за один такт, а числа, подані послідовним кодом, – за n тактів, де n – розрядність сітки. Якщо розрядність числа перевищує довжину сітки, то його обробка ведеться частинами. Натуральним кодом називають подання числа як цілого беззнакового у двійковій системі числення. Діапазон подання чисел у натуральному коді для n-розрядної сітки становить від 0 до 2n - 1, тобто для 8-розрядної сітки – від 0 до 255. Для подання цілих знакових чисел використовують прямий, обернений і додатковий коди. Старший розряд сітки є знаковим. Значення цього розряду дорівнює 0 для додатних чисел і 1 – для від’ємних. В інших розрядах розміщується модуль числа. Якщо до натурального коду цілого числа додати знаковий розряд, то одержуємо запис числа у прямому коді. Домовимося знаковий розряд розташовувати зліва і відокремлювати від розрядів модуля числа точкою, наприклад: + 6(10) = 0. 110(ПК); - 6(10) = 1. 110(ПК). Використання ПК забезпечує виконання операції додавання двох додатних чисел звичайним способом без будь-яких складностей – не варто лише робити перенос одиниці старшого розряду модуля суми у знаковий розряд. Тобто при виконанні арифметичних операцій над ПК двійкових чисел знаковий розряд і розряди модуля не можна розглядати як єдине ціле. У цьому можна переконатися, розглянувши такий приклад:
Однак, виконання операції віднімання одного числа від іншого шляхом безпосереднього додавання їхніх ПК неможливо. Неважко також помітити, що в ПК нуль має два можливі зображення: - 0 = 1.000... і + 0 = 0.000..., що ускладнює інтерпретацію результатів виконання арифметичних операцій у ЕОМ.
Іншою формою запису двійкових чисел є обернений код. ОК двійкового від’ємного числа утворюється з ПК, рівного йому за модулем додатнього числа, шляхом інвертування значень усіх його розрядів.Або: ОК від’ємного числа утворюється шляхом інверсії всіх розрядів модуля цього числа, записаного у ПК. Знаковий розряд при цьому зберігає значення 1.Наприклад, -6(10) = 1.110(ПК) = 1.001(ОК). При виконанні арифметичних операцій над двійковими числами, поданими в ОК, знаковий розряд і розряд модуля числа можна розглядати як єдине ціле (перенос одиниці зі старшого розряду модуля суми в знаковий розряд не приводить до помилкового результату), але нуль, як і раніше, має два зображення – „додатне” і „від’ємне”. Слід зазначити, що отриманий при додаванні від’ємний результат також утворюється в ОК. У цьому випадку число може бути перетворене у ПК інверсією всіх значущих розрядів (розрядів модуля). Наприклад:
(+6) + (-6) = (-0)
Найбільше поширення в обчислювальних пристроях одержало подання від’ємних двійкових чисел за допомогою додаткового коду. ДК від’ємного числа утворюється з його прямого коду за правилом: - у знаковому розряді залишається одиниця; - розряди модуля числа інвертуються; - до молодшого розряду додається одиниця. Очевидно, що ДК від’ємного числа утворюється з його ОК додаванням одиниці до молодшого розряду. Наприклад, - 6(10) = 1.010(ДК). Дійсно, для числа - 6 маємо:
Зворотний перехід від ДК до ПК або ОК відбувається за тими ж правилами. Головною перевагою ДК є те, що цифра 0 у ньому має єдине подання: 0.000... Саме тому, для подання від’ємних чисел у сучасних ПЕОМ використовується переважно ДК.
Неправильний дріб (число, що має цілу частину) зі знаком записують у різних кодах за допомогою традиційного роздільника – коми між цілою і дробовою частиною. Наприклад: - 118,375(10) = 1.0001,101(ДК). Слід пам’ятати, що для кодування додатніх чисел застосовується тільки ПК, хоча можна сказати, що для таких чисел ДК і ОК збігаються з прямим. Операція одержання ДК від’ємного числа з ПК, рівного йому за модулем додатнього числа, називається операцією доповнення. Ця операція полягає в інвертуванні всіх розрядів вихідного коду (включаючи знаковий) і додавання до молодшого розряду одиниці. Таким чином, сформулюємо наступне правило: у системі двійкових чисел зі знаком заміна додатнього числа на рівне йому за модулем від’ємне і навпаки, від’ємного на додатне, здійснюється шляхом застосуванням до коду даного числа операції доповнення. Ця властивість подання від’ємних чисел у ДК дозволяє при виконанні арифметичних операцій взагалі відмовитися від операції віднімання, замінивши її операцією додавання з числом, що має знак, протилежний знаку числа, яке віднімається.
Читайте также: Г) ключкоподібний, ручкою обернений до основи. Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|