1

我正在开发一个计算器,它允许您以八进制、十六进制、二进制,当然还有十进制执行小数点后的计算。尽管找到一种将浮点十进制数转换为浮点十六进制、八进制、二进制(反之亦然)的方法,但我遇到了麻烦。

计划是以十进制进行所有数学运算,然后将结果转换为适当的数字系统。任何帮助、想法或示例将不胜感激。

谢谢!

4

3 回答 3

2

嗯……这是我大学计算机科学“淘汰”课程中的家庭作业。

二进制操作在Schaum 的大纲系列: Seymour Lipschutz的基本计算机数学中进行了描述。由于某种原因,23 年后它仍然在我的书架上。

作为提示,将八进制和十六进制转换为二进制,执行操作,再转换回二进制。

或者您可以执行十进制运算并在之后执行八进制/十六进制/二进制的转换。对于所有位置数字系统算术,该过程基本相同。

于 2008-11-27T19:44:34.450 回答
1

您使用的是什么编程语言?将所有内容更改为二进制绝对是一个好主意,对二进制进行数学运算然后转换回来。如果将 (unsigneD) 二进制数乘以 2,则 ti 与左移(C 中的 << 1)相同,除以 2 与位屎右(C 中的 >>)相同。加减法和你在小学做的一样。

另外,请记住,如果您将浮点数转换为 int,它将截断它 int(10.5) = 10;

于 2008-11-27T20:23:02.533 回答
0

几天前我遇到了同样的问题。我找到了http://www.binaryconvert.com,它允许您以任何您想要的顺序在浮点十进制、二进制、八进制和十六进制之间进行转换。

于 2009-01-18T18:45:51.000 回答