Алгоритм операції множення - Программирование, компьютеры и кибернетика курсовая работа

Алгоритм операції множення - Программирование, компьютеры и кибернетика курсовая работа



































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


посмотреть текст работы


скачать работу можно здесь


полная информация о работе


весь список подобных работ


Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Розробити машинний алгоритм операції множення в доповняльному коді з пропуском тактів додавання в двійковій системі числення з старших розрядів чисел, представлених у формі з плаваючою комою (розрядність мантиси - 16, порядків -8) та операційний автомат. На прикладі чисел 41,32 і -14,52 показати роботу алгоритму.
Синтезувати керуючий автомат з програмованою логікою (вертикальне кодування, одно-адресне поле).
Виконати контроль операції віднімання по модулю 11 (кодовий).
Слово комп'ютер відомо кожній свідомій людині. В наш час обчислювальна техніка відіграє дуже велику роль у суспільному житті людства та розвитку сучасного виробництва. Пересічного користувача зазвичай не цікавить, яким саме чином виконується обчислювальний процес всередині комп'ютера. Однак знання про те, як ЕОМ виконує арифметичні операції, оперує даними тощо, вкрай важливе для розробників обчислювальної техніки - електронних конструкторів. Дана курсова може дати першочергові знання про обчислювальні процеси всередині ЕОМ.
Складність і відповідальність задач, що вирішуються сучасними ЕОМ та системами, потребують від них високої надійності та продуктивності. Тому, однією з основних проблем, які стоять перед розробниками сучасної обчислювальної техніки, є підвищення продуктивності, надійності та ефективності роботи вузлів машини.
В наш час основним напрямком вирішення цих проблем є побудова обчислювальних машин, які побудовані з великої кількості однорідних модулів, що створюють єдину систему шляхом встановлення логічних зв`язків між ними. В цьому суть концепції мультипроцесорних ЕОМ, окремими випадками яких є матричні, конвеєрні, з програмованою архітектурою і т.д. При цьому висовуються вимоги простоти контрольного обладнання і високої достовірності обробки інформації. Відносно апаратних затрат відмітимо, що тут суттєвіше є не надлишковість кодів, а додаткові витрати обладнання на реалізацію контрольних функцій.
В роботі розглянуто принципи побудови головних вузлів ЕОМ - операційного та керуючого пристроїв. На прикладі виконання операції множення приведено алгоритм роботи, розроблено структурну схему операційного пристрою та функціональну схему керуючого автомата.
1. Розробка машинного алгоритму операції та операційного автомату
Стосовно двійкової системи числення найбільше відомі такі основні способи виконання операції множення:
I) множення починаючи з молодших розрядів множника:
2) множення починаючи зі старших розрядів множника:
В обох випадках операція множення складається з ряду послідовних операцій додавання часткових добутків. Операціями додавання керують розряди множника: якщо в якомусь розряді множника знаходиться одиниця, то до суми часткових добутку додається множене з відповідним зсувом; якщо в розряді множника - нуль, то множене не додається.
Таким чином, крім операції додавання чисел для одержання добутку необхідна операція зсуву чисел. При цьому з'являється можливість зсувати множене або суму часткових добутків, що дає основу для різних методів реалізації операції множення.
Метод 1. Нехай А - множене (А>0), В- множник (В>0), С - добуток. Тоді у випадку представлення чисел у формі з фіксованої комою отримуємо:
Множення на означає зсув на п розрядів вправо числа, яке знаходиться в дужках, тобто в даному випадку зсувається вправо множене і множення починається зі старших розрядів.
Метод 2. Нехай - множене і , - множник.
Множник можна легко перетворити, використовуючи метод Горнера:
Тут множення починається з молодших розрядів і зсовується вправо сума часткових добутків.
Метод 3. Нехай - множене і - множник.
Множник, використовуючи метод Горнера, можна записати так:
Це означає, що множення починається з молодших розрядів, і множене зсовується вліво на один розряд у кожному такті.
Метод 4 Нехай - множене і - множник
Якщо множник В записати за методом Горнера
то множення починається зі старшого розряду й у кожному такті зсовується вліво сума часткових добутків.
Таким чином, для реалізації операції множення необхідно мати суматор, регістри для зберігання множеного і множника і схему аналізу розрядів множника. Суматор і регістри повинні мати кола зсуву вмісту в ту чи іншу сторону відповідно до ухваленого методу множення.
Найбільш простий спосіб зміни величин часу додавання на суматорі та ймовірності з'явлення одиниці в розрядах множника - пропуск тактів додавання в випадках, коли наступна цифра множника дорівнює нулю. Цей спосіб може бути використаним для систем числення, які містять нуль як одну з цифр.
Для множення чисел у прямому коді з молодших розрядів з пропуском тактів додавання знак результату і числове значення отримуються окремо. Для визначення знаку результату знакові розряди множників складаються по модулю 2 і результат записується в знаковий розряд регістра результату.
Множення виконується з молодших розрядів, тому будем аналізувати молодший розряд множника РгВ[15] - якщо він дорівнює 1, то додаємо до вмісту суматора регістр множеного РгА; якщо РгВ[0] дорівнює 0, то пропускаємо такт додавання (звідки і назва методу). В обох випадках виконуємо:
зсув регістра РгВ на 1 розряд вправо, щоб проаналізувати наступний розряд множника;
зсув суматора СМ на 1 розряд вправо.
В результаті множення ми отримаємо добуток подвійної точності - розрядністю в 2 рази більшою, ніж розрядність регістрів операндів.
Алгоритм множення чисел у доповняльному коді з молодших розрядів з пропуском тактів додавання
Отримуємо з шини даних значення мантиси і порядку чиса А: РгАм:=Швх, РгАп:=Швх.
Отримуємо з шини даних значення мантиси і порядку чиса В: РгВм:=Швх, РгВп:=Швх.
Присвоюємо суматору СМ значення 0 і в лічильник заносимо число кількості тактів множення Ліч:=16.
Якщо множник РгА від'ємний, то додаємо поправку СМ:=СМ+(не) РгА.
Аналізуємо старший розряд числа В (РгВ[1]), якщо він дорівнює 0, то переходимо до пункту 8, інакше до суматора СМ додаємо число А.
Виконуємо зсув на один розряд вліво суматора СМ і регістру РгВ, вміст лічильника зменшуємо на 1 і переходимо в пункт. 9 нашого алгоритму.
Аналізуємо розряд РгВ[2] - якщо він дорівнює 1, то переходимо до пункту 7, інакше виконуємо зсув на два розряди вправо суматора СМ і регістру РгВ. Вміст лічильника зменшуємо на 2.
Аналізуємо вміст лічильника, якщо він більше 0, то переходимо в пункт 6.
Якщо знакові розряди СМм не рівні між собою, то виконуємо нормалізацію СМм:=L (1, СМм), СМп:=СМп+[-1] доп
Видаємо результат СМм і СМп на шину даних.
1.2 Розробка операційного автомату
Для реалізації множення чисел у формі з плаваючою комою, починаючи зі старших розрядів у множнику зі зсувом суми часткових добутків, потрібні такі функціональні вузли:
Вхідні дані - множене і множник, які надходять в пристрій через шину вхідних даних ШДвх; результат - добуток видається з пристрою через шину вихідних даних ШДвих.
Для зберігання мантис операндів потрібні регістри РгАм, РгВм.
Для зберігання порядків операндів потрібні регістри РгАп, РгВп.
Для накопичення часткових добутків необхідно використати накопичувальний суматор СМ доповняльного коду.
Для формування поправки (не) РгА використовується схема формування оберненого коду СхФОК.
Для підрахування кількості кроків множення використовується лічильник (ЛІЧ).
Структурна схема операційного автомата наведена в додатку Б.
Для операційного автомату визначимо:
Запишемо машинне зображення операндів в доповняльному коді:
Також при введенні поправки будемо використовувати код
Виконаємо множення (вміст регістрів і виконані операції приведені в таблиці 1):
Оскільки В-число від'ємне, то до отриманого результату слід додати поправку: СМ:=СМ+(не) РгА,
00,00001111010010100101110010001001
11,01011010101110001111111111111111
11,01101010000000110101110010001000
Отримано результат в доповняльному коді. Переведемо його в прямий код і в десяткову систему числення:
С пр =-0,011010100000001101011100100010002 10
С= -1001010111,111001010001101111111
Перевірка результату на калькуляторі показує вірний результат:
Керуючий автомат (КА) генерує послідовність керуючих сигналів, яка передбачена мікропрограмою і відповідає значенням логічних умов. Інакше кажучи, керуючий автомат задає порядок виконання дій в операційному автоматі, який виходить з алгоритму виконання операцій. Найменування операції, яку необхідно виконувати у пристрої, визначається кодом операції. По відношенню до керуючого автомату сигнали коду операції, за допомогою яких кодується найменування операції, і повідомлювальні сигнали х1,…, хl, які формуються в операційному автоматі, грають однакову роль: вони впливають на порядок генерування керуючих сигналів y. Тому сигнали коду операції і умовні сигнали відносяться до одного класу - до класу повідомлювальних сигналів, які поступають на вхід керуючого автомату.
Функція керуючого автомату - це операторна схема алгоритму (мікропрограми), функціональними операторами якої є символи у1,…, уm, які ототожнюються з мікроопераціями, в якості логічних умов (предікатів) використовуються булеві змінні х1,…, хl. Кожна з цих формул визначає обчислювальний процес в послідовному аспекті - встановлює порядок перевірки логічних умов х1,…, хl і порядок виконання мікрооперацій у1,…, уm.
В залежності від способу визначення вихідного сигналу в керуючих автоматах розрізняють три типи абстрактних автоматів: автомат Мілі, автомат Мура, С-автомат. В абстрактному автоматі Мілі функція виходів задає відображення (XxS) Y. В абстрактному автоматі Мура функція виходів задає відображення SY. В абстрактному С-автоматі вводяться дві функції виходів 1 і 2, що задають відображення (XxS) Y1 і SY2 відповідно. При цьому алфавіт виходів С-автомата, Y=Y1=Y2 або Y=Y1Y2.
В автоматах з програмованою логікою мікрокоманди виділяються своїми адресами, що визначають номери комірки ПЗП, в яких розміщаються мікрокоманди, які адресуються. Спосіб адресації мікрокоманд задає правило визначення адреси слідуючої мікрокоманди. Використовуються два основних способи адресації: примусова та безпосередня адресації.
При безпосередній адресації адреса наступної мікрокоманди приймається рівною збільшенню на одиницю попередньої мікрокоманди. При безпосередній адресації зникає необхідність в введені адресного поля в кожну мікрокоманду. Якщо мікрокоманди слідують в прямому порядку, то процес адресації реалізується лічильником адреси мікрокоманди, стан якого збільшується на одиницю після читання наступної мікрокоманди. Тобто, мікрокоманди, які задають функціональні перетворення, які складаються з набору мікророперацій, можуть містити тільки операційну частину, що представляються полями Y1, Y2,…, Yн.
Після виконання мікрокоманди з адресою А може виникнути необхідність в переході до мікрокоманди з адреси В = А + 1. Перехід може бути безумовним або залежати від поточного значення х. Умовні переходи реалізуються слідуючим чином: якщо х = 0, то виконується наступна мікрооперація з адресою (А + 1); якщо х = 1, то наступною виконується мікрокоманда з адресою В. Для реалізації умовних переходів в мікрокоманду вводиться адресна часна частина, яка складається з полів Х та В.
Скоротити довжину мікрокоманд дозволяє застосування вертикального мікропрограмування при якому кожна мікрооперація кодується] log 2 n [- розрядним кодом де n - загальна кількість мікрооперацій. Таке кодування накладає обмеження на методи виконання операцій а саме не повинно бути операцій що потребують одночасного виконання ряда мікрооперацій. В тих випадках коли це обмеження виконати неможливо треба використовувати складні мікрооперації що складаються з сукупності простих.
В цьому випадку мікрооперація матиме вигляд:
Де Y-поле мікрооперацій, Х-поле умови переходу А-адресна частина.
Позначивши мікрооперацію - у логічну умову - х адресу - А проведемо розмітку алгоритму. Символом «* «позначимо фіктивні логічні умови що забезпечують відповідні безумовні переходи. Тому об'єднаємо мікрооперації які можна виконувати одночасно.
Для кодування мікрооперацій використаємо вертикальне кодування:
Розмітку алгоритма показано на рисунку в додатку В. Автомат працює за мікропрограмою яка записана в постійному запам'ятовуючому пристрої і наведена в таблиці 4.
3 . Ро зробка методики контролю операції множення
Різноманітні задачі можна вирішувати за допомогою метода контролю, який оснований на властивостях порівнянь. Розвинуті на цій основі методи контролю арифметичних і логічних операцій називають контролем по модулю.
Контрольний код r заданого числа утворюється додаванням цифр числа по обраному модулю р:
Контроль по модулю 11 вимагає, щоб кодована інформація представлялась символами 16-ткової системи і згортки створювались додаванням тетрад по модулю 11. Для цього над кодом числа виконується згортка, тобто процес розбиття коду на частини по 4 розряди і кожна з цих частин додається по модулю 11.
При використанні операції віднімання контрольний код результату С=А-В визначається так:
де S - кількість зайомів з попередньої групи, q - основа системи числення, в якій виконуються згортки (в нашому випадку q=16).
Ми виконаємо операцію віднімання на суматорі доповняльного коду, тому замінимо операцію віднімання операцією додаванням в цьому випадку:
де L - кількість переносів в наступну групу,
Виконаємо кодовий контроль виконання операції віднімання по модулю 11 для чисел, які були використані в прикладі виконання операції множення
r A = 001010010101000111 = 4 (mod 11)
Виконаємо віднімання А і В (додамо А і В доп ):
r А-В = 1011110011110110 = 0 (mod 11)
Так як , то віднімання виконано вірно.
Припустимо, що А-В = 1011110011110111.
Тоді r А-В = 1011110011110111 = 1 (mod 3);
; Отримали , що свідчить про невірно виконану операцію віднімання.
Каган Б.М. «Электронные вычислительные машины и системы». Москва Энергоатомиздат 1991, 592 с.
Лужецький В.А. «Конспект лекцій по прикладній теорії цифрових автоматів».
Лужецький В.А., Білан С.М., Квітка М.А. «Прикладна теорія цифрових автоматів». Методичні вказівки. - Вінниця, ВДТУ, 1997 - 56 с. Укр. мовою.
Лысиков Б.Г. «Арифметические и логические основы цифровых автоматов». - Мн.:Высшая школа, 1980 г.
Савельев А.Я. «Прикладная теория цифровых автоматов». Москва Высшая школа, 269 с.
Самофалов К.Г., Корнейчук В.И., Тарасенко В.П. «Цифровые ЭВМ». - Киев: Высшая школа, 1989 г.
алгоритм множення автомат плаваючий
Розробка алгоритму множення чисел у прямому коді з молодших розрядів із пропусканням тактів сумування для двійкових чисел. Синтез операційного та керуючого автоматів з жорсткою логікою. Описання технології числового контролю операції додавання по модулю. курсовая работа [74,9 K], добавлен 14.03.2013
Синтез цифрового автомата для виконання операції множення в оберненому коді двох двійкових чисел з фіксованою комою. Будування керуючого автомату з жорсткою логікою по принципу Мілі. Використання алгоритму множення з пропусканням тактів додавання. курсовая работа [279,6 K], добавлен 14.03.2013
Розробка операційного автомату, що здійснює операцію прискореного множення в доповняльному коді, зі старших розрядів. Побудування алгоритму даної операції та його схематичного відображення. Поняття та синтез керуючого автомату, побудова його графу. курсовая работа [55,2 K], добавлен 01.06.2010
Розробка машинного алгоритму та операційного автомату для виконання операції ділення в двійково-десятковій системі числення з відновленням остачі у оберненому коді. Перевірка роботи керуючого автомату з програмованою логікою та натуральною адресацією. курсовая работа [178,7 K], добавлен 10.05.2011
Проектування процесора для виконання (з використанням доповняльного коду без відновлення розрядів остачі) операції ділення в двійково-десятковій системі числення. Розробка алгоритму виконання операції та операційного автомату. Розробка карти прошивки. курсовая работа [263,3 K], добавлен 14.03.2013
Додавання (віднімання) чисел на ДСОК: двійкова система числення, представлення з рухомою комою, суматор оберненого коду. Побудова схеми керування заданого автомату, алгоритм додавання(віднімання) та його представлення у вигляді блок-схеми, кодування. курсовая работа [616,7 K], добавлен 03.01.2014
Розробка алгоритму роботи програми, її загальна характеристика та функціональні особливості, умови ефективного використання. Способи виклику та адреса завантаження, відомості про використання оперативної пам'яті. Посібник системного програміста. курсовая работа [182,6 K], добавлен 07.06.2016
Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д. PPT, PPTX и PDF-файлы представлены только в архивах. Рекомендуем скачать работу .

© 2000 — 2021



Алгоритм операції множення курсовая работа. Программирование, компьютеры и кибернетика.
Реферат На Тему Новый Этап "Государственного Социализма": Правление Х. Буша
Диссертация Стимулирование Персонала
Курсовая работа по теме Конструирование простых винтовых устройств
Учебное пособие: Методические указания к практическим и лабораторным занятиям по проектированию информационных баз данных часть 1 для студентов экономических специальностей
Курсовая работа: Організація кредитної роботи в комерційному банку
Реферат: Гиперицин (зверобой) в лечении больных с симптомами депрессии и тревоги. Скачать бесплатно и без регистрации
Доклад по теме Бытовые способы очистки воды
Реферат На Тему Жизнь Древнего Египтянина
Особенности сердца спортсменов
Реферат: Современное оружие для спецопераций. Скачать бесплатно и без регистрации
Реферат На Тему Экзистенциализм
Доклад: Плетнев Михаил Васильевич
Реферат: Судьба крестьянства в произведениях Шолохова
Курсовая работа по теме История развития промышленности Ижевска с середины ХХ века по настоящее время. Современное состояние
Дипломная работа по теме Совершенствование работы с кадровым резервом
Реферат Классификация Рефератов
Реферат: Душевная простота
Курсовая работа по теме Расчет режима работы компрессорного цеха
Питание И Здоровье Человека Реферат
Реферат: Технология оказания услуг транспортной экспедиции
Опіки, відмороження, електротравми - Медицина презентация
Уголовная ответственность за получение взятки - Государство и право курсовая работа
Местное самоуправление - Государство и право реферат


Report Page