DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

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

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Алгоритми виконання арифметичних операцій над багаторозрядними числами в однокристальному МП 8080 (КР580ВМ80А)

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
Комп’ютерні науки
Кафедра:
Системи автоматизованого проектування

Інформація про роботу

Рік:
2003
Тип роботи:
Методичні вказівки до лабораторної роботи
Предмет:
Комп'ютери та мікропроцесорні системи
Група:
КН
Коротко про документ

Про що ця робота

Методичні вказівки присвячено вивченню алгоритмів виконання арифметичних операцій над багаторозрядними числами в мікропроцесорі КР580ВМ80А. Розглянуто особливості побайтної обробки даних, формати з фіксованою та плаваючою комою.

У роботі розглядаються

  • Багаторозрядна арифметика
  • Мікропроцесор КР580ВМ80А
  • Операції з фіксованою комою
  • Операції з плаваючою комою
  • Програмна реалізація множення і ділення
  • Арифметичні команди АЛУ

Зміст і розділи

  1. Мета роботи
  2. Короткі теоретичні відомості
  3. Арифметичні операції над дійсними числами
  4. Контрольні запитання
  5. Лабораторне завдання
  6. Зміст звіту
  7. Література
Для кого:Студенти спеціальності Комп'ютерні науки
Викладачі:Панчак Роман Теодорович

Ключові поняття

КР580ВМ80Абагаторозрядні числаарифметико-логічний пристрійпрапорець переносуфіксована комаплаваюча комамантисапорядок

Частина тексту файла (без зображень, графіків і формул):

