作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我刚开始学习 6502,因为我想创建一个 Atari 2600 游戏。
我试过这段代码:
LDA #$01
STA $01
LDX #$02
TXA
SBC $01
BRK
我得到值 A=$00,并将标志 Z 和 C 设置为 1。但我认为 A 中的值必须是 $01。
如果我更改值是因为我可能做错了减法:
LDA #$02
STA $01
LDX #$01
TXA
SBC $01
BRK
我得到值 A=$fe,并将标志 N 设置为 1。
发生了什么事?
最佳答案
SBC 是带进位的减法。如果在 SBC 指令之前 C 为 0,它会比您预期的多减 1。
将 SEC 置于 SBC 之前。
关于assembly - 我不明白 SBC 是怎么回事,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48971814/
我是一名优秀的程序员,十分优秀!