具有乘法和钳位的8位无符号定点实现

问题描述 投票:0回答:1

我想使用8位字表示[0.0,1.0]范围内的数字(最好包括两个端点)。>

我希望能够有效地对其进行乘法运算,并且加法/减法应最佳地限制为[0,1],而不是溢出。

例如,如果0xFF表示1.0,0x00表示0.0,则乘法应产生例如结果

0x3F(0.247)= 0x7F(0.499)* 0x7F(0.499)

[我找到了https://courses.cs.washington.edu/courses/cse467/08au/labs/l5/fp.pdf,我认为论文将其命名为U(0,8)对应于我要寻找的内容,但我不理解例如将需要如何实现乘法。

是否有一个c ++库可以有效地实现这种数据类型,或者有人可以指出我所需的数学知识?

我不需要除法,只需要乘法,加法和减法

我想使用8位字表示[0.0,1.0]范围内的数字(最好包括两个端点)。我希望能够有效地将它们相乘,并且加法/减法应该...

fixed-point
1个回答
0
投票

您选择的定点格式U [0.8]不包含确切的端点值1。此格式的最大值实际上是0.99609375。如果这对您来说足够接近,我们可以讨论一下数学运算。

© www.soinside.com 2019 - 2024. All rights reserved.