- •1 Основные понятия и определения
- •2 Развитие мп
- •3 Классификация мп
- •6) По виду алгоритма работы управляющего устройства:
- •4 Строение микропроцессора
- •4.1 Общие представления о микропроцессоре
- •4.2.2.1 Аккумулятор
- •4.2 Структура микропроцессора
- •4.2.1 Арифметико-логическое устройство (алу)
- •4.2.2 Регистры мп
- •4.2.2.2 Счетчик команд (Program Counter (рс) - программный счётчик)
- •4.2.2.3 Регистр адреса памяти (регистр адреса)
- •4.2.2.4 Регистр команд
- •4.2.2.5 Регистр состояния
- •4.2.2.6 Буферные регистры алу
- •4.2.2.7 Регистры общего назначения (рон)
- •4.2.2.8 Указатель стека (Stack Pointer - (sp))
- •4.2.3 Схема управления
- •4.3 Технические характеристики микропроцессоров
- •4.4 Команды процессора
- •4.4.1 Система команд процессора
- •4.4.2 Форматы команд
- •4.4.3 Способы адресации операндов
- •4.5 Принцип выполнения команд
- •5 Архитектура микропроцессоров
- •6 Микроконтроллеры
- •6.1 Общие сведения
- •6.2 Модульная организация мк
- •Порты ввода/вывода
- •Таймеры и процессоры событий
- •8.1.2. Система команд процессора мк
4.2.2.7 Регистры общего назначения (рон)
В некоторых МП РОН служат в качестве запоминающих устройств, это позволяет повысить быстродействие микро-ЭВМ за счет сокращения пересылок кодов между МП и памятью. В некоторых МП функциональные возможности этих регистров не уступают возможностям аккумулятора. Последнее достигается в том случае, если АЛУ может помещать в них данные.
Регистры общего назначения BC, DE, HL могут быть использованы как шесть 8-разрядных или три 16-разрядные пары регистров в зависимости от текущей выполняемой команды. Выборка команд длиной 2 и 3 байт производится с участием регистров W и Z. Первый байт команды заносится в регистр команд, второй - в регистр W, а третий - в регистр Z. Регистры W и Z программно недоступные. Пара HL обычно используется для указания адреса. Остальные РОН являются регистрами хранения данных. В нашем случае АЛУ не помещает данные в РОН, поэтому они не обладают возможностями аккумулятора. РОН представляет собой сверхоперативную память МП.
4.2.2.8 Указатель стека (Stack Pointer - (sp))
Указатель стека (SP) представляет 16-разрядный регистр, который содержит адрес последнего помещенного в стек байта. Указатель стека декрементируется при каждом помещении в стек и инкрементируется при каждом извлечении из него.
Стек – это область памяти, специально выделяемая для временного хранения данных программы. Отличительной особенностью стека является особая организация обращения к нему со стороны МП. Запись и чтение данных в стеке осуществляется в соответствии с принципом LIFO (Last In First Out) – «последним пришел, первым ушел». В ячейки стека информация заносится последовательно и извлекается в порядке обратном порядку занесения. Таким образом, стек функционирует как память с последовательным доступом. По мере записи данных в стек он растёт в сторону младших адресов. Эта особенность заложена в алгоритм команд работы со стеком. Концептуальная схема организации стека показана на рисунке.
Адрес |
Содержимое |
Вершина стека |
Направления роста стека |
Дно стека |
Старшие адреса |
Младшие
Адреса
Стек предназначен для обработки прерываний и программ. При записи слова данных в ячейку стека значение адреса в указателе стека уменьшается на единицу, а при считывании данных увеличивается на единицу.
Стек выполняется на некоторой выделенной области ОЗУ. Обращение и адресация к стеку производится через регистр указателя стека.
Стек на внутренних регистрах МП более быстродействующий, но из-за малого числа регистров, имеющихся в МП, не обеспечивается большая глубина вложения данных. Поэтому стеки большинства МП размещаются в памяти.
Вершиной стека называется адрес его последней загруженной ячейки памяти. Таким образом, указатель стека всегда содержит адрес его вершины. Начало стека в ОЗУ (его дно) определяется программистом путём записи в регистр SP адреса первой ячейки памяти стека. Вершина стека подвижна и её расположение определяется объёмом данных, загруженных в стек. Стек не имеет ограничений, за исключением тех, которые обусловлены наличием других программ в ОЗУ.
