Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КР1 / 56.docx
Скачиваний:
4
Добавлен:
08.04.2022
Размер:
585.23 Кб
Скачать

Программный счётчик.

Программный счётчик (РС – Program Counter) используется для указания следующей команды выполняемой программы. Это счётчик с параллельным вводом и параллельным выводом. В процессорах с принстонской архитектурой содержимое РС поступает по шине данных в схему управления памятью, указывая адрес считываемой команды. Программные счётчики часто входят в состав схемы управления памятью – это позволяет избежать передачи адреса по внутренней шине данных.

Основные характерные особенности программного счётчика, следующие:

  • параллельная загрузка нового содержимого с шины данных;

  • возможность возврата к адресу первой команды программы (возможность сброса);

  • реализация счёта на увеличение (инкремента) для адресации следующей команды.

Сигналы, обеспечивающие выполнение этих операций счётчиком, формируются дешифратором команд, управляющим последовательностью действий МП-компонента.

Параллельная загрузка используется для записи в программный счётчик адреса перехода при выполнении команды безусловного перехода («jump») или вызова подпрограммы («call»).

Начальное содержимое программного счётчика после запуска МП-устройства может иметь любое значение. Часто используется значение начального адреса 0000016, но ряд устройств начинают выполнение программы с других адресов. Аналогичная ситуация возникает с адресами прерываний (векторами прерываний). Обслуживание прерывания начинается с адреса (вектора прерывания), отличного от адреса, загружаемого при начальном запуске устройства. Но для реализации прерывания или запуска устройства используются обычно одни и те же аппаратные средства.

Из методички:

Счетчик команд представляет собой регистр, в котором содержится адрес следующей исполняемой команды, при этом напрямую из наполняемой программы он недоступен. Размер счетчика команд зависит от объема имеющейся памяти программ и составляет от 16 разрядов. При нормальном выполнении программы содержимое счетчика команд автоматически увеличивается на 1 или на 2 (в зависимости от выполняемой команды) в каждом машинном цикле. Этот порядок нарушается при выполнении команд перехода, вызова и возврата из подпрограмм, а также пи. возникновении прерываний.

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

Соседние файлы в папке КР1