汇编语言基础 debug的使用
-r 查看,改變CPU寄存器的內(nèi)容
-r 加上寄存器名 在:后輸入要寫入的數(shù)據(jù)后 完成更改
debug 隨著CS IP的改變 對應(yīng)的匯編指令也不同
-r ip -r cs修改 ip cs 的值
d 段地址:偏移地址 顯示從此初始地址的后128個字節(jié)的地址單元內(nèi)容
d 段地址:偏移地址 偏移地址 顯示自定義一段內(nèi)存內(nèi)容
e 起始地址 數(shù)據(jù) 數(shù)據(jù) 數(shù)據(jù) ......
也可采用提問的方式一個一個修改內(nèi)存中內(nèi)容 e 1000:0010? 之后一個一個改變 空格代表換個內(nèi)存單元
可以用e命令向內(nèi)存中寫入字符 如從1000:0開始寫入 -e 1000:0 1 'a' 2 'b' 3 'c' 等于1000:0-1000:5寫入的是 1 a 2 b 3 c
用e命令向內(nèi)存中寫入機(jī)器碼,用u命令查看內(nèi)存中機(jī)器碼的含義,用t命令執(zhí)行內(nèi)存中的機(jī)器碼
比如我們要從內(nèi)存1000:0單元寫入機(jī)器碼 b80100 對應(yīng)匯編mov ax,0001 可以是 -e 1000:0 b8 01 00
u 1000:0 將從1000:0開始的內(nèi)存單元中內(nèi)容翻譯為匯編
用t命令執(zhí)行所寫的匯編 首先改變cs ip讓其對應(yīng)寫入的匯編地址
用a命令以匯編指令形式在內(nèi)存中寫入機(jī)器命令
ROM中寫有一個生產(chǎn)日期 FFF00H-FFFFFH中
一般默認(rèn)段地址在ds中
可以 d 段寄存器:偏移地址??
-r ds :1000? -d ds:0 查看從1000:0開始的內(nèi)存區(qū)間的內(nèi)容
-d cs:0 查看當(dāng)前代碼段中的指令代碼
-d ss:0 查看當(dāng)前棧段中的內(nèi)容
e a u命令中也可以帶有內(nèi)存單元地址的命令
e ds:0 ....... 從ds:0開始的內(nèi)存空間寫入數(shù)據(jù)
u cs:0 以匯編形式顯示當(dāng)前代碼段中的代碼
a ds:0 以匯編指令的形式,向從1000:0開始的內(nèi)存單元中寫入指令
t命令在執(zhí)行修改寄存器ss的指令時,下一條指令也緊跟著執(zhí)行 不用再按t?如 mov ss,bx
轉(zhuǎn)載于:https://www.cnblogs.com/changed/p/4396789.html
總結(jié)
以上是生活随笔為你收集整理的汇编语言基础 debug的使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: curl与wget区别
- 下一篇: shell__常用命令__awk