Cortex―M0單片機二-十進(jìn)制整數轉換的快速算法
4 算法中除法運算的匯編代碼實(shí)現
Cortex—M0系列單片機采用Thumb指令集,式(4)中各數據項中的分數項都可以利用該指令集中的右移指令來(lái)實(shí)現,并且采用多次累加的辦法來(lái)完成運算。下面給出具體的匯編語(yǔ)言源程序:


結語(yǔ)
Cortex—M0系列單片機的開(kāi)發(fā)一般采用集成開(kāi)發(fā)環(huán)境,為方便使用,可以將上面的子程序封裝成符合集成開(kāi)發(fā)環(huán)境調用規則的函數,封裝時(shí)最好包含有將單字節、雙字節、三字節和四字節數據轉化為BCD碼的多個(gè)函數。為測試該函數的性能,在IAR集成開(kāi)發(fā)環(huán)境下,將General options→Library Options選項卡中的Printf formatter設置成Tiny模式,以便盡量減小Sprintf函數的代碼長(cháng)度和運行時(shí)間。為敘述方便,這里假定封裝好的函數名為Hex2Bcd,表1給出其與系統函數sprintf的指令運行周期數(CCSTEP)的對比數據。本文引用地址:http://dyxdggzs.com/article/170446.htm
由表1可以看出,Hex2Bcd函數的平均運行時(shí)間不足sprintf函數的5%,速度優(yōu)勢極其明顯。另外Hex2Bcd函數的程序代碼僅有100字節左右,遠少于sprintf函數的1.5 KB,極大地節省了存儲空間。因此,本文中的快速算法具有很強的實(shí)用性,值得推廣應用。
51單片機相關(guān)文章:51單片機教程
單片機相關(guān)文章:單片機教程
單片機相關(guān)文章:單片機視頻教程
單片機相關(guān)文章:單片機工作原理
評論