嵌入式軟件開(kāi)發(fā)基礎(chǔ)知識(shí)(2)移位操作
移位操作是嵌入式軟件開(kāi)發(fā)里面非常常見(jiàn)的方式。
數(shù)據(jù)類(lèi)型的轉(zhuǎn)換
????為了節(jié)省簡(jiǎn)化計(jì)算,很多浮點(diǎn)數(shù)都是用整數(shù)來(lái)表示和計(jì)算的(會(huì)有一定的精度損失)。所以需要使用特殊格式的數(shù)據(jù)。比如采用Q12格式存儲(chǔ)(低12位儲(chǔ)存小數(shù)部分,精度2的-12次方)。
乘除法運(yùn)算
????因?yàn)橐莆皇嵌M(jìn)制數(shù)的操作。所以移位可以看作是對(duì)2的次方做乘除。左移為乘法,右移為除法。移動(dòng)幾位就是對(duì)2的幾次方做乘除。這個(gè)在數(shù)據(jù)類(lèi)型轉(zhuǎn)換的時(shí)候非常實(shí)用。
讀寫(xiě)指定的bit位。(bit0-bit16)
? ? 可能會(huì)讀取輸入寄存器,或者修改輸出寄存器,或者更改GPIO的配置寄存器。這些肯能只是定義了一個(gè)宏。然后就直接對(duì)寄存器進(jìn)行操作。
bit位反轉(zhuǎn)
????不同工具生成的bin文件可能格式不同,需要對(duì)字節(jié)進(jìn)行逆序?qū)懭搿?/span>
為什么是這三個(gè),可以看下面這個(gè)解析。只要是完成這三步驟就可以。沒(méi)有嚴(yán)格順序要求。

標(biāo)簽: