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** 需要 1 个字节、3 个机器周期(操作码获取、内存读取、内存写入)和 10 个 T 状态才能执行,如时序图所示。
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP