我正在阅读 Rodney Zaks 撰写的《Programming the 6502》,我想知道我是否在文本中遇到了错误。
我在第24页的示例页面上(说明实际示例中的进位和溢出)。
我是第五个。
它说:
1 1 1 1 1 1 1 0 (-2)
+ 1 1 1 1 1 0 1 0 (-4)
--------------------------
=(1) 1 1 1 1 1 0 1 0 (-6) V:0 C:1 (disregard)
(正确)
但是右边第二位的加法不应该是0——而不是1吗?
当我自己计算时,我得到 (1) 1 1 1 1 1 0 0 0,我相信是 (-8)
-4
实际上是0b11111100
。
添加的第二个操作数
1 1 1 1 1 0 1 0
是-6
而不是-4
。
所以,是的,将
-2
添加到 -6
就得到了 -8
,您已经正确计算了。