求用汇编语言实现开方运算,在线等,立即给分
由于性能需要,需要在VC里实现一段代码,用汇编实现开方运算,怎么做啊?谢谢 问题点数:0、回复次数:6Top
1 楼csdsjkk()回复于 2005-06-02 10:08:30 得分 0
写浮点指令Top
2 楼mydo(侯佩|hopy|ks)回复于 2005-06-02 11:01:14 得分 0
~直接用汇编指令来写的话,就是一个好算法的问题了吧~
~或者如楼上的法子,直接用浮点指令 FSQRT 搞定~Top
3 楼GSE()回复于 2005-06-02 11:11:06 得分 0
各位大虾,有没有代码可以看啊,我对汇编一窍不通阿Top
4 楼showtime84(幻想VS失落)回复于 2005-06-04 22:01:56 得分 0
给你一个算法: 可以求一个数的近似开方平值!
1+3+5+7......2(n-1)=n的平方
所以只要用n的平方的值连续减去奇数1.3.5......2(n-1) 当减到第n+1次其差为负,则够减的次数n就是要开方的近似值! 我可能说的不是太明白,给你一段开方子程序给你参考!
mov bx,0
mov dx,1
mov ax,y ;y是要开方的数
again: sub ax,dx
jc exit ;如果不够减则结束
inc dx
inc dx
inc bx ;计数器bx
jmp again
最后求出的那个bx的值就是所要求的平方根
我不知道我说的这个求平方根的程序是不是你所需要的开方,如果不能的话,且做一笑,呵呵!Top
5 楼jiangsheng(蒋晟.Net[MVP])回复于 2005-06-04 23:39:23 得分 0
去看CRT的源代码。记得CRT里面有开方的。注意CRT的源代码不是VC默认的安装选项。
Top
6 楼showtime84(幻想VS失落)回复于 2005-06-05 07:55:37 得分 0
高手,那里有的看,给个地址,谢谢!Top




