新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 在8位單片機(jī)中的浮點(diǎn)數(shù)運(yùn)算開(kāi)方,乘法,除法,反正切

        在8位單片機(jī)中的浮點(diǎn)數(shù)運(yùn)算開(kāi)方,乘法,除法,反正切

        作者: 時(shí)間:2016-11-20 來(lái)源:網(wǎng)絡(luò) 收藏
        所用單片機(jī):EM78系列,所用仿真器ICE468。

        int 1byte , long 4byte

        本文引用地址:http://www.104case.com/article/201611/318613.htm

        Bit data type cannot be used as a return value.

        Double and float are NOT supported by the EM78 Series C Compiler.

        開(kāi)平方根

        1. unsignedlongsqrt_16(unsignedlongM)
        2. {
        3. unsignedlongN;
        4. inti;
        5. unsignedlongtmp,ttp;//結(jié)果、循環(huán)計(jì)數(shù)
        6. if(M==0)//被開(kāi)方數(shù),開(kāi)方結(jié)果也為0
        7. return0;
        8. N=0;
        9. tmp=(M>>30);//獲取最高位:B[m-1]
        10. M<<=2;
        11. if(tmp>1)//最高位為1
        12. {
        13. N++;//結(jié)果當(dāng)前位為1,否則為默認(rèn)的0
        14. tmp-=N;
        15. }
        16. for(i=15;i>0;i--)//求剩余的15位
        17. {
        18. N<<=1;//左移一位
        19. tmp<<=2;
        20. tmp+=(M>>30);//假設(shè)
        21. ttp=N;
        22. ttp=(ttp<<1)+1;
        23. M<<=2;
        24. if(tmp>=ttp)//假設(shè)成立
        25. {
        26. tmp-=ttp;
        27. N++;
        28. }
        29. }
        30. returnN;
        31. }



        評(píng)論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 苍山县| 依兰县| 福州市| 日土县| 平武县| 新巴尔虎右旗| 巴东县| 杭锦旗| 汝阳县| 五峰| 井冈山市| 麟游县| 洞头县| 布拖县| 孟连| 屯留县| 兴和县| 泗洪县| 五大连池市| 无极县| 天气| 庆阳市| 托克逊县| 阿勒泰市| 耿马| 丹巴县| 高安市| 忻州市| 高陵县| 安吉县| 大理市| 龙南县| 斗六市| 长丰县| 武宣县| 吐鲁番市| 静乐县| 望奎县| 岑溪市| 泾阳县| 边坝县|