8085 微处理器中设置/补充 Cy 标志的指令


在 8085 指令集中,有两个指令可以控制 Cy 标志位的内容。它们的助记符分别是 **STC** 和 **CMC**。两者都是 1 字节指令。它们的十六进制代码在以下表格中给出 -

**助记符,操作数**
操作码(十六进制)
字节数
STC
37
1
CMC
3F
1


使用 **STC** 指令,我们可以将 Cy 标志位设置为 1,而不管其先前的值是什么。使用 **CMC** 指令,我们可以对 Cy 标志位的当前值取反,结果将更新当前的 Cy 标志位的值。这里 **STC** 代表“设置进位标志”,**CMC** 代表“对进位标志取反”。请注意,在 8085 指令集中没有专门的指令来复位 Cy 标志位。要复位 Cy 标志位,我们可以按此顺序依次执行 STC 和 CMC 指令。

Intel 8085 还提供指令来对进位标志取反,并将进位标志设置为 1 状态。但它没有指令将进位标志复位为 0。如果需要将进位标志复位为 0,方法是先将其设置为 1,然后取反。注意,其他任何标志都不能被设置或取反。


地址
十六进制代码
助记符
注释
2000
37
STC
将 Cy 标志位设置为 1,而不管其先前的值是什么
2001
3F
CMC
对 Cy 标志位取反。因此,这里 Cy ← 1 的补码 = 0 将是 Cy 标志位的最终值


针对此指令 **STC** 执行的时序图如下所示 -

**总结** - 因此,此指令 STC 需要 1 字节、1 个机器周期(操作码获取)和 4 个 T 状态才能执行,如时序图所示。


针对此指令 **CMC** 执行的时序图如下所示 -


**总结** - 因此,此指令 **CMC** 需要 1 字节、1 个机器周期(操作码获取)和 4 个 T 状态才能执行,如时序图所示。

更新于: 2020 年 6 月 27 日

1K+ 次查看

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告