找回密碼
         注冊會員
        搜索附件  
        MCU資訊論壇 附件中心 單片機論壇 51單片機論壇 KEIL_C51在線匯編舉例.rar

        KEIL_C51在線匯編舉例.rar

         

        給大家介紹一下用Keil C51實現C語言和匯編語言混合編程的方法,:
        大家都知道,在嵌入式開發中,C語言的可移植性強和可讀性好等優點,而匯編語言的高效、快速及可直接對硬件進行操作等優點又是C語言所難以達到的,
        KEIL C51支持C和匯編混合編程的方法,則將這兩者的優點完美的結合!
        如用此方法實現51單片機對320kbps mp3文件的播放就是一個很好的實例!

        所謂混合編程,就是在一個項目中,同時使用C和匯編兩種語言。 C語言和匯編語言混合編程的方法形式多樣,可以是以匯編語言為主體,在其中內嵌部分C語言;也可以是以C語言為主體在其中加入部分匯編語言(此方法實用價值較高,而被工程師們廣泛的采用)。在此方法中,用匯編語言編寫對有關硬件的驅動和處理、復雜的算法、實時性要求較高等底層的東西,來滿足單片機對某些硬件高效、快速、精確的處理等性能上的要求。用C語言來編寫程序的主體部分。這樣就將C語言的可移植性強和可讀性好與匯編語言的高效、快速及可直接對硬件進行操作等優點相結合。兩者優劣互補、相得益彰,加快我們產品的開發周期,具有極高的現實意義和實用價值!
        在KEIL C51中加入的匯編代碼需按照其編譯器中約定的規則才可以實現C語言程序對匯編代碼的調用。即KEIL C51的命名規則和參數傳遞規則。
        一. KEIL C51的命名規則
        在KEIL C51中,編譯器對C語言程序中的函數會自動的進行轉換,轉換規則如下表:
        函數屬性 函數舉例 段中的函數名
        無參數或無寄存器參數傳遞的函數 void func1(void) func1
        含通過寄存器傳遞的參數 void func2(int) _func2
        可重入函數 void func3(char)reentrant _?func3
        二. KEIL C51函數的參數傳遞規則
        (一)通過寄存器傳遞的函數參數表
        參數長度 第1個形參 第2個形參 第3個形參
        1字節(char) R7 R5 R3
        2字節(int) R6(H) R7 R4(H) R5 R2(H) R3
        3字節(通用指針) R1(H)~R3
        4字節(long) R4(H)~R7
        (二)函數返回值使用的寄存器列表
        返回類 使用的寄存器
        位數據(bit) 位累加器CY
        1字節(char) R7
        2字節(int) R6(H) R7
        3字節(通用指針) R3(類型)R2(H) R1
        4字節(long) R4(H)~R7
        4字節(float) R4(H)~R7,32位IEEE格式,指數和符號位在R7

        QQ|手機版|MCU資訊論壇 ( 京ICP備18035221號-2 )|網站地圖

        GMT+8, 2025-5-4 12:00 , Processed in 0.046912 second(s), 8 queries , Redis On.

        Powered by Discuz! X3.5

        © 2001-2025 Discuz! Team.

        返回頂部
        国产精品视频一区国模私拍| 午夜国产精品无套| 麻豆精品三级全部视频| 在线精品自拍无码| 久久久久人妻精品一区| 久久这里只有精品久久| 精品国产呦系列在线观看免费| 无码欧精品亚洲日韩一区夜夜嗨| 尤物yw午夜国产精品视频| 99国产精品无码| 国产麻豆精品入口在线观看 | 欧美精品人爱c欧美精品| 精品水蜜桃久久久久久久| 免费观看国产一区二区三区| 国产成人无码久久久精品一 | 国产一国产一级毛片片| 91在线视频精品| 九九线精品视频在线观看| 好大好湿好硬好爽好深免费视频| 91久久精品91久久性色| 久草热8精品视频在线观看| 无码日韩精品一区二区免费暖暖| 久久免费精品视频| 宅男在线国产精品无码| 国产精品视频免费| 最新在线精品国自av| 国产精品一区二区不卡| 四虎影视永久在线精品| 国产成人精品一区二区三区免费| 国产精品无码久久四虎| 亚洲AV永久精品爱情岛论坛| 91av国产精品| 亚洲国产精品高清久久久| 99久久精品无码一区二区毛片| 国产精品123区| 99精品人妻少妇一区二区| 国产精品宅男在线观看| 国产韩国精品一区二区三区| 午夜精品久久久久久久久| 国产精品爽爽ⅴa在线观看| 久久棈精品久久久久久噜噜|