我有以下添加内容,并被要求写出CCR标志的值是什么。我的问题是,我不知道如何查明溢出是否已经发生。这是因为我不知道是将其视为2的补充还是未签名。有人可以告诉我,当我遇到其他问题时,我怎么能找到这个?
$FF + 1:
1 1 1 1 1 1 1 1
+ 0 0 0 0 0 0 0 1
-----------------
(1) 0 0 0 0 0 0 0 0
答案 0 :(得分:1)
CCR注册帐号既无签名又有签名。 Wikipedia sums it up nicely.
答案 1 :(得分:1)
Zenexer的补充: 在你的例子中,第9位进位(这就是名字的来源)。
如果最高位在符号视点中“意外地”改变,则V(溢出)被设置:即如果添加两个msb = 0的数字并且结果的msb变为1(就好像两个正数的总和)数字会给出负面结果)。那是(签名的)溢出。
答案 2 :(得分:1)
最好和第一个检查的地方是处理器手册,可在此处免费获取:http://www.freescale.com/files/archives/doc/ref_manual/M68000PRM.pdf
具体来说,查看第3-2节和表3-18(整数单位条件代码计算),其中列出了处理器用于更新CCR状态的布尔方程式。