4. КОНТРОЛЬНІ ЗАПИТАННЯ 4.1. Як виконуються багаторозрядні операції додавання і віднімання в МП КР580МВ80А ? 4.2. Як виконуються багаторозрядні операції ділення і множення в МП КР580МВ80А ? 4.3. Яка особливість формату представлення дійсних чисел? 4.4. Який алгоритм операції множення чисел в форматі з плаваючою комою? 4.5. У чому полягає відмінність представлення знакових чисел в форматах з фіксованою та плаваючою комою? 4. ЛАБОРАТОРНЕ ЗАВДАННЯ 4.1. Набрати, скомпілювати та запустити програму задану викладачем . 4.2. Пояснити дії, які виконує програма. 4.3. Перевірити достовірність одержаного результату. 5. ЗМІСТ ЗВІТУ 5.1. Титульний лист. 5.2. Мета роботи, теоретичні відомості. 5.3. Лабораторне завдання. 5.4. Програма у мнемокоді Асемблера і об'єктному коді. 5.5. Висновок та аналіз помилок допущених при роботі. 6. ЛІТЕРАТУРА 6.1. Микропроцессоры и микропроцессорные системы:Учебн. пособие для вузов/Под ред. В.Б. Смолова.-М.: Радио и связь,1981. 6.2. Калабеков Б.А., Микропроцессоры и их применение в системах передачи и обработки сигналов: Учебн. пособ. для вузов.-М.: Радио и связь,1988. 6.3. Лихтницендер Б.Я., Кузнецов В.Н., Микропроцессоры и вычислительные устройства в радиотехнике: Учебн. пособие.-К.: Вища школа,1988. 6.4 Зубков С.В., Assembler для DOS, Windows и UNIX.- М.: ДМК Пресс,2000. МІНІСТЕРСТВО ОСВІТИ ТА НАУКИ УКРАЇНИ Національній університет "Львівська політехніка"  АЛГОРИТМИ ВИКОНАННЯ АРИФМЕТИЧНИХ ОПЕРАЦІЙ НАД БАГАТОРОЗРЯДНИМИ ЧИСЛАМИ В ОДНОКРИСТАЛЬНОМУ МП 8080 (КР580ВМ80А) МЕТОДИЧНІ ВКАЗІВКИ до лабораторної роботи №7 з курсу "Комп'ютери та мікропроцесорні системи" для студентів базового напряму 6.08.04 "Комп'ютерні науки" ЗАТВЕРДЖЕНО на засіданні кафедри САП Протокол № від 2003р.. ЛЬВІВ 2003 АЛГОРИТМИ ВИКОНАННЯ АРИФМЕТИЧНИХ ОПЕРАЦІЙ НАД БАГАТОРОЗРЯДНИМИ ЧИСЛАМИ В ОДНОКРИСТАЛЬНОМУ МП 8080 (КР580ВМ80А). Методичні вказівки до лабораторної роботи №7 з курсу "Комп'ютери та мікропроцесорні системи" для студентів базового напряму 6.08.04 "Комп'ютерні науки" /Укл. Панчак Р.Т., Процько І.О., Теслюк В.М. - Львів: НУ"ЛП", 2003р.-6с. Укладачі: [ім’я автора приховано], ст. викл., [ім’я автора приховано], к.т.н., ст. викл., [ім’я автора приховано], к.т.н., доц., Відповідальний за випуск: Ткаченко С.П., к.т.н., доц. Рецензенти: Каркульовський В. І., к.т.н., доц., Стех Ю.В., к.т.н., доц. 1. МЕТА РОБОТИ Вивчити алгоритми виконання арифметичних операцій над багаторозрядними числами в однокристальному мікропроцесорі Intel 8080 (КР580ВМ80А). Набути практичних навиків складання та налагоджування програм виконання операцій додавання/віднімання та множення/ділення багаторозрядних чисел з використанням цих алгоритмів. 2. КОРОТКІ ТЕОРЕТИЧНІ ВІДОМОСТІ Однокристальний мікропроцесор Intel 8080 (КР580ВМ80А) - 8 розрядний, тобто виконує арифметико-логічні операції над байтами даних. Однак в багатьох застосуваннях МПС 8-біт недостатньо для одержання заданої точності. В МП КР580ВМ80А можна визначити тип даних любого формату (ефективно кратний 8-бітам: 24біти, 32біти,...,1024біти). На основі виконання заданого набору команд, виконання операцій з такими форматами можна здійснювати побайтно у 8-розрядному АЛУ. Тому над числами, що представляються двома і більше байтами, основні арифметичні операції реалізуються програмним шляхом. 2.1 Додавання та віднімання багаторозрядних чисел цілого типу При складанні програм додавання і віднімання багаторозрядних чисел важливу особливість становить організація циклічної частини арифметичної операції. Дані операції спочатку починають виконувати над молодшими байтами (при початковому CY=0), а пізніше над всіма решта (з молодшого до найстаршого) з врахуванням переносів. Основними командами, що забезпечує додавання текучих байтів з врахуванням прапорця переносу CY є команди: ADC r (A)(A)+(r)+(CY); ADC M (A)(A)+((H)(L))+(CY); ACI байт (A)(A)+(байт)+(CY); віднімання: SBB r (A)(A)-(r)-(CY); SBB M (A)(A)-((H)(L))-(CY); SBI байт (A)(A)-(байт)-(CY); Наведені команди дадавання/віднімання використовують значення переносу CY, сформованого на попередньому повторенні циклу. Тобто, організований цикл багаторозрядної арифметичної операції не повинен містити команд, що можуть змінити значення CY. Якщо внесення в цикл багаторозрядної операції команд, що впливають на прапорець переносу, необхідне, то попередньо запам'ятовується CY, а перед багаторозрядною операцією - відновлюється. 2.1 Множення та ділення багаторозрядних чисел цілого типу В однокристальному мікропроцесорі Intel 8080 (КР580ВМ80А) у 8 розрядному АЛУ ефективно виконувати операцію множення (4)х(4)=(8) розрядними числами. Відомі способи і алгоритми множення/ділення (алгоритм Бута, ділення з відновленням залишку) виконуються в МПС через команди додавання/віднімання та зсуву багаторозрядних даних. Для богаторозрядних цілих чисел в однокристальному мікропроцесорі КР580ВМ80А можна створити підпрограму множення різноманітних двійкових форматів (8)х(4)=(12), (8)х(8)=(16), (16)х(8)=(24), (16)х(16)=(32) та ін. Множення над двома n1 та n2-бітними співмножниками формує (n1+n2) -розрядний добуток. Підпрограма ділення багаторозрядних чисел більших ніж 8-розрядів може використовувати формати (16):(8), (24):(8), (24):(16), (32):(16) та ін. Ділення над двома n1, n2-бітними співмножниками формує (n1-n2) - розрядну частку. Можна задати і виконувати операції множення/ділення й в інших форматах, наприклад 6:2, але при цьому виконання операцій над такими форматами може ускладнюватись. Важливо відзначити, що у випадку множення/ділення на цілі числа рівні степені двійки (2,4,8,...,2n )можна використовувати команди зсуву n-раз вправо/вліво, попередньо встановивши біт прапорця переносу в нуль: STC ; (CY) (1) CMC ; (CY=0) для множення на 2 RAL ; (CY)(A7), (A0)  (CY=0), (An+1)  (An); для ділення на 2 RAR ; (CY=0)(A7), (A0)  (CY), (An)  (An+1). Однак, перетворення в процесі виконання арифметичних операцій, у випадку великого об'єму вхідних багаторозрядних даних і вихідних результатів, веде до помітних витрат комп'ютерного часу. Тому сучасні скалярні мікропроцесори у вигляді надвеликих інтегральних схем (НВІС) використовують 64-розрядне АЛУ та пакетні форми представлення чисел. 3. АРИФМЕТИЧНІ ОПЕРАЦІЇ НАД ДІЙСНИМИ ЧИСЛАМИ Існує широкий клас задач, в тому числі обчислення рівнянь цифрового фільтра (ЦФ), де необхідно проводити обчислення в МПС використовуючи дійсні числа. В цифрових пристроях використовуються дві форми представлення чисел: формат з фіксованою комою, формат з плаваючою комою. 3.1 Арифметичні операції над числами в форматі з фіксованою комою В форматі з фіксованою комою відводяться ціла частина і дробова частина у вигляді цілих чисел. Один старший розряд використовається в якості знаку. Кома відділяє цілу частину числа від дробової та займає фіксоване положення. Враховуючи 8-розрядне АЛУ МП КР580ВМ80А, найбільш поширені формати чисел з фіксованою комою, де відведено на цілу і дробову частину по тетраді, байту, слову (4:4, 8:8, 16:16 і тд. ). Можна задати і виконувати операції й в інших форматах, наприклад 6:2, але деякі операції над такими форматами можуть ускладнюватись. Неправильний вибір розрядної сітки може в результаті виконання арифметичних операцій привести до переповнення, що в цьому випадку вимагає масштабування. Додавання/віднімання двійкових чисел представлених в форматі з фіксованою комою, по суті не відрізняються від операцій додавання або віднімання цілих багаторозрядних чисел. Наприклад, результати двійкового додавання або віднімання дійсних чисел матимуть вигляд: а) 010000, 1000 16,5 + 010010, 1000 +18,5 100011, 0000 35,0 б) 0110,0100 6,25 в) 1000,1000 8,50 +1000,1000 +8,50 -0110,0100 - 6,25 1110,1100 14.75 , 0010,0100 2,25 . При цьому, враховується розряд перенесення CY з дробової частини в цілу. Арифметичні операції множення і ділення в форматі з фіксованою комою не відрізняються по суті з алгоритмами їх виконання над цілими числами. Характерним є те, що розрядність добутку виділяється для цілої та дробової частин. Наприклад, а) 8.5 1000,1000 х 6,25 х 0110,0100 ; 53,125 00110101,00100000 б) 0,8125 0,1101 х 0,6875 х 0,1011 . 0,10001111 Для порівняння, добуток цілих чисел рівний 32 розряди, для множників 16х16 розрядів, а добуток з фіксованою комою рівний 16:16, для множників (8:8) х (8:8) розрядів (добуток з фіксованою комою рівний 32:32, для множників (16:16)х(16:16) розрядів). Операція ділення для чисел представлених в форматі з фіксованою комою містить дії аналогічні виконанню операції ділення над багаторозрядними цілими числами, результатом операції є частка та залишок представлені у заданих форматах. Наприклад, якщо ділене і дільник представлені в форматі (4:4), то необхідно одержану частку перемножити на 2 в четвертій степені для одержання відповідного формату: 1010,0000 /0101.0000 = 0010  0010,0000 (після зсуву на 4-біти); 10,0 / 5,0 = 2 . 3.1 Арифметичні операції над числами в форматі з плаваючою комою Формат представлення чисел з плаваючою комою передбачає представлення числа в показниковій формі: мантиса, основа, порядок. В МПС такі числа представлені у вигляді двох груп чисел: перша група називається мантисою і визначає саме число, друга група пназивається порядком. Якщо задається формат з умовою наявності старшого розряду мантиси не рівного нулю, то маєм нормальну форму представлення. В цій формі запису маєм значно більший діапазон представлення дійсних чисел в порівнянні з такою самою розрядністю чисел з фіксованою комою, але алгоритм виконання арифметичних операцій при цьому ускладнюється. Так, операція додавання або віднімання виконується такою послідовністю: - вирівнюються порядки доданків, молодший порядок збільшується до більшого порядку одного з доданків; - виконується перетворення мантис в доповнюючий код, при необхідноcті; - відповідно, коректується мантиса числа, порядок якого вирівнюється; - виконується додавання мантис аналогічно алгоритму додавання чисел з фіксованою комою; - у випадку необхідності виконується нормалізація результату; - до суми записуєм сформований порядок. Операція множення в форматі з плаваючою крапкою виконується за такою послідовністю: - визначається знак добутку; - перемножуються мантиси співмножників аналогічно алгоритму множення чисел з фіксованою комою; - визначається порядок добутку за допомогою арифметичної операції додавання цілих чисел зі знаком; - у випадку необхідності виконується нормалізація результату; - до суми записуєм сформований порядок. Ділення в форматі з плаваючою крапкою виконується аналогічно так, як і множення. Мантиса діленого повинна бути менше мантиси дільника, що одержуєм через масштабування. Порядок частки визначається відніманням порядків діленого та дільника. У випадку необхідності виконується нормалізація результату; Використання набору арифметико-логічних команд МП КР580ВМ80А використовується для виконання арифметичних операцій над багаторозрядними числами, форма представлення і формати яких визначаються на етапі проектування.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!