電腦XP系統(tǒng)怎么使用debug查看內(nèi)存和匯編指令
在winXP系統(tǒng)下,我們查看內(nèi)存的時候直接可以通過一個debug的命令來查看,下面是學(xué)習(xí)啦小編為大家介紹電腦XP系統(tǒng)使用debug查看內(nèi)存和匯編指令的方法,歡迎大家閱讀。
電腦XP系統(tǒng)使用debug查看內(nèi)存和匯編指令的方法
簡單介紹下debug查看內(nèi)存中的機器碼,已經(jīng)查看匯編指令的方法。
-r 參數(shù)用來查看CPU中寄存器的值,以及改變寄存器的值。
至于那些神馬AX,BX,CX,DX的都不用說了,CS跟IP更不用說了,指向了要執(zhí)行的下一條指令。
可以用-r cs或者-r ip來改變它們的值。如圖:
這樣我們就可以讓CS:IP指向我們希望的指向內(nèi)存地址,從而可能執(zhí)行我們預(yù)先在該地址存放好的代碼。
-D命令:用來查看內(nèi)存中的值。比如:
如圖:最左邊的是內(nèi)存的地址,用基地址:偏移量的方式給出,中間存放的是內(nèi)存中的機器碼,一行剛好15個字節(jié),而最右邊則是對這些數(shù)據(jù)敵對應(yīng)的可顯示的ASCII字符,對于沒有的,則用.代替。所以如果想看一下,右邊輸出hello之類的 東西,則可以向指令里面寫如這些字符的ASCII碼。
-E命令:改寫內(nèi)存中的內(nèi)容。上面已經(jīng)說到了,下面我們來試試,用E改變CS:IP里面存放的指令。
如圖:使用' ‘的格式就可以向里面輸入字符了,右邊出現(xiàn)了字符hello,所以我們可以認為中間的數(shù)據(jù)就是對應(yīng)字符的ASCII碼,我們之所以看到h是68,那是因為這是十六進制的數(shù)據(jù),h真正的ASCII碼應(yīng)該是6*16+8=104,所以是吻合的。比如我們像內(nèi)存里面寫入:61(也就是6*16=97)
而0到9幾個數(shù)字ASCII碼的十六機制剛好是3x,也就是48+x.這點必須的搞清楚。
好,搞了這么長時間的E命令,我們在看看U命令,它用來查看機器碼對應(yīng)的匯編代碼。比如:
可以看到十六進制的61對應(yīng)的匯編還是61?所以我們可以用-e寫入機器碼,然后用-u來查看匯編指令。
-A:以匯編的形式向內(nèi)存寫入指令。比如:
還有一個命令就是-t,也就是執(zhí)行,不多說了。
電腦XP系統(tǒng)怎么使用debug查看內(nèi)存和匯編指令相關(guān)文章: