русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Модифікованих доповняльних кодах


Дата додавання: 2015-01-08; переглядів: 1350.


 

У загальному випадку доповняльний код (ДK), наприклад, за чотири-розрядним форматом можна пов’язати із звичайним зображенням цілих чисел А наступним співвідношенням:

(А) , ( 1.3 )

де (А) - доповняльний код цілих чисел А за чотирирозрядним форматом;

16=24 – зміщення (параметр відображення) чотирирозрядного допов-няльного коду (кількість двійкових комбінацій чотирипозиційного доповняльного коду);

- сума за модулем 16 зміщеного коду (16+А) (неподільна чотирипозиційна остача ділення безвід’ємного зміщеного коду (16+А) на 16);

4 – довжина розрядної сітки машинного зображення чисел А у доповняльних кодах.

Очевидно, що залежність (1.3) у нескінченому діапазоні зміни аргументу являє собою періодичну функцію з періодом Т = ±16, ±32 і т.д. (рис.1.3,а).

Із графіка функції (1.3) випливає неоднозначність залежності через те, що кожному значенню функції (1.3) відповідає незчисленна множина значень аргументу А. У діапазоні основного періоду (рис.1.3,б) неоднозначність функції (16+A)m16 усувається тільки у скороченому діапазоні зміни аргументу від (-8) до (+7), який можна визначити для функції ( 1.3 ) як зону її повної однозначності (рис.1.4).

У зазначеній зоні однозначності (рис.1.4) функції (1.3) кожному додатному числу А і нулю відповідає образ функції (16+A)m16 у множині двійкових наборів від 0000 до 0111 (010 ¸ 710), а кожному значенню від’ємного цілого числа А – одне значення доповняльного коду (А)4DK із множини двійкових наборів від 1000 до 1111 (810 ¸ 1510). Узагальнюючи, маємо:

0 ХХХ, якщо +710А ≥ 0;

1 ХХХ, якщо -810А ≤ - 1,

де 0 , 1 - стан знакового розряду доповняльного коду відповідно за додатним і від’ємним значеннями аргументу А ;

ХХХ – трипозиційна цифрова частина доповняльного коду.

Рисунок 1.3 – Область значень і визначення функції (1610)m16 в межах

числової прямої А (а)та у проміжку основного періоду (б) Т = ±1610 :

(1610 + А)m16 - позначення остачі функції (1610 + А) за модулем 1610

відповідно в межах числової осі А і основного періоду Т = ±1610

 

Рисунок 1.4 – Зона однозначності подання чисел А із знаком
чотирипозиційними доповняльними кодами (А) = (16)m16 у
проміжку основного періоду між (-810) і (+710)

Розглянемо типові приклади відображення чисел із знаком у доповняльних кодах (у зоні однозначності) за зазначеним єдиним для додатних і від’ємних чисел “арифметичним” способом ( 1.3 ).

Нехай А = +102 ( +210 ). Тоді згідно з ( 1.3 ) маємо:

(А) = [1610 +(+210)]4m16 =[1810]4m16 = [210]4 = 0 010,

де 0 - стан знакового розряду доповняльного коду цілого додатного числа А=+102.

Нехай тепер А = -102 (-210) . Тоді згідно з (1.3) маємо:

(А) = [1610 +(-210)]4m16 =[1410]4 = 1 110,

де 1 - стан знакового розряду доповняльного коду цілого від’ємного числа А = -102.

На основі “арифметичного” виразу (1.3) можна визначити “логічний” спосіб перетворення звичайного зображення цілих чисел із знаком у доповняльний код:

(1610 + А )4m16 = | A |4, якщо (+7) ≥ А ≥ 0 ; ( 1.4 )

(А) = (1610 + А )4m16 = [16 - | A|4]4 =

=1510 - | A|4 + 1 = + 1, якщо - 8 ≤ А ≤ - 1, ( 1.5 )

де (А) - чотирипозиційний доповняльний код цілих чисел А із знаком;

| А |4 – чотирипозиційне зображення модуля цілих чисел із знаком у проміжку від (-810) до (+710).

Розглянемо приклади перетворення звичайного зображення цілих чисел за «логічними» алгоритмами (1.4) і (1.5).

Нехай А = -310 = -112. Тоді згідно з (1.5 ) маємо:

(А)4DK = + 1 = + 1 = + 1 =

= + 1 = 1100 + 1 = 1 101. ( 1.6 )

Нехай тепер А = +310 = +112. Тоді згідно з (1.4 ) маємо:

(А) = | A |4 = |+11|4 = 0 011.

Приклади кодування у доповняльних кодах чисел А із знаком для діапазону визначення функції ( 1.3 ) від (-810) до (+710) подано на рис. 1.5.

Для спрощення виявлення ознаки переповнення при виконанні операцій додавання чисел на суматорах арифметичних пристроїв використо-вують також модифіковане зображення звичайного доповняльного коду – модифікований доповняльний код (МДK).

У загальному випадку модифіковане зображення, наприклад, чотирипо-зиційного доповняльного коду чисел А ((А) ) можна подати співвідношен-ням:

(А) = (3210+ А )m32 ( 1.7 )

На основі “арифметичного” виразу (1.7) визначається “логічний” ал-горитм перетворення звичайного чотирипозиційного доповняльного коду (А) у його п’ятипозиційний модифікований доповняльний код (А) :

 

(3210 + А ) = | А |5 = 0 (А) ,

якщо 0 < A ≤ ( +710 ) ; ( 1.8 )

(А) = (3210 + А )5 m32 = (1610 + (1610 + А ))5 =

= (1610 + 1610 – | A |) =1610 + А =

= 1 А , якщо ( -810) ≤ A ≤ ( -1 ), ( 1.9 )

де А – зображення чотирипозиційного доповняльного коду (знаковий і цифрові розряди чотирипозиційного доповняльного коду чисел А).

 

 
 

 

 


( А ≥ 0)

       
   
А ≥ 0
 
 


Рисунок 1.5 – Приклади подання чисел А із знаком у проміжку

між (-810) і (+710) чотирипозиційними доповняльними кодами

(ХХХХ) = (1610 +А)m16

 

Таким чином, згідно з (1.8) і (1.9) перетворення звичайного чотири-позиційного формату доповняльного коду у п’ятипозиційний модифікований доповняльний код (МДK) потрібно виконувати наступним чином. Чотири молодших розряди МДK заміщуються безпосередньо розрядами звичайного чотирипозиційного доповняльного коду і знаковий розряд звичайного ДK (0 або 1) додатково дублюється у найстаршому (знаковому) розряді МДK. Отже, у МДK чисел А комбінація 00 у двох старших розрядах відповідає коду додатних чисел А, а комбінація 11 - коду від’ємних чисел А .

У графічній формі відповідність між числами А із знаком у проміжку між (-810 ) і (+710 ) і їх поданням у МДK наведено на рис.1.6.

Приклади двійкового зображення чисел у МДK для зазначеної вище області визначення аргументу функції (1.7) подано на рис.1.7.

 

 

Рисунок 1.6 - Графічна інтерпретація подання чисел А із
знаком у проміжку між (-810) і (+710) п’ятипозиційними МДК

 


( А ≥ 0)

       
   


A < 0 A ≥ 0

Рисунок 1.7 – Приклади подання чиселА із знаком у

проміжку між (- 810) і (+710) п’ятипозиційними МДK

 


<== попередня лекція | наступна лекція ==>
Комп’ютерне подання чисел із знаком у прямих кодах | Комп’ютерне подання чисел із знаком у обернених та модифікованих обернених кодах


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн