<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設計應用 > S3C825A型單片機結構及軟件設計

S3C825A型單片機結構及軟件設計

作者: 時(shí)間:2012-03-29 來(lái)源:網(wǎng)絡(luò ) 收藏

  函數返回值可根據其類(lèi)型放在R15或R15:R14寄存器對中。若返回值是struct或union類(lèi)型,則返回R15中的值是存放返回結果的堆棧指針起始位置。

  C語(yǔ)言編譯器也是編譯中斷函數時(shí)會(huì )自動(dòng)保護所用到的寄存器(包括R10-R15),狀態(tài)寄存器FLAGS的保護也是在中斷處理過(guò)程中自動(dòng)完成的。中斷過(guò)程中用到的寄存器都使用PUSH Rn的指令進(jìn)行保護,而采用POP Rn指令恢復。當用IRET指令自動(dòng)恢復狀態(tài)寄存器FLAGS時(shí),可以從中斷中返回。

  3.2 對匯編語(yǔ)言函數的約定

  對于一個(gè)可以被C語(yǔ)言函數調用的匯編程序來(lái)說(shuō),使用時(shí)必須滿(mǎn)足以下3點(diǎn):

  1)符合C語(yǔ)言參數傳遞規則;

  2)有PUBLIC函數入口標志;

  3)在C語(yǔ)言函數中用extern聲音為外部函數。

  參加傳遞規則和C語(yǔ)言函數一樣,所不同的是,要在匯編語(yǔ)言函數編寫(xiě)過(guò)程中具體體現出來(lái)。

  4 應用實(shí)例

  明確了以上調用規則,混合編程就比較容易了,歸納起來(lái)有以下幾點(diǎn):

  1)在C語(yǔ)言源文件中用“extern”關(guān)鍵字導入被匯編語(yǔ)言源文件導出的標號;

  2)在匯編語(yǔ)言源文件用“PUBLIC”關(guān)鍵字把標號導出到C語(yǔ)言源文件;

  3)在匯編語(yǔ)言中用“EXTERN”關(guān)鍵字導入被C語(yǔ)言函數源文件導出的關(guān)鍵字;

  4)用C語(yǔ)言把標號導出給匯編語(yǔ)言,這一步不需要關(guān)鍵字;

  5)把編輯好的C語(yǔ)言和匯編語(yǔ)言源文件導入設計系統,并用各自調用函數的指令調用。

  下面以筆者在校音器設計中用到的2個(gè)例子來(lái)具體說(shuō)明。

  4.1 C語(yǔ)言和匯編語(yǔ)言相互調用

  在該例中,用C語(yǔ)言函數main()調用匯編語(yǔ)言函數get_rand()以得到一個(gè)隨機數,接著(zhù),用匯編語(yǔ)言函數get_rand()調用C語(yǔ)言庫函數rand()再得到一個(gè)整型機隨機數,然后用調用C語(yǔ)言函數mult()的方法把這個(gè)隨機值的高位乘以main()函數傳遞給自己的實(shí)參,同時(shí)把乘積值返回給main()參數。

  



關(guān)鍵詞: S3C825A 單片機 結構

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>