Программирование микропроцессорных систем

Автор: Пользователь скрыл имя, 23 Января 2011 в 10:55, контрольная работа

Краткое описание

В цифровых вычислительных системах, непосредственно для вычислений используется бинарный код представленный двумя логическими уровнями «0» и «1».
Непосредственно уровни сигналов передающиеся по шинам микропроцессора проще всего переставить двоичном виде.

Оглавление

1. Представление данных в вычислительных системах (двоичная и шестнадцатеричная система счисления)
2. Алгоритм преобразования многобайтного двоичного числа в двоично-десятичный код
3. Способы организации взаимосвязи задач в микропроцессорной системе. Организация системы прерываний.
4. X - 16-битное число без знака, находящееся в ОЗУ с начальным адресом ADR1, CONST - 16-битная константа. Выполнить вычитание X - CONST и занести результат в ОЗУ с адреса ADR2.

Файлы: 1 файл

Контрольная_ПР.doc

— 131.00 Кб (Скачать)

    Этот  вариант обычно используют в системах с небольшим числом задач (3 – 4 задачи). показан на рис.3.2

     

    Р и  с. 3.1. Организация планирования выполнения задач с различными приоритетами

    с формированием  и анализом слова запросов на их решение 
    (за время выполнения текущей задачи поступили запросы на решение от 1-й, 2-й и 5-й. После анализа слова состояния будет выполняться 1-я из них как задача, имеющая наивысший приоритет.)  

    Рисунок 3.2 Порядок выполнения задач по прерываниям, которые

    имеют различные приоритеты (задачи в зависимости от важности распределены по шести уровням. Наивысшим по приоритету является уровень У1.

    )

           При проектировании специализированных микропроцессорных  контроллеров применяется преимущественно  последний вариант организации планирования.

           Для организации прерываний могут использоваться:

           Внешний таймер.(В  том числе встроенные таймеры)

           Дополнительный аппаратный контроллер прерываний из-за огра 
    ниченого числа прерываний реализованных в микроконтроллере.

           Аппаратные контроллеры  устройств индикации, ввода-вывода, 
    канала передачи данных.

           При этом из прикладной задачи можно выделить задачу оперативную – жестко привязанную по времени к управляемому процессу (измерение) и задачу фоновую (вычисление результатов измерения) для сокращения времени простоя сервисной задачи (например индикации) для предотвращения нарушения работы отображающего устройства.

           Алгоритмической связи  между фоновыми и оперативными задачами нет, они связаны между собой информационно, за счет общих ячеек памяти. При этом интервал выполнения оперативной задачи выбирается как можно меньшим

           Аппаратные контроллеры  ввода-вывода, индикации, передачи данных позволяют задачам работать асинхронно получая доступ к задачам в интервал времени не занятый оперативной задачей. 
     
     
     
     
     
     

     

         

         4. X - 16-битное число без знака, находящееся в ОЗУ с начальным адресом ADR1,    CONST - 16-битная константа.   Выполнить вычитание X - CONST и занести результат в ОЗУ с адреса ADR2

         Для вычитания используем представление  вычитаемого как отрицательное число в дополнительном коде с последующим сложением с первым операндом

    ; Вычитание из 2-Х  байтного числа  2-байтной константы

    ; ADR1 – Начальный адрес числа Х

    ; ADR2 – Адрес Для выгрузки результата

    ; CONST – Постоянная.

    ADR1 .EQU        100 H. ;выделяем адрес для числа – X

    ADR2 .EQU        102 H. ;Выделяем адрес для сохранения - Z

    ADRCONST .EQU    104H. ;Выделяем адрес для константы

            CLR C   ;Сброс флага

    SUBXC:

       MOV R0,#ADR1      ; Загрузка в R0 Начального адреса X

       MOV R1,#ADRCONST   ;Загрузка в R0 Начального адреса константы

       MOV R2,# ADR2  ;Загрузка в R2 Начального адреса результата

       MOV A,@R1   ;Загрузка в аккумулятор младшего байта константы

       CPL A       ;Преобразование в дополнительный код

       INC A

       ADD A,@R0 ;Вычитание младших байт

       MOV @R2,A ;Сохранение младшего байта Разницы

       INC R0     ;Переход к старшим байтам Х и Константы

       INC R1

       MOV A,@R1  ;Загрузка в аккумулятор старшего байта константы

       CPL A      ;Преобразование в обратный код

       ADDC  A,@R0 ;Вычитание старших байт

       MOV  @R2,A  ;Сохранение старшего байта разницы

Информация о работе Программирование микропроцессорных систем