Лабораторна робота 4
ВИВЧЕННЯ ПРИНЦИПІВ ОРГАНІЗАЦІЇ арифметико-логічних пристроїв. СТРУКТУРА АЛП для ділення чисел з фіксуючим-
ВАННОЇ Кома
Ц е л ь р о б о т и: Вивчення принципів побудови і функціонування АЛП для ділення чисел з фіксованою комою.
В в е д е н н я
Ділення в ЕОМ звичайно зводиться до виконання послідовності віднімання дільника спочатку з ділимо, а потім з утворюються в процесі ділення часткових залишків і зсуву часткових залишків.
Алгоритм розподілу аналогічний алгоритму розподілу при ручному рахунку. Розглянемо особливості поділу на прикладі ділення цілих чисел.
Нехай Z = X/Y де X-ділене, представлене зазвичай подвійним словом (2n-1 цифрових розрядів), Y-дільник і Z-приватне, представлене словами, що містять n-1 цифрових розрядів.
Так як приватна Z-слово, розташовуване в n-розрядному регістрі, то повинно мати місце неравество
n-1 n-1
| Z | = 2 і поділ неможливо, якщо менше 0, то можна
виконати поділ.
Реалізувати ділення можна двома основними способами:
1.Деленіе з нерухомим діленим і зрушується вправо дільником.
2.Деленіе з нерухомим дільником і зрушується вліво діленим.
Другий спосіб широко використовується в арифметико-логічних пристроях.
У цьому випадку можливо два алгоритми:
- Алгоритм ділення з нерухомим дільником і відновленням залишку,
- Алгоритм ділення з нерухомим дільником без відновлення залишку. Останній алгоритм використовується найбільш часто і складається
з таких етапів:
1.Берутся модулі від ділені й дільника.
2.Ісходное значення часткового залишку покладається рівним старшим розрядами ділене.
3.Частічний залишок подвоюється шляхом зсуву на один розряд вліво, при цьому в звільняється при зсуві молодший розряд часткового залишку заноситься наступна цифра ділене.
4.Із зрушено часткового залишку віднімається дільник, якщо залишок позитивний, або до зсунутому часткового залишку додається дільник, якщо залишок від'ємний.
5.Очередная цифра модуля приватного дорівнює 1, якщо результат віднімання позитивний, і 0, якщо від'ємний.
6.Пункти 3-5 послідовно виконуються для одержання всіх цифр модуля приватного.
7.Знак приватного-"плюс", якщо знаки ділене і дільника однакові, і "мінус" в іншому випадку. Ділення без відновлення залишку завжди потребує для одержання однієї цифри приватного тільки складання або віднімання та зсуву часткового залишку. Після завершення всіх циклів ділення видається результат, при цьому якщо залишок від'ємний, то він відновлюється шляхом подсуммірованія Y.
Структура АЛП для виконання ділення наведена на рис.3.
До складу АЛУ входять: вхідний регістр PrY (зберігає дільник-нерухомий); багатофункціональний регістр PrX, який є вхідним регістром суматора, вхідним регістром АЛП, зберігає початкове ділене, а потім часткові залишки, а також використовується при їх зрушенні; суматор PrCM, що використовується для зсуву часткових залишків вправо; лічильник циклів СчЦ.
У початковий момент із шини даних ділене і дільник надходять у відповідні їм регістри PrX і PrY. Потім з ділемо в PrX віднімається дільник PrY (при цьому початкове значення часткового залишку одно діленим); результат пересилається в PrCm, а з PrCm-в PrX. Таким чином залишок отримує нове значення, а лічильник циклів скидається в 0. На цьому закінчується установка вихідного стану.
За знаком залишку в PrX визначається чергова цифра приватного PrZ, якщо PrX> = 0, то PrZ [СчЦ]: = 1, інакше - PrZ [СчЦ]: = 0. У PrCm надходить зсунуті на розряд вліво PrX (залишок подвоюється), потім вміст PrCm пересилається в PrX.
Виконується віднімання (додаток) дільника. З суматора різницю (сума) надходить у PrCm і пересилається в PrX. На цьому кроці закінчується обчислення нового залишку.
Вміст лічильника циклів збільшується на одиницю. Якщо СчЦ = n-1, то обчислення закінчуються, в іншому випадку - повторюються.
В и п о л н е н н я
л о б о р а т о р н о ї р о б о т и
Структура АЛП для ділення чисел з фіксованою комою і алгоритм його функціонування моделюється за допомогою програми, реалізованої на мові Турбо-Паскаль-7.
Робота з програмою здійснюється в інтерактивному режимі. Після запуску програми division.exe на екрані дисплея з'являється інструкція для користувача, згідно з якою і виконується лабораторна робота. Текст опису лабораторної роботи зберігається у файлі ....< br />
Виконання досліджуваної операції АЛП здійснюється по кроках і результат кожного кроку відображається на екрані у вигляді кодів вмісту відповідної регістрів, проміжних і кінцевих результатів. У процесі виконання лабораторної роботи необхідно зафіксувати по кроках стан всіх елементів АЛП, індіціруемие відповідними кодами.
Роботу АЛУ необхідно вивчити для різних значень операндів і різних сполучень їх знаків.
За результатами роботи необхідно побудувати блок-схему прошивки роботи АЛП.
З о д е р ж а н н я о т ч е т а
1.Опісаніе роботи АЛП.
2.Блок-схема мікропрграмми виконання операцій для ділення чисел з фіксованою комою.
К о н т р о л ь н и е в о п р о с и
1.Укажіте недоліки алгоритму ділення з нерухомим діленим і зрушується вправо дільником.
2.Укажіте недоліки алгоритму ділення з відновленням залишку.
3.Як операції впливають на швидкість виконання поділу?
4.Як виполниется ділення з плаваючою комою?
5.Які поділ вимагає більшого часу - чисел з фіксованою комою або чисел з плаваючою комою?
Л і т е р а т у р а
1.Каган Б.М. Електронні обчислювальні машини і системи .-
М.: Энергоатомиздат, 1985-552 с.
2.Нешумова К.А. Електронні обчислювальні машини і сістеми.-М.: Вища школа, 1989-336 с.
3.Соловьев Г.М. Арифметичні пристрої ЕОМ - М.: Енергія, 1978-176 с.
4.Чернов В.Г. Математичні та логічні основи обчислювальних машин. Методичні вказівки до самостійної роботи студентов.-ВПІ, 1992-47 с.
5.Калабеков Б.А. Мікропрцессори та їх застосування в системах передачі та обробки сигналів - м.: Радио и связь, 1988.