8085 Режимы адресации и прерывания
Теперь обсудим режимы адресации в микропроцессоре 8085.
Режимы адресации в 8085
Это инструкции, используемые для передачи данных из одного регистра в другой регистр, из памяти в регистр и из регистра в память без какого-либо изменения содержимого. Режимы адресации в 8085 подразделяются на 5 групп:
Режим немедленной адресации
В этом режиме 8/16-битные данные указываются в самой инструкции как один из ее операндов. For example: MVI K, 20F: означает, что 20F копируется в регистр K.
Зарегистрируйте режим адресации
В этом режиме данные копируются из одного регистра в другой. For example: MOV K, B: означает, что данные из регистра B копируются в регистр K.
Режим прямой адресации
В этом режиме данные напрямую копируются с заданного адреса в регистр. For example: LDB 5000K: означает, что данные по адресу 5000K копируются в регистр B.
Режим косвенной адресации
В этом режиме данные передаются из одного регистра в другой с использованием адреса, указанного регистром. For example: MOV K, B: означает, что данные передаются из адреса памяти, указанного регистром, в регистр K.
Подразумеваемый режим адресации
Этот режим не требует никаких операндов; данные определяются самим кодом операции.For example: CMP.
Прерывания в 8085
Прерывания - это сигналы, генерируемые внешними устройствами, чтобы запросить микропроцессор на выполнение задачи. Имеется 5 сигналов прерывания, т. Е. TRAP, RST 7.5, RST 6.5, RST 5.5 и INTR.
Прерывания классифицируются на следующие группы в зависимости от их параметра -
Vector interrupt - В этом типе прерывания адрес прерывания известен процессору. For example: РСТ7.5, РСТ6.5, РСТ5.5, ЛОВУШКА.
Non-Vector interrupt - В этом типе прерывания адрес прерывания не известен процессору, поэтому для выполнения прерывания устройство должно посылать адрес прерывания извне. For example: INTR.
Maskable interrupt - В этом типе прерывания мы можем отключить прерывание, записав в программу некоторые инструкции. For example: RST7.5, RST6.5, RST5.5.
Non-Maskable interrupt - В этом типе прерывания мы не можем отключить прерывание, записав некоторые инструкции в программу. For example: ЛОВУШКА.
Software interrupt- В этом типе прерывания программист должен добавить инструкции в программу для выполнения прерывания. В 8085 есть 8 программных прерываний, то есть RST0, RST1, RST2, RST3, RST4, RST5, RST6 и RST7.
Hardware interrupt - В 8085 имеется 5 контактов прерывания, используемых в качестве аппаратных прерываний, т.е. TRAP, RST7.5, RST6.5, RST5.5, INTA.
Note- NTA не является прерыванием, он используется микропроцессором для отправки подтверждения. Наивысший приоритет имеет TRAP, затем RST7.5 и так далее.
Процедура обслуживания прерывания (ISR)
Небольшая программа или процедура, которая при выполнении обслуживает соответствующий источник прерывания, называется ISR.
ЛОВУШКА
Это немаскируемое прерывание, имеющее наивысший приоритет среди всех прерываний. По умолчанию он включен, пока не будет подтвержден. В случае сбоя он выполняется как ISR и отправляет данные в резервную память. Это прерывание передает управление в ячейку 0024H.
RST7.5
Это маскируемое прерывание, имеющее второй по приоритету среди всех прерываний. Когда это прерывание выполняется, процессор сохраняет содержимое регистра ПК в стек и переходит к адресу 003CH.
RST 6.5
Это маскируемое прерывание, имеющее третий приоритет среди всех прерываний. Когда это прерывание выполняется, процессор сохраняет содержимое регистра ПК в стек и переходит к адресу 0034H.
RST 5.5
Это маскируемое прерывание. Когда это прерывание выполняется, процессор сохраняет содержимое регистра ПК в стек и переходит к адресу 002CH.
INTR
Это маскируемое прерывание, имеющее самый низкий приоритет среди всех прерываний. Его можно отключить, сбросив микропроцессор.
когда INTR signal goes high, могут произойти следующие события -
Микропроцессор проверяет состояние сигнала INTR во время выполнения каждой инструкции.
Когда сигнал INTR высокий, микропроцессор завершает свою текущую инструкцию и отправляет активный сигнал подтверждения прерывания с низким уровнем.
Когда инструкции получены, микропроцессор сохраняет адрес следующей инструкции в стеке и выполняет полученную инструкцию.