📌  相关文章
📜  8085寻址模式和中断

📅  最后修改于: 2020-12-13 15:27:09             🧑  作者: Mango


现在让我们讨论8085微处理器中的寻址模式。

8085中的寻址模式

这些指令用于将数据从一个寄存器传输到另一个寄存器,从存储器传输到寄存器,以及从寄存器传输到存储器,而内容没有任何更改。 8085中的寻址模式分为5组-

立即寻址模式

在这种模式下,指令本身将8/16位数据指定为其操作数之一。例如: MVI K,20F:表示将20F复制到寄存器K中。

寄存器寻址模式

在这种模式下,数据从一个寄存器复制到另一个寄存器。例如: MOV K,B:表示将寄存器B中的数据复制到寄存器K。

直接寻址模式

在这种模式下,数据直接从给定地址复制到寄存器。例如: LDB 5000K:表示将地址5000K的数据复制到寄存器B。

间接寻址模式

在这种模式下,通过使用寄存器指向的地址将数据从一个寄存器传输到另一个寄存器。例如: MOV K,B:表示数据从寄存器指向的存储器地址传输到寄存器K。

隐式寻址模式

此模式不需要任何操作数。数据由操作码本身指定。例如: CMP。

8085中的中断

中断是由外部设备生成的信号,用于请求微处理器执行任务。有5个中断信号,即TRAP,RST 7.5,RST 6.5,RST 5.5和INTR。

中断根据其参数分为以下几类:

  • 向量中断-在这种类型的中断中,处理器知道中断地址。例如: RST7.5,RST6.5,RST5.5,TRAP。

  • 非向量中断-在这种类型的中断中,处理器不知道中断地址,因此,中断地址需要由设备从外部发送以执行中断。例如: INTR。

  • 可屏蔽中断-在这种中断中,我们可以通过向程序中写入一些指令来禁用中断。例如: RST7.5,RST6.5,RST5.5。

  • 不可屏蔽中断-在此类中断中,我们无法通过向程序中写入一些指令来禁用该中断。例如: TRAP。

  • 软件中断-在这种类型的中断中,程序员必须将指令添加到程序中以执行中断。 8085中有8个软件中断,即RST0,RST1,RST2,RST3,RST4,RST5,RST6和RST7。

  • 硬件中断-8085中有5个中断引脚用作硬件中断,即TRAP,RST7.5,RST6.5,RST5.5,INTA。

– NTA不是中断,微处理器将其用于发送确认。 TRAP具有最高优先级,然后是RST7.5,依此类推。

中断服务程序(ISR)

一个小程序或例程,在执行时可以为相应的中断源提供服务,称为ISR。

陷阱

这是一个不可屏蔽的中断,在所有中断中具有最高优先级。默认情况下,它被启用直到被确认。如果发生故障,它将作为ISR执行并将数据发送到备份存储器。该中断将控制转移到地址0024H。

RST7.5

它是可屏蔽的中断,在所有中断中具有第二高的优先级。执行此中断时,处理器将PC寄存器的内容保存到堆栈中并跳转到003CH地址。

RST 6.5

它是可屏蔽的中断,在所有中断中具有第三高的优先级。执行此中断时,处理器将PC寄存器的内容保存到堆栈中并跳转到0034H地址。

RST 5.5

这是可屏蔽的中断。执行此中断时,处理器将PC寄存器的内容保存到堆栈中并跳转到002CH地址。

INTR

它是可屏蔽的中断,在所有中断中优先级最低。可以通过重置微处理器来禁用它。

INTR信号变高时,会发生以下事件-

  • 微处理器在执行每条指令期间检查INTR信号的状态。

  • 当INTR信号为高电平时,微处理器完成其当前指令并发送有效的低中断确认信号。

  • 当接收到指令时,微处理器将下一条指令的地址保存在堆栈中并执行接收到的指令。