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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 內(nèi)聯(lián)匯編的技巧

          內(nèi)聯(lián)匯編的技巧

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

            void CAlcmemDlg::OnButton4()

            {

            float f_t=.132;

            float f_s=0;

            __asm{

            fld f_s

            fld f_s

            fld f_s

            fld f_t

            fadd f_t

            fst f_t

            //    fadd fs

            }

            }

            可以利用設(shè)置斷點(diǎn)的方法來(lái)觀察FPU寄存器的情況,通常你用VC寫的代碼,不會(huì)被編譯為引用特殊指令集的代碼,雖然微軟號(hào)稱編譯器支持這些指令。所以你必須用方法來(lái)調(diào)用這些指令以優(yōu)化程序,充分利用資源。示例中的代碼調(diào)用了FPU處理器的指令,使操作浮點(diǎn)數(shù)的能力被充分發(fā)揮。但當(dāng)然你還可以調(diào)用3DNOW!指令,SSE,SSE2等指令,但筆者沒(méi)有試過(guò),如果你有什么新的發(fā)現(xiàn),還望賜教,再此先謝了!

            總的來(lái)說(shuō)提高了速度,尤其是游戲編程,更應(yīng)該努力使用,把CPU充分榨干,但壞處就是有些低端的機(jī)器無(wú)法運(yùn)行,兼容性差。同時(shí)微軟又號(hào)稱,編譯器不會(huì)去優(yōu)化你寫的匯編碼,他只是簡(jiǎn)單的翻譯為等價(jià)的機(jī)器碼,優(yōu)化的事情交給你自己來(lái)完成,所以你不但得是C++高手,同時(shí)還得是匯編高手。


          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞: 技巧 匯編 內(nèi)聯(lián)

          評(píng)論


          相關(guān)推薦

          技術(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); })();