新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 牛人業(yè)話 > DSP編程技巧之10-揭開編譯器神秘面紗之匯編器選項(xiàng)

        DSP編程技巧之10-揭開編譯器神秘面紗之匯編器選項(xiàng)

        作者:paradoxfx 時(shí)間:2014-05-05 來源:電子產(chǎn)品世界 收藏

          在的編程中,雖然C編譯器的效率很高,使得我們可以使用C/C++完成大部分的編程工作,例如對(duì)運(yùn)算的實(shí)時(shí)性要求不是特別高的算法工作,比如PWM產(chǎn)生、電機(jī)的控制等等;但是一些對(duì)實(shí)時(shí)性要求非常高的算法,例如FFT、IFFT、除法/正余弦/反正切(編譯器調(diào)用多條語句實(shí)現(xiàn)對(duì)ROM中數(shù)學(xué)表的調(diào)用,例如除法用到了十幾條跳轉(zhuǎn)、賦值指令)等,仍然需要使用匯編語言才能實(shí)現(xiàn)最優(yōu)的運(yùn)行效率;對(duì)于一些特殊操作,例如某些bootloader、某些特殊寄存器的讀取/賦值,特別是一些CPU寄存器的賦值,也需要使用匯編語言才能完成;例如在編程中我們對(duì)一些EALLOW保護(hù)的寄存器進(jìn)行寫操作時(shí),也需要使用相關(guān)的EALLOW和EDIS來解除保護(hù)、完成賦值然后恢復(fù)保護(hù),雖然在C編程時(shí)我們直接書寫的是EALLOW和EDIS兩條語句,但是追根溯源,它們的本體是在頭文件中定義了的asm("EALLOW")和asm("EDIS")兩條內(nèi)嵌匯編語句。此外,我們用C寫的語句在從編譯到生成二進(jìn)制輸出文件的整個(gè)過程中,必不可少地要經(jīng)過從C到匯編的轉(zhuǎn)換過程,所以了解的選項(xiàng)對(duì)我們理解程序的編譯與運(yùn)行過程也是非常重要的。下面就看一下的相關(guān)選項(xiàng)。

        本文引用地址:http://www.104case.com/article/246362.htm

          如果想更好地理解匯編相關(guān)的選項(xiàng)并更高效地使用匯編語言編程的話,可以再去參考一下匯編工具指南《TMS320C28x Assembly Language Tools User's Guide》和匯編指令指南《TMS320C28x CPU and Instruction Set Reference Guide》;當(dāng)然痛苦的是這些資料都沒有漢語的啊。

        linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

        pwm相關(guān)文章:pwm是什么


        c++相關(guān)文章:c++教程




        關(guān)鍵詞: DSP 嵌入式 匯編器

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 岳普湖县| 兴文县| 潍坊市| 玉溪市| 睢宁县| 墨江| 平泉县| 锡林郭勒盟| 岑巩县| 武邑县| 台中市| 灵台县| 西昌市| 江阴市| 辉南县| 合阳县| 龙游县| 体育| 商水县| 五家渠市| 会同县| 手游| 宁德市| 株洲县| 临洮县| 永吉县| 佛山市| 台南县| 和林格尔县| 宣汉县| 巍山| 沙河市| 望奎县| 龙泉市| 瑞昌市| 新郑市| 张家港市| 丰镇市| 台北县| 犍为县| 雷州市|