彙編debug除錯方法

2021-12-18 21:11:02 字數 1465 閱讀 4698

1樓:匿名使用者

從你**裡面來看,應該就是data_list資料後面的兩個位元組.

debug裡面看的時候,如果是已經彙編過的,調入debug後,就是ds段指向的段基址內,自0000h單元,向後偏移10個位元組開始的位置.用命令的話,應該是: - d ds:

000a 從這個位置開始的兩個位元組,就是result的值,注意是16進位制的.

如果不是已經彙編了的,可以用a命令輸入彙編部分的主要**,注意不是全部,然後以當時的ds內容為基礎,構造資料段,建立data_list,其後的兩個位元組也就是result,具體內容就看你怎麼處理了.

------------------------------------------

data_seg segment

data_list db 10,20,30,40,50,5 dup(?)

result db 2 dup(?)

data_seg ends

------------------------------------------

2樓:匿名使用者

mov [result],al

mov [result],ah

int 3 ;在這裡新增一句

mov ah,4ch

int 21h

編譯成exe檔案,如 test.exe

debug test.exe

g執行g命令後,程式會在int 3處停下

用d命令檢視,result地址是0ahd a

3樓:錕鵬展翅

在debug下先用-g=0000 002b執行,然後用-d 000a看相繼的兩個單元中的內容即為result,result+1的內容。

說明:data_list佔10個位元組,即資料段中偏移地址從0000h-0009h,result的地址為000ah-000bh。

4樓:_無言以愛

debug *.exe

多執行幾次 "t" 命令,然後"d 000a"就是result的值了

5樓:匿名使用者

既然是自己寫的原始檔,那麼就介紹一個我自己的解決辦法。保證除錯特別方便。

result db 2 dup(?)

前面加一行 db 'result:'

即:db 'result:'

result db 2 dup(?)

執行之後,輸入-d命令,看看資料區裡result:後面的兩個位元組,就是result的值了。

我以前寫彙編常常這樣除錯。

6樓:匿名使用者

c:\debug

-r result

-r result+1

輸入這幾個命令就可以看啦

7樓:

你可以顯示輸出或者在debug下看debug那段地址裡的內容啊~~~

debug是什麼意思啊,debug什麼意思

debug是計算機排除故障的意思,debug在windows系統中也是極其重要的除錯操作。debug是一個dos實用程式,主要是供程式設計師來進行除錯程式的工具,它可以檢查程式中存在的問題,可以精確到每一行 的正確性,在程式開發中有很大的作用。debug的特點 debug把所有資料都當成位元組處理,...

彙編延時程式,彙編延時程式

你先看下這段延時程式 採用12m晶振,用51晶片處理。delay mov r7,250 d1 mov r6,250 d2 djnz r6 d2 djnz r7,d1 ret以上是一段延時0.125秒的程式。它計算的原理是 這段程式最終執行了250 250次,而djnz指令執行需要2個機器週期,一個機...

windows xp中如何進入debug

開始 執行 cmd,然後在控制檯上敲入debug就能進入了 如果是正常的xp系統,按你的操作是肯定可以進debug的。出現你這種情況有兩種情況 一是你的xp系統是精簡版的,debug也被精簡掉了,或者是被誤刪除了。二是debug程式沒在預設的資料夾中 預設是 windows system32 如果是...