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