Motorola MC68HC705C8
Категория реферата: Рефераты по радиоэлектронике
Теги реферата: список рефератов, диплом школа
Добавил(а) на сайт: Sijasinov.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 11 | Следующая страница реферата
Программный счетчик (PC)-это 13-битовый регистр, содержащий адрес команды, следующей за выполняемой, либо адрес операнда, входящего в код программы. Шина адреса MC68HC705C8 имеет разрядность 13 бит, что позволяет адресовать 8 Кб памяти.
Указатель стека (SP), как и программный счетчик, является 13-битным
регистром, содержащим адрес следующей (свободной) ячейки стека. Во время
начальной установки, либо при выполнении команды "Сброс указателя стека"
(RSP), в указатель записывается адрес 00FFH. Затем это значение уменьшается
по мере записи данных в стек. При обращении к памяти 7 старших бит
указателя постоянно имеют значение 0000011В. Эти 7 бит добавляются к шести
младшим битам для получения адреса от 00FFH до 00C0H. Подпрограммы и
прерывания могут, таким образом, использовать до 64 ячеек памяти под стек.
Если все ячейки заполнены, то указатель стека автоматически устанавливается
в исходную позицию и записанная в стек информация теряется. Вызов
подпрограммы использует 2 ячейки стека, прерывание-5 ячеек.
Регистр признаков (СС) содержит 5 флагов, устанавливающихся в
зависимости от результата выполнения арифметических и других команд. Этими
флагами являются: флаг полупереноса (Н), флаг отрицательного результата
(N), флаг нулевого результата (Z), бит маски прерываний (I) и флаг переноса
(С).
Флаг полупереноса (Н)-используется для операций с числами в двоично- десятичном коде и изменяется при операциях сложения (ADD) и сложения с флагом переноса (ADC). Бит Н устанавливается в 1 при возникновении переноса из бита 3 в бит 4.
Бит маскирования прерываний (I)-запрещает все маскируемые прерывания при установке его в 1. Бит I автоматически устанавливается при возникновении любого прерывания сразу же после сохранения регистров в стеке, но до передачи управления по вектору прерывания. Если внешнее прерывание происходит в тот момент, когда ,бит I установлен в 1, то запрос на прерывание фиксируется и обрабатывается после сброса бита I. После обслуживания прерывания, команда возврата из прерывания (RTI) восстанавливает содержимое регистров. Таким образом, после обработки прерывания I-бит сбрасывается, а при начальной установке ОЭВМ бит I устанавливается в 1 и может быть сброшен программно.
Флаг отрицательного результата (N) устанавливается в 1, если результат последней операции является отрицательным числом, и сбрасывается в противоположном случае.
Флаг нулевого результата (Z) устанавливается в 1, если результатом последней операции является 0 и сбрасывается в противоположном случае.
Флаг Перенос (заем) (С) индицирует, что произошел перенос в результате операции сложения, либо заем при вычитании. Операции сдвига и циклического сдвига происходят через этот бит, что дает возможность осуществлять операции сдвига с операндами из нескольких слов.
1.4. Режимы адресации.
ОЭВМ МС68НС705С8 использует восемь режимов адресации, определяющих способ доступа к данным, требуемым для выполнения команд. Способы адресации, поддерживаемые ОЭВМ МС68НС05С8, перечислены ниже: неявная; непосредственная; прямая; расширенная; индексная без смещения; индексная с 8-разрядным смещением; индексная с 16-разрядным смещением; относительная.
Команды с неявной адресацией либо не имеют операндов, либо содержат
указание на операнд в мнемонике команды. К таким командам относятся, например, команды возврата из прерывания (RTI), останова (STOP) и т.д.
Неявный тип адресации имеют команды работы с данными в регистрах
микропроцессора, например, установить флаг переноса (SEC), увеличение
числа, хранящегося в аккумуляторе, на единицу (INCA), и другие. Команды с
неявной адресацией не требуют обращения к памяти и имеют длину один байт. В
Таблице 1-1 приведен список команд, которые используют неявную адресацию.
Таблица 1-1. Команды, использующие неявную адресацию.
|Команда |Мнемоника |
|Арифметический сдвиг влево |ASLA, ASLX |
|Арифметический сдвиг вправо |ASRA, ASRX |
|Сбросить флаг переноса |CLC |
|Сбросить флаг маскирования прерываний |CLI |
|Обнулить |CLRA, CLRX |
|Дополнение |COMA, COMX |
|Декремент на 1 |DECA, DECX |
|Инкремент на 1 |INCA, INCX |
|Логический сдвиг влево |LSLA, LSLX |
|Логический сдвиг вправо |LSRA, LSRX |
|Умножение |MUL |
|Изменить знак |NEGA, NEGX |
|Нет операции |NOP |
|Циклический сдвиг влево через флаг переноса |ROLA, ROLX |
|Циклический сдвиг вправо через флаг переноса |RORA, RORX |
|Инициализация указателя стека |RSP |
|Возврат из прерывания |RTI |
|Возврат из подпрограммы |RTS |
|Установить флаг переноса |SEC |
|Установить бит маскирования прерываний |SEI |
|Разрешить IRQ и останов генератора синхроимпульсов |STOP |
|Программное прерывание |SWI |
|Запись содержимого аккумулятора в индексный регистр |TAX |
|Проверить на отрицательность и равенство нулю |TSTA, TSTX |
|Запись содержимого индексного регистра в аккумулятор |TXA |
|Разрешить прерывание и останов процессора |WAIT |
Пример:
0200 4С INCA Инкремент аккумулятора
Производимые действия:
$0200 $4C [1], [2], [3]
Объяснение:
[1] процессор читает код операции $4C - инкремент аккумулятора;
[2], [3] процессор считывает содержимое аккумулятора, увеличивает на 1, запоминает новую величину в аккумуляторе, в соответствии с результатом устанавливает биты в регистре флагов.
При непосредственной адресации операнд первый операнд находится в
аккумуляторе или индексном регистре, а второй является частью кода команды.
Команды с непосредственной адресацией не требуют адреса памяти и имеют
длину два байта. Код команды содержится в первом байте, а операнд во втором
байте. Таблица 1-2 содержит команды, использующие непосредственную
адресацию.
Таблица 1-2. Команды, использующие непосредственную адресацию.
|Команда |Мнемоника |
|Сложение с флагом переноса |ADC |
|Сложение |ADD |
|Логическое И |AND |
|Битовое сравнение ячейки памяти с аккумулятором |BIT |
|Сравнение аккумулятора и ячейки памяти |CMP |
|Сравнение индексного регистра и ячейки памяти |CPX |
|Исключающее ИЛИ ячейки памяти и аккумулятора |EOR |
|Загрузить аккумулятор содержимым ячейки памяти |LDA |
|Загрузить индексный регистр содержимым ячейки памяти |LDX |
|Операция ИЛИ |ORA |
|Вычитание с флагом переноса |SBC |
|Вычитание |SUB |
Пример:
0200 А6 02 LDA #$02 Загрузить аккумулятор константой $02
Рекомендуем скачать другие рефераты по теме: доклад по биологии, скачать сообщение, реферат по педагогике.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 11 | Следующая страница реферата