8085微处理器中的操作码提取(OF)机器周期
OF机器周期由下图所示的四个时钟周期构成。在这四个时钟周期中,我们执行操作码提取、解码和完成执行。此外,在2字节和3字节指令中,以及在像“MOV B, M”这样的1字节指令中,只有OF和解码操作在这四个时钟周期内完成。因此,操作码提取由OF机器周期构成,用于执行解码操作,在某些罕见情况下执行其他操作。对于执行一些典型的指令,例如DCX B,OF机器周期提供六个状态。因此,类似于OF,机器周期的指示是完成的,并且在没有等待状态时需要总的T状态数。如果需要等待状态,则完全取决于我们系统中使用的内存速度和外围芯片。在前三个时钟周期中,IR寄存器从内存位置C001H接收4EH。我们在T4状态进行解码。控制单元(CU)获取与1字节指令对应的操作码,其助记符代码为MOV C, M。OF机器周期由我们前面描述的这4个T状态构成。同时,我们将PC的内容递增到C002H。但我们不会从此处释放C002H,因此指令MOV C, M不会执行。

除了地址信息外,控制单元在**T1**期间还会激活如下所示的状态信号。
ALE等于1,表示AD7-0上的地址位;
IO/M*等于0,表示内存地址;
如果S1等于1且S0等于0,则表示它是MR机器周期。
例如,让我们考虑指令STC并解释其OF。
在8085指令集中,**STC**代表“设置进位标志”。它将cy标志设置为1状态,而不管其之前的数值如何。它对cy标志执行设置操作,并将结果存储回cy标志。
| 助记符,操作数 | 操作码(十六进制) | 字节数 |
|---|---|---|
| STC | 37 | 1 |
此指令执行的结果已在下表中显示:
| | 之前 | 之后 |
|---|---|---|
| (Cy) | 1 | 1 |
此指令执行的结果已在下表中显示:
| | 之前 | 之后 | |
|---|---|---|---|
| (Cy) | 0 | 1 |
此指令执行的结果已在下表中显示:
| 地址 | 十六进制代码 | 助记符 | 注释 |
|---|---|---|---|
| 2000 | 37 | STC | 设置Cy标志,即设置Cy=1 |
针对此指令**STC**执行的时序图如下:

**总结:**因此,此指令**STC**需要1字节、1个机器周期(操作码提取)和4个T状态来执行,如时序图所示。
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP