8085寻址方式与中断



现在让我们讨论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。

注意 - INTA不是中断,它由微处理器用于发送确认信号。TRAP具有最高优先级,然后是RST7.5,依此类推。

中断服务程序 (ISR)

执行时为相应中断源提供服务的小程序或例程称为ISR。

TRAP

这是一个不可屏蔽中断,在所有中断中具有最高优先级。默认情况下,它处于启用状态,直到得到确认。如果发生故障,它将作为ISR执行并将数据发送到备份内存。此中断将控制转移到0024H位置。

RST7.5

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

RST 6.5

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

RST 5.5

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

INTR

这是一个可屏蔽中断,在所有中断中具有最低优先级。可以通过复位微处理器来禁用它。

INTR信号变高时,可能会发生以下事件:

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

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

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

广告