【问题标题】:auxiliary carry and carry flags in 80858085中的辅助进位和进位标志
【发布时间】:2018-05-07 19:54:55
【问题描述】:

据说在8085中减法是在2的补码中进行的,所以标志位必须根据运算来设置。 但是,在显示的图中,我无法弄清楚辅助进位标志设置为“0”的原因,进位标志也是如此。当我执行 2 的补码运算时,我发现进位 = 1(在 2 的补码中没有考虑到)并且我还发现 1 的进位从低半字节移动到高字节,所以我认为辅助进位是 1。但我发现只是对他们来说都是相反的。

类似地,在下面显示的第二种情况下,我手动将进位设为零,而进位标志设置为 1。

【问题讨论】:

  • 如何检测 AC 是否为 1?

标签: assembly 8085 carryflag


【解决方案1】:

根据8085 manual here in page 118,应该设置操作。看起来 GNUSim8085 有一个错误。 GNUSim8085 有几个错误,其中一些在最新版本中已修复(包括带有 DAA 指令的错误),但看起来还有更多与辅助进位相关的错误。 Check here 获取我很久以前在 v1.3.7 中发现的错误列表

我建议在这里https://gsim85.soft112.com/ 使用gsim85,因为它似乎正确地实现了辅助进位操作。不过这可能有点难用。

另外,如果你不想要模拟器,但想要像 8085 训练套件这样的界面,请查看 Dirty8085,这是我大约 9 到 10 年前写的,最近修复了辅助进位更新。

【讨论】:

    猜你喜欢
    • 2013-10-18
    • 1970-01-01
    • 2018-12-03
    • 2012-10-04
    • 1970-01-01
    • 2020-09-15
    • 2016-07-29
    • 2019-09-08
    • 1970-01-01
    相关资源
    最近更新 更多