8085 微处理器中的 I/O 映射 I/O
通常,像 8085 这样的处理器通过发送 8 位端口地址和 IO/M* = 1 来寻址一个 I/O 端口。例如,假设当 8 位地址 = F0H、IO/M* = 1 和 RD* = 0 时,I/O 端口芯片的片选引脚被激活。这在下面的图中显示。
这种通过处理器发送 IO/M* 作为逻辑 1 来寻址的 I/O 端口称为 I/O 映射 I/O 端口。
一个输入输出端口通常由 8085 处理器通过释放 8 位的端口地址和 IO/M* = 1 来寻址。举一个例子,当 8 位的地址等于 F0H,并且 IO/M* 等于 1 且 RD* 等于 0 时,一个输入输出端口芯片的片选引脚被激活。我们在下面的图中显示了整个引脚图。
在 8085 指令集中,8085 有两个指令用于与 I/O 端口通信。它们是 IN 和 OUT 指令。IN 或 OUT 指令助记符后面应该跟一个 8 位端口地址。因此,在基于 8085 的微型计算机中,可以有 2^8 = 256 个输入端口和 256 个输出端口。IN 和 OUT 都是 2 字节指令。
助记符,操作数 | 操作码(十六进制) | 字节 |
---|---|---|
IN 端口地址 | DB | 2 |
OUT 端口地址 | D3 | 2 |
在 IN 指令的情况下,PORT# 的当前 8 位内容将被提供到累加器。假设在 PORT# 上连接了 8 个 DIP 开关。并且它们的状态为 ON-ON-OFF-ON-ON-ON-OFF-ON。因此,在执行指令 IN PORT# 后,累加器内容将为 1101 1101。
在 OUT 指令的情况下,累加器的当前 8 位内容将被复制到 PORT#。假设累加器的初始内容为 0101 0101。并且在 8 位端口上连接了 8 个 LED。因此,在执行指令 OUT PORT# 后,LED 将具有如下所示的状态:
广告