在Keill C的調(diào)試狀態(tài)下,如何觀察和修改各區(qū)數(shù)據(jù)?
在Keill C的調(diào)試狀態(tài)下,如何觀察和修改data區(qū)、idata區(qū)、xdata區(qū)的數(shù)據(jù)?如何觀察code區(qū)的數(shù)據(jù)?
答:在調(diào)試狀態(tài)下,點(diǎn)擊View菜單下的Memory Window命令或?qū)?yīng)的按鈕,就會顯示出或隱藏起存儲器窗口。存儲器窗口包含4個標(biāo)簽,即4個顯示區(qū),分別是Memory#1、…、Memory#4。
在4個顯示區(qū)上邊的“Address”欄輸入不同類型的地址,可以觀察不同的存儲區(qū)域。
1)設(shè)置觀察片內(nèi)RAM直接尋址的data區(qū),在Address欄輸入D:xx(xx為十六進(jìn)制的兩位數(shù),下同),便顯示從xx地址開始的數(shù)據(jù)。高128字節(jié)顯示的是特殊功能寄存器的內(nèi)容。
2)設(shè)置觀察片內(nèi)RAM間接尋址的idata區(qū),在Address欄輸入I:xx,便顯示從xx地址開始的數(shù)據(jù)。高128字節(jié)顯示的也是數(shù)據(jù)區(qū)的內(nèi)容,而不是特殊功能寄存器的內(nèi)容。
3)設(shè)置觀察片外RAM xdata區(qū),在Address欄輸入X:xxxx,便顯示從xxxx地址開始的數(shù)據(jù)。
4)設(shè)置觀察程序存儲器ROM code區(qū),在Address欄輸入C:xxxx,便顯示從xxxx地址開始的程序代碼。
在顯示區(qū)域中,默認(rèn)的顯示形式為十六進(jìn)制的字節(jié)。
除了程序存儲器中的數(shù)據(jù)不能修改之外,其它3個區(qū)域的數(shù)據(jù)均可修改。修改方法是,用鼠標(biāo)對準(zhǔn)欲修改的單元,點(diǎn)擊鼠標(biāo)右鍵,在彈出的菜單中對Modify Memory at 0x…命令點(diǎn)擊鼠標(biāo)左鍵,會彈出的文本輸入欄輸入數(shù)據(jù),然后用鼠標(biāo)左鍵點(diǎn)擊“OK”即可。