КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Тема 19. Структура управління МП Intel 8080
Приклад 13. Порівняння символьних рядків Приклад 12. Перетворення із коду ASCII в десяткову систему Щоб перетворити цифру з коду ASCII в десяткову систему, достатньо відняти від її коду значення 30H (нуль в коді ASCII). В програмі необхідно також перевірити, чи є символ, що перетворюється цифрою. ORG 800H; SUI ‘0’; завантажити символ в коді ASCII CPI 10; відняти нуль в коді ASCII A<10, Cy=1 JC DEC; результат менше 10? MVI A,0FFH; символ не є десятковою цифрою DEC: STA ADDR2; запам’ятати результат HLT ADDR1: DB 36H ADDR2: DB 0 END
В багатьох задачах необхідно розпізнавати рядки символів в коді. Ці рядки можуть бути командами, ідентифікаторами, іменами, повідомленнями або числами. Розпізнавання складається в перевірці співпадання деякого символьного рядка з заданим. Нехай два рядка символів розміщені в пам’яті, починаючи з комірок ADDR1 та ADDR2 відповідно. В комірці ADD1 вказано довжину рядка. Програма надсилає в ADD2 нуль, якщо рядки співпадають та 0FFH в протилежному випадку. ORG 800H CMP M MVI C,0FFH JNZ D1 LXI H,ADD1 DCR B MOV B,M JNZ D2 LXI D,ADDR2-1 D1: MOV A,C D2: INX H STA ADD2 INX D HLT LDAX D ADD1: DB 4 ADDR1: DB ‘CAT.’ ADDR2: DB ‘CAT,’ ADD2: DB 0 END A10 A11 GND A14 D4 A13 D3 A12 D5 A15 D6 A9 D7 A8 D2 A7 D1 A6 D0 A5 -5V A4 RESET A3 HOLD +12B INT A2 φ2 A1 INTE A0 DBIN WAIT WR READY SYNC φ1 +5V HLDA
Рис.19.1
На рис.19.1 показано розміщення виводів МП Intel 8080, де виводи 1. D0-D7 – створюють двохнаправлену шину даних розрядністю 8. В цю шину від периферійних пристроїв надходять в процесор дані. Від ОЗП або ПЗП надходять дані або команди (це відповідає режиму приймання). При цьому вивід 17 DBIN - приймання повинен знаходиться в стані логічної 1. Крім цього через ШД мікропроцесор видає байт інформації або в ОЗП або в периферійний пристрій. При цьому сигнал на виводі 18 WR - видача повинен відповідати рівню логічного “0”, тобто якщо 0, то МП видає інформацію через ШД. 2. Виводи А0-А15 відповідають однонаправленій 16- розрядній шині адреси. Адреса є першою по відношенню до даних. 3. Входи 22 φ1 та 15 φ2 – сигнали двохфазного тактового генератора (ще їх називають тактуючими сигналами з імпульсами, що перекриваються). 4. При обміні даними бере участь сигнал готовності READY 23. Він випрацьовується пристроєм, що адресується або ОЗП, або ПЗП, або ПВВ. Тут може бути два випадки: – пристрої, що адресуються можуть бути достатньо швидкодіючим. В цьому випадку сигнал готовності встановлюється постійно в стан логічної “1”. Він не чекає підтвердження про закінчення обміну даними. Це стосується ОЗП або ПЗП. Цей режим називають режимом обміну без циклу чекання; – периферійний пристрій (ПВВ) має меншу швидкість, ніж швидкість МП, тому необхідно вводити цикл чекання. Він реалізується наступним чином: переводить сигнал готовності в стан логічного “0”. Логічний “0” для виводу 23 приводить до зупинки роботи МП. Одночасно МП на вивід 24 WAIT видає сигнал логічної “1”, що відповідає режиму чекання, який триває до тих пір поки ПВВ видасть сигнал готовності логічної “1” 23. Обмін даними завершується і МП переходить до виконання наступної команди. 5. Сигнал RESET 12 – встановлення випрацьовується поза процесором. При подачі логічної “1” МП встановлює своє регістри в початковий стан та РС=0. Після знімання сигналу RESET МП виставляє на ША логічний рівень “0” і починає виконувати програму з нульової комірки пам’яті. 6. Апаратне переривання МП оброблюється в випадку подачі логічної “1” на вивід 14 INT запит на переривання. Якщо переривання було дозволено ЕІ, то воно відбудеться і підтвердження в вигляді логічної “1” з’явиться на 16 контакті INTЕ підтвердження переривання. Сигнал INT повинен бути короткочасним, декілька мікросекунд. МП дозволяє здійснити багатократний доступ до пам’яті і до ПВВ в режимі захвату шин іншими конкуруючими МП або пультом керування. З цією метою використовується контакт 13 HOLD. Сигнал захвату шин надходить від МП і якщо МП звільнив зайняті шини, то підтвердження режиму захвату здійснюється по сигналу 21 HLDA. Якщо на контакт 13 подати логічну “1”, то МП: - завершить виконання поточної команди; - відключить всі своє шини; - через контакт 21 видасть логічну “1” підтвердження захвату шин і з цього моменту до ПЗП, ОЗП, ПВВ має доступ конкуруючий пристрій і він повинен виконувати функції МП по управлінні сигналами. (Режим захвату шин.) 7. Сигнал 19 призначено для видачі МП короткочасного імпульсу перед початком виконання кожної поточної команди.
Дата добавления: 2014-01-04; Просмотров: 315; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |