8085 微处理器中的 INR R 指令


在 8085 指令集中,INR 是一个助记符,代表“INcRement”(增量),而“R”代表以下任何寄存器或由 HL 对指向的内存位置 M。

R = A, B, C, D, E, H, L, or M

此指令用于将 1 加到 R 的内容中。因此,R 中的先前值只会增加 1。增量的结果将存储在 R 中,更新其先前的内容。所有标志,除了 Cy 标志外,都会根据产生的结果而受到影响。在不同的汇编语言核心,此指令用于循环或作为计数器。由于 R 可以具有上述八个值中的任何一个,因此此类指令可能有八种操作码。它在内存中只需要 1 个字节。

助记符,操作数 操作码(十六进制) 字节数
INR B 04 1
INR C 0C 1
INR D 14 1
INR E 1C 1
INR H 24 1
INR L 2C 1
INR M 34 1

让我们以 **INR M** 作为此类指令的示例。它是一个 1 字节指令。假设 HL 寄存器对保存 16 位值 4050H 作为 16 位地址。并且 4050H 位置保存值 05H。因此,在执行指令 **INR M** 后,4050H 位置的当前内容将变为 06H。此指令的跟踪表如下所示

之前 之后

(HL)

4050H 4050H

(4050H)

05H 06H

标志寄存器 (F)

任何值 Cy=无变化,Ac=0,S=0,P=1,Z=0

地址 十六进制代码 助记符 注释
2005 34 INR M (HL)=(HL)+ 1,即 4050H 内存位置的内容将增加 1,因为 HL 寄存器对具有 16 位地址 4050H

以下是指令 **INR M** 执行的时序图

INR M

**总结** - 因此,此指令 **INR M** 需要 1 个字节、3 个机器周期(操作码获取、内存读取、内存写入)和 10 个 T 状态才能执行,如时序图所示。

更新于: 2019-07-30

8K+ 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.