新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > Cortex―M0單片機二-十進制整數轉換的快速算法

        Cortex―M0單片機二-十進制整數轉換的快速算法

        作者: 時間:2013-08-06 來源:網絡 收藏

        4 算法中除法運算的匯編代碼實現
        Cortex—M0系列采用Thumb指令集,式(4)中各數據項中的分數項都可以利用該指令集中的右移指令來實現,并且采用多次累加的辦法來完成運算。下面給出具體的匯編語言源程序:
        d.jpg
        b.JPG

        結語
        Cortex—M0系列的開發一般采用集成開發環境,為方便使用,可以將上面的子程序封裝成符合集成開發環境調用規則的函數,封裝時最好包含有將單字節、雙字節、三字節和四字節數據轉化為BCD碼的多個函數。為測試該函數的性能,在IAR集成開發環境下,將General options→Library Options選項卡中的Printf formatter設置成Tiny模式,以便盡量減小Sprintf函數的代碼長度和運行時間。為敘述方便,這里假定封裝好的函數名為Hex2Bcd,表1給出其與系統函數sprintf的指令運行周期數(CCSTEP)的對比數據。

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

        c.JPG


        由表1可以看出,Hex2Bcd函數的平均運行時間不足sprintf函數的5%,速度優勢極其明顯。另外Hex2Bcd函數的程序代碼僅有100字節左右,遠少于sprintf函數的1.5 KB,極大地節省了存儲空間。因此,本文中的具有很強的實用性,值得推廣應用。

        51單片機相關文章:51單片機教程


        單片機相關文章:單片機教程


        單片機相關文章:單片機視頻教程


        單片機相關文章:單片機工作原理



        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 德昌县| 易门县| 新巴尔虎左旗| 东莞市| 乌兰察布市| 宁海县| 会宁县| 公主岭市| 察雅县| 仁寿县| 墨江| 泌阳县| 万年县| 北辰区| 志丹县| 清新县| 忻州市| 思南县| 当雄县| 乐至县| 抚顺县| 茶陵县| 扎兰屯市| 台江县| 沙河市| 峡江县| 中江县| 鸡西市| 宣汉县| 资中县| 陇西县| 达孜县| 固阳县| 宁德市| 巢湖市| 秦皇岛市| 博白县| 长沙县| 北安市| 秦安县| 年辖:市辖区|