我现在正在研究计算平方根的特定算法,它返回平方根的整数部分和余数。
例如:mysqrt(140) = 11*11 + 19 = integer 11, remainder 19
问题是我可以将平方根计算为浮点数,例如 140 的平方根是 ~ 11.8321 ....?
从评论编辑
我正在研究一个定点平方根的 VHDL 实现,它只使用像左/右移位、加法和减法这样的二进制操作。
...算法就足够了。
编辑 2我实际上在这里阅读这个算法:http: //pioneer.netserv.chula.ac.th/~achatcha/Publications/0012.pdf
似乎可以通过将radicand左移2n来获得更好的精度。我不太确定为什么这有效?谁能解释一下