我试图理解为什么我的计算给出了与本书不同的答案。
问题是A&的总和是多少? B如果它们代表无符号的12位八进制数?
A=3174 and B=0522
以下是解决问题的方法:
1. 3174 octal = 011001111100 (unsigned 12 bits)
0522 octal = 000101010010 (unsigned 12 bits)
sum = 011111001110 (unsigned 12 bits)
第二种方法我直接添加了两个八进制数,无需转换为二进制
3174 octal+0522 octal= 3716 octal (answer must be in octal).
但是我不知道这本书是如何结束让7620混淆//这是在MIPS编程中
答案 0 :(得分:3)
这是exercise 3.1.1 of Computer Organization and Design, Revised 4th Edition。
你的数学是正确的。 Check it with Wolfram Alpha.
3174 8 + 0522 8 = 3716 8
该书的解决方案指南说答案是7620.(这就是我通过第68页的模糊on scribd可以得出的结果。)
在该练习表中的四个数字中,没有一对总和为7620 8 或7620 10 ,无论您将表中的数字解释为八进制或十进制。解决方案指南要么是错误的,要么使用对问题的非常模糊的解释。
这是我用来验证的Mathematica代码:
inputs = {3174, 0522, 4165, 1654, 8^^3174, 8^^0522, 8^^4165, 8^^1654}
Table[{i + j, BaseForm[i + j, 8]}, {i, inputs}, {j, inputs}] // Flatten // Sort // TableForm