该库的许多实现都深入到FPATAN对所有弧函数的指导。FPATAN如何实施?假设我们有1位符号,M位尾数和N位指数,那么获取该数字反正切的算法是什么?因为FPU会这样做,所以应该有这样的算法。
三角函数确实有非常丑陋的实现,这些实现很hacky,并且有些麻烦。我认为在这里很难找到能够解释实际使用算法的人。
这是一个atan2实现:https ://sourceware.org/git/ ? p = glibc.git;a = blob;f = sysdeps/ieee754/dbl-64/e_atan2.c;h = a287ca6656b210c77367eec3c46d72f18476d61d;hb = HEAD
编辑:实际上,我找到了一个:http : //www.netlib.org/fdlibm/e_atan2.c,它很容易理解,但可能因为它(?)而变慢。
FPU在某些电路中完成所有这些操作,因此CPU不必完成所有这些工作。