<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > c51與匯編語言的接口

          c51與匯編語言的接口

          作者: 時間:2016-11-18 來源:網(wǎng)絡 收藏
          1.c51匯編語言的模塊內(nèi)接口

          本文引用地址:http://www.ex-cimer.com/article/201611/315733.htm

          有時候,需要使用匯編語言來編寫程序,比如對硬件進行操作或在一些對時鐘要求很嚴格的場合,但又不希望用匯編語言來編寫全部程序或調(diào)用匯編語言編寫的函數(shù),那么可以通

          過預編譯指令“asm,在C代碼中插入?yún)R編代碼。

          方法是用#pragma語句。具體結(jié)構(gòu)是:

          #pragma asm

          匯編行

          #pragma endasm

          這種方法是通過#pragma asm和#pragma endasm告訴c51編譯器,中間行不用編譯為匯編行。例如:

          2.c51與匯編語言的模塊間接口

          C51模塊與匯編語言模塊的接口較簡單,分別用C5l與A51對源文件進行編譯,然后用L51連接obj文件即可。模塊接口間的關(guān)鍵問題在于C函數(shù)與匯編函數(shù)之間的參數(shù)傳遞。C51中有兩種參數(shù)傳遞方法。

          ①通過寄存器傳遞函數(shù)參數(shù)

          匯編函數(shù)要得到參數(shù)值時就訪問這些寄存器,如果這些值正被使用并保存在其他地方或己經(jīng)不再需要了,那么這些寄存器可被用作其他用途。應該注意到通過內(nèi)部RAM傳遞參數(shù)的函數(shù)將使用規(guī)定的寄存器,匯編函數(shù)將使用這些寄存器接收參數(shù)。對于要傳遞多于3個參數(shù)的函數(shù),剩余的參數(shù)將在默認的存儲器段中傳遞。

          ②通過固定存儲區(qū)傳遞(Fixed Memory)

          (3)SRC控制

          該控制指令將C文件編譯生成匯編文件(.SRC),該匯編語言文件在改名后,生成匯編.ASM文件,再用A5l進行編譯。



          關(guān)鍵詞: c51匯編語言接

          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();