Keil C51中對雙數據指針的支持情況及代碼生成


可以看到,匯編代碼基本上是最簡(jiǎn)化的使用雙數據指針的匯編程序。
由上面的代碼可知,在優(yōu)化級別7(Extended Index Ac-cess Optimizing)的作用下,DPTR被調用了。通過(guò)類(lèi)型轉換和SFR指令的配合,雙數據指針指令被生成。這足一個(gè)經(jīng)驗方法,基本上這是一個(gè)框架,可以在看到雙DPTR調用被生成后加入其他語(yǔ)句,在塊操作的同時(shí)處理數據。
3 調試環(huán)境的設定
在Keil uVision2環(huán)境下,軟件仿真Philips或AtmelWM系列器件中有雙DPTR的型號時(shí),仿真器中會(huì )有AUXR1、DPTR0、DPTR1這3個(gè)寄存器。如果不使能雙DPTR特性,仿真時(shí)DPTR的值是混亂的。對于宏晶科技STC89系列器件的雙DPTR特性,打開(kāi)軟件仿真設定的具體步驟是:在File/Device Database菜單中選擇STC的某一具體型號,在Options框中CPU=一項后加上MODP2,然后單擊Update更新器件庫。打開(kāi)雙數據指針調試后,再啟動(dòng)Debug,就會(huì )有AUXR1、DPTR[0]、DPTR[1]這3個(gè)寄存器。當加載上述程序時(shí),會(huì )清楚地看到雙數據指針的操作和AUXR1的變化。本文引用地址:http://dyxdggzs.com/article/173075.htm
評論