我正在开发一个计算器,它允许您执行超过小数点的八进制、十六进制、二进制,当然还有十进制的计算。虽然我很难找到一种方法将浮点十进制数字转换为浮点十六进制,八进制,二进制,反之亦然。
我们的计划是用十进制做所有的数学运算,然后将结果转换成适当的数字系统。任何帮助,想法或例子都将不胜感激。
谢谢!
发布于 2008-11-27 19:44:34
嗯..。这是我的大学计算机科学“淘汰”课程中的一个家庭作业。
二进制运算在Schaum的大纲系列: Seymour Lipschutz的基本计算机数学中进行了描述。由于某种原因,23年后它仍然在我的书架上。
作为提示,将八进制和十六进制转换为二进制,执行操作,再转换回二进制。
或者,您可以执行十进制运算,然后执行到八进制/十六进制/二进制的转换。对于所有位置数系统算术,该过程基本上是相同的。
发布于 2008-11-27 20:23:03
您使用的是什么编程语言?这绝对是一个好主意,把所有的东西都转换成二进制文件,对二进制文件做数学运算,然后转换回来。如果将(unsigneD)二进制数乘以2,ti等同于位左移(C中的<< 1),除以2等同于位狗屎右移(C中的>>)。加法和减法和你在小学里做的一样。
另外,请记住,如果您将一个浮点数转换为int,它将截断它的int(10.5) = 10;
发布于 2009-01-18 18:45:51
几天前我也遇到了同样的问题。我发现了http://www.binaryconvert.com,它允许您按所需的顺序在浮点十进制、二进制、八进制和十六进制之间进行转换。
https://stackoverflow.com/questions/324491
复制相似问题