- •Принцип проектирования микропроцессорного блока.
- •Программная модель микропроцессора Intel 8085.
- •Система команд микропроцессора
- •Особенности программирования на ассемблере.
- •Шина адреса.
- •Шина управления.
- •Особенности мп к1812вм85(intel 80185).
- •Организация микропроцессорного блока на базе микропроцессора к1810 вм86/88 (Intel 8086/88 ) Основные методы повышения производительности микропроцессоров:
- •Основные характеристики микропроцессоров:
- •Средства реализации пошагового режима.
- •Особенности организации вм88.
- •Процессорный блок на базе 8086 / 8088
- •Особенности проектирования блоков памяти в микропроцессорных устройствах.
- •Статическая память 537 ру n зу
- •Периферийные бис микропроцессорных комплектов. Обобщенная структура программируемой бис.
- •Программируемый параллельный адаптер кр580 вв55
- •Программируемый таймер кр580ви53 / ви54
- •Программируемый адаптер последовательного интерфейса кр580вв51.
- •Структурная организация программируемого адаптера последовательного интерфейса кр580вв51.
- •Программное обеспечение программируемого адаптера последовательного интерфейса кр580вв51.
- •Программируемый контроллер прерываний кр580вн59,вн59а; intel8259, 59а
- •Структура программы инициализации пкп
- •Особенности организации 1810вн59а (i8259а).
- •Микроконтроллер к1816 ве51/31(intel 8051)
- •Структура резидентной памяти данных (рпд).
- •Система команд.
- •Структура команд orl( дизъюнкция), xrl (сумма по модулю 2) аналогична предыдущей.
- •Параллельные порты.
- •Счетчик/Таймер
- •Последовательный порт
- •Подсистема прерываний
- •Особые режимы работы
Особенности программирования на ассемблере.
Качество программ, написанных на ассемблере, определяется временем её выполнения, требуемым объемом памяти и возможностью модификации программы. Минимизация времени выполнения и объема памяти во многом зависит от правильного использования операционных возможностей МП: выбора регистров, рационального использования форматов команд и данных, способов адресации и так далее.
Исходя из особенностей выполнения команд, рекомендуется следующее использование программно-доступных регистров.
Аккумулятор (А) является центральным регистром обработки восьмиразрядных данных. Для большинства арифметических и логических команд он служит источником одного из операндов и приемником результата. Через А осуществляется обмен данными с устройствами ввода-вывода (УВВ). Только с данными, помещенными в А можно выполнять операции сдвига, обработку двоично-десятичных чисел и так далее. Аккумулятор обладает максимальными возможностями по обмену информацией с памятью, УВВ, регистрами, поэтому не рекомендуется его занимать для решения частных задач.
Регистровая пара rp HL является основным регистром косвенной адресации (обращение к М ). Это единственная регистровая пара, которая может обмениваться информацией с памятью , используя прямую адресацию. Именно она выполняет функции аккумулятора при сложении 16-разрядных чисел, через неё можно реализовать обмен со стеком, изменить содержание счетчика команд. Регистровая параHLиспользуется в основном в процедурах обработки адресной информации.
Регистровая пара rp DEпредставляет собой дополнительный регистр адреса, так как командойXCHG возможен обмен данными сrp HL.
Регистры В, С являются регистрами общего назначения и обычно используются в качестве регистров временного хранения , счетчиков и так далее.
rp BC можно использовать как регистр косвенной адресации.
При использовании регистровых пар в качестве регистров косвенной адресации необходимо помнить, что rp HL является более универсальным средством управления обменом, так как применяется во многих командах ( MOV M,R, ADD M, SUB M, ANA Mи так далее). Остальные регистровые пары осуществляют обмен только через аккумулятор.
Недостаточное количество регистров обычно компенсируется за счет использования ячеек памяти, за которыми закрепляются определенные функции. Однако это увеличивает количество пересылок и мобильность программ, так как приходится применять прямые способы адресации. Для хранения массивов более целесообразно использовать стек.
При организации циклов следует использовать операции DCR r, DCR M и команды JZ, JNZ ,так как в командах инкремента не формируется бит переноса С. Команды декремента/инкремента регистровых пар вообще не формируют признаки результата.
При работе с 16-разрядными данными следует использовать команды, предназначенные для этих целей: LHLD, SHLD, LXI rp, INX, DCX, DAD, POP, PUSH, XCHG, XTHL, PCHL, SPHL .
Минимизировать среднее время выполнение программ можно рациональным выбором последовательности условных переходов. В первую очередь необходимо проверять условия наиболее вероятные , во вторую – наименее вероятные. Например, проверка результата на знак (р=0,5) должна стоять перед проверкой на 0.
Некоторые операции, отсутствующие в списке команд МП, могут быть выполнены за счет применения однобайтовых команд: очистка А (SUB A, XRA A), логический сдвиг аккумулятора влево (ADD A), логический левый сдвиг двухбайтового числа (DAD H), очистка флага переноса (ORA A, ANA A)и так далее.
При реализации повышенного быстродействия следует использовать линейную последовательность команд вместо подпрограммы.
Применение подпрограмм позволяет сократить объём программ.
При выборе альтернативных команд необходимо обращать внимание на количество тактов , требующихся для их исполнения.Время выполнения однобайтовой команды может быть больше, чем многобайтовой. Например, LXI H-10 тактов, XTHL – 18 тактов.