Приклади додавання (віднімання) чисел з рухомою комою 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Приклади додавання (віднімання) чисел з рухомою комою



 

Алгоритм:

)   Запис числа в розрядну сітку автомата;

)   Нормалізація числа;

)   Представлення числа в оберненому і доповнюваному коді;

)   Визначення різниці порядків;

)   Зсув мантис на різницю порядків;

)   Складання мантис, якщо потрібно перевести результат у пр. код.

Приклад 1:

А= -11010

В=1000

Розрядна сітка: 16

А=11.00011010.00.0000

В=00.00001000.00.0000

Нормалізація:

А=11.11010000.11.0011

В=00.10000000.11.0100

Аобр=11.00101111.11.1100

Вобр=00.10000000.11.1011

Повністю інвертуємо порядок В разом із знаком

+00.0100=00.0001

Р>0: зсув мантиси В вправо на 0001

Взс=00.01000000

С=11.00101111+00.01000000=11.01101111

Переведення у пр. код:

С=11.10010000

Відповідь: 11.10010000.11.0011=11.00010010.00.0000= -1810

Приклад 2:

А= 11.111

В=00.101101

Розрядна сітка: 16

А=11.00000111.11.0000

В=00.00101101.11.0000

Нормалізація:

А=00.11100000.11.0101

В=00.10110000.11.0010

РАобр=11.1010

РВобр=11.1101

Повністю інвертуємо порядок В разом із знаком

+00.0010=11.1100

Р<0: зсув мантиси А вправо на 1100

Азс=11.00011100

Азс обр=11.11100011

Вобрпр

С=11.11100011+00.100100=11.10010111+1

С=11.10011000

Переведення у пр. код:

С=00.00100110

Відповідь: 00.00100110.11.0000= 3810

 

Алгоритм додавання(віднімання)

При подачі сигналу готовності К= 1, в регістр А і регістр В, по черзі заносяться числа з ОП, після чого їх порядки переводяться в обернений код (якщо число додатне, то його зворотний код дорівнює прямому), при чому порядок регістру В повністю інвертується.разом.із знаком. Після завершення подання чисел, перевіряються порядки, якщо, різниця порядків більше ніж 0, то зрушуємо вправо мантису В, якщо ж різниця порядків менше ніж 0, то зрушуємо вправо мантису А, якщо різниця порядків дорівнює 0, переходимо до наступного етапу. Він складається в додаванні мантис, якщо мантиса числа А (або В) від’ємна, виконується її переведення в обернений код. Після завершення додавання, перевіряється знак результату, якщо знак додатній, то число записується в суматор. якщо ж знак від’ємний, то число переводиться в прямий код, після чого записується в регістр. Далі виконується нормалізація результату, вона полягає у зсуві мантиси доки старшим розрядом не стане одиниця, після кожного зсуву мантиси вліво виконується зменшення порядку на одиницю. Після нормалізації результат заноситься в ОП.

 

Представлення алгоритму у вигляді блок-схеми

Для зображення алгоритму використовуються спеціальні графічні позначення функціональних, умовних та інших блоків, описуючих послідовні по шагові дії [6].

У прямокутних комірках записується дія, що виконується, у ромбі - умова, що має два розгалуження (відповідно, «так» або «ні»). Усі комірки з’єднані стрілками, що означає послідовність виконання дії.

Умовні позначення:

К - пусковий сигнал

Pr - регістр

МА, МВ, МС - мантиси А, В, С

РА, РВ - порядок А, В

СМ - суматор

Sg - знак

Блок-схема представлена на рисунках 2.2 (а) та 2.2 (б)

 


 

Рисунок 2.2 (а) - Блок-схема алгоритму (частина 1)


Рисунок 2.2(б) - Блок-схема алгоритму (частина 2)


Закодована блок-схема

Закодована блок-схема представлена на рисунках 2.3 (а) та 2.3 (б).

 

Рисунок 2.3(а) - Закодована блок-схема(частина 1)


 

Рисунок 2.3(б) - Закодована блок-схема(частина 2)


Граф автомату

На основі закодованої блок-схеми будується граф станів та переходів схеми управління ЦА. Кожен стан заноситься до власної комірки. Визначається сукупність переходів, наприклад автомат переходіть із стану Z1 в стан Z2. Щоб зобразити це на графі, треба поставити стрілку від стану Z1 до стану Z2, та над нею написати дію, що виконалась, а також умову (якщо вона присутня) при якій відбувається перехід. Граф до закодованого алгоритму представлений на рисунку 2.4

 

Рисунок 2.4 - Граф станів та переходів схеми управління ЦА

Таблиця переходів

На основі побудованого графу створюється таблиця переходів схеми управління ЦА. Вона складається з восьми стовпців, кожному з яких відповідає запис:

) Zi - перелік усіх можливих станів автомата;

) K(Zi) - закодовані стани Zi;

) Zj - стан, у який переходить автомат відповідно до Zi-ого стану;

) K(Zj) - входи стану, у який переходить ЦА;

) {Xi} - умова, при якій відбувається перехід;

) {Yi} - дія, що виконується;

) Di - входи D тригера

 

Таблиця 1.1 - Таблиця переходів ЦА

Zi K(Zi) Zj K(Zj) {Xi} {Yi} Di
Z0 0000 Z0 Z1 0000 0001 X1 X1 - Y1 - D4
Z1 0001 Z2 0010 1 Y2 D3
Z2 0010 Z3 Z3 0011 0011 X2 X2 Y3 Y4 D4, D3 D4, D3
Z3 0011 Z4 Z4 0100 0100 X3 X3 Y5 Y6 D2 D2
Z4 0100 Z5 Z5 Z7 Z7 0101 0101 0111 0111 X4 X5 X4 X5 X4 X7 X4 X7 Y7 Y8 Y10 Y11 D2, D4 D2, D4 D2, D3, D4 D2, D3, D4
Z5 0101 Z6 0110 1 Y9 D2, D3
Z6 0110 Z7 Z7 Z4 0111 0111 0100 X6 X7 X6 X7 X6 Y10 Y11 - D2, D3, D4 D2, D3, D4 D2
Z7 0111 Z8 Z8 1000 1000 X8 X8 Y12 Y13 D1 D1
Z8 1000 Z9 Z10 1001 1010 X9 X9 X10 Y14 Y15 D1, D4 D1, D3
Z9 1001 Z10 Z0 1010 0000 X10 X10 Y15 Y17 D1, D3 -
Z10 1010 Z11 1011 1 Y16 D1, D3, D4
Z11 1011 Z9 Z0 1001 0000 X11X10 X11 Y15 Y17 D1, D4 -

 

Закодовані стани автомату:

 

     

Z0=Q1 Q2 Q3 Q4

   

Z1=Q1 Q2 Q3 Q4

   

Z2=Q1 Q2 Q3 Q4

 

Z3=Q1 Q2 Q3 Q4

    

Z4=Q1 Q2 Q3 Q4

 

Z5=Q1 Q2 Q3 Q4

 

Z6=Q1 Q2 Q3 Q4

Z7=Q1 Q2 Q3 Q4

   

Z8=Q1 Q2 Q3 Q4

 

Z9=Q1 Q2 Q3 Q4

 

Z10=Q1 Q2 Q3 Q4

Z11=Q1 Q2 Q3 Q4

 

Рівняння вихідних функцій:

 

Y1=Z0X1

Y2=Z1

Y3=Z2X2

Y4=Z2X2

Y5=Z3X3

Y6=Z3X3

  

Y7=Z4X4X5

Y8= Z4X4X5

Y9=Z5

  

Y10= Z4X4X7+ Z6X6X7

Y11= Z4X4X7+ Z6X6X7

Y12=Z7X8

Y13=Z7X8

Y14=Z8X9

  

Y15= Z8X9X10+ Z9X10+ Z11X10X11

Y16=Z10

Y17=Z9X10+ Z11X11

Обраний тригер

D - тригером називається синхронний запам’ятовуючий елемент с двома стійкими станами і одним інформаційним D-входом [2]. Закон функціонування D - тригера описується наступним рівнянням:

 

Qt+1= CtDt

 

Після перемикання стану D - тригера він повторює значення сигналу на D - вході в тактові моменти часу. Тому D - тригер часто називають тригером задержки [3].

Схему D - тригера можна побудувати на основі RS-тригера, або на основі самостійного логічного рівняння:

 

Qt+1=C*S*C*R*Q=C*D*C*D*Q

 

Схеми D - тригера на основі RS-тригера наведена на рисунку 2.5

 

Рисунок 2.5- Схеми D-тригера на основі RS-тригера

 

Схеми D - тригера на елементах НЕ-І наведена на рисунку 2.6

 

Рисунок 2.6- Схеми D-тригера на елементах НЕ-І

 

Часова діаграма роботи D - тригера наведена на рисунку 2.7

 

Рисунок 2.7- Часова діаграма роботи D- тригера


 

Таблиця переходів D - тригера наведена на рисунку 2.8

 

С D Qt+1 Примітка
0 * Qt Зберігання
1 0 0 Встанов. 0
1 1 1 Встанов. 1

Рисунок 2.8- Таблиця переходів D-тригера

 

Головною перевагою і відмінністю D - тригера від RS-тригера є те, що D - тригер «слідкує» за зміною сигналу на D - вході в час дії синхросигналу С і зберігає ту інформацію, яка малась в момент його закінчення, тому D - тригери більш захищені від помех.

Я вибрав для свого курсового проекту саме D - тригер, тому що для мого завдання він суттєво зменшує кількість і складність формул. Я розглядав і інші варіанти, наприклад у RS - тригері, є заборонений сигнал CSR=1, що ускладнило б мою таблицю переходів; через те, що у моїй схемі не потрібний рахуючий сигнал, я виключив із списку можливих тригерів, T - тригери та JK-тригери. Тому D - тригер став оптимальним варіантом для мого керуючого блоку.

 

Рівняння ЦА

Згідно з таблиці виконуємо мінімізацію функцій за допомогою аналітичного методу. Визначаємо який з тригерів відповідає за той, чи інший стан ЦА.

 

D1= Z0X1+ Z7X8+ Z7X8+ Z8X9+ Z8X9X10+ Z9X10+ Z11X10X11= Z0X1+ Z7+ Z8X9+ Z8X10+ Z9X10+ Z11X10X11

D2= Z3X3+ Z3X3+ Z4X4X5+ Z4X4X5+ Z4X4X7+ Z4X4X7+ Z6X6X7+ Z6X6X7+Z5= Z3+ Z4X4+ Z4X4X7+ Z4X4X7+

Z6X6+ Z5= Z3+ Z4X4+ Z4X4+ Z6X6+ Z5= Z3+ Z4+ Z5+ Z6X6

D3=Z1+ Z2X2+ Z2X2+ Z4X4X7+ Z4X4X7+ Z6X6X7+ Z6X6X7+ Z8X9X10+ Z9X10+ Z11X10X11+Z10= Z1+ Z2+ Z4X4+

Z6X6 + Z8X9X10+ Z9X10+ Z11X10X11+Z10

D4= Z2X2+ Z2X2+ Z4X4X5+ Z4X4X5+ Z4X4X7+ Z4X4X7+ Z6X6X7+ Z6X6X7+ Z8X9+ Z10+ Z11X10X11= Z2+ Z4X4+

Z4X4 + Z6X6 + Z8X9+ Z10+ Z11X10X11= Z2+ Z4 + Z6X6 + Z8X9+ Z10+ Z11X10X11

 


 

Висновок

двійковий алгоритм кодування числення

В цій курсовій роботі було досліджено, проаналізовано і синтезовано схему керуючого блоку для ЦА додавання (віднімання) чисел з рухливою комою, на двійковому суматорі оберненого коду (ДСОК) з розрядністю 30. Було побудовано блок-схему алгоритму, та закодовану блок-схему заданого ЦА, на основі цього був створений граф, далі складена таблиця переходу станів автомату, з даних якої була отримана змога розрахувати і мінімізувати вихідні сигнали Y, та сигнали керування тригерів. Схема була побудована на основі D-тригерів та логічних елементів І-АБО-НІ. Схему було побудовано у програмі Microsoft Office Visio 2007.

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


Література

 

1. Щербаков А.М. Прикладна теорія цифрових автоматів, частина 1./ А.М. Щербаков. - Запоріжжя: ЗНТУ, 2008 - 102 с.

. Щербаков А.М. Прикладна теорія цифрових автоматів, частина 2./ А.М. Щербаков. - Запоріжжя: ЗНТУ, 2010 - 122 с.

. Бабіч Н.П. Комп’ютерна схемотехніка. /Н.П. Бабіч, І.А Жуков. - К: «МК Пресс», 2004 - 576 с.

. Савельєв А.Я. Арифметичні та логічні основи цифрових автоматів. / А.Я. Савельєв - М: «Вища школа», 1980 - 255 с.

5. Савельєв А.Я. Прикладна теорія цифрових автоматів. / А.Я. Савельєв - М: «Вища школа», 2009 - 272 с.

. Усатенко С.Т. Графічне зображення електро-радіосхем. - Київ: Техніка, 1986



Поделиться:


Последнее изменение этой страницы: 2020-03-02; просмотров: 147; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.138.174.174 (0.053 с.)