彙編程序 - TD調試

爲了寫這個Blog,無奈的我深夜打開虛擬機,但願也能幫助一些人,由於好像真的有人不會欸!(→_→)編程

 

寫在前面的話:調試

1. TD面板下的調試十分重要。能夠觀察內存(GOTO DS:XXXX)存放的位置與數值,是否正確。blog

2. 經過寄存器面板查看取出的值是否正確,單步調試(F8)查看程序的運行流程是否和想法相同。內存

3. 經過步入(F7)查看調用子程序內部是否按照正常邏輯執行。cmd

4. 經過標誌位寄存器查看進位借位標誌和程序跳轉的狀態等。虛擬機

5. 我沒講明白的,請你search一下吧,若是你願意分享,不妨留言啦! (●'◡'●)asm

 

個人TD是老師給的,大家,額,我相信大家能找到,找不到再說吧 ^3^編譯

 

說明一下,寄存器裏面表示數據的時候,尤爲是內存中,可能和你思路不同,本身調試一下就知道了,多說無益。程序

 

重點來了!!!im

1. 將你調試的代碼放在TD路徑下

  TASM   -V  XXX.asm  (這個叫彙編,其實和編譯差很少)

  TLINK   -Z  XXX.obj   (這個叫連接)

  TD    XXX.exe   (這個就是打開調試的面板啦!!!)

其實你能夠發現後綴均可以不加,參數也能夠不加(TASM  XXX / TLINK  XXX)

2. win + R --> cmd ,而後cd 啥的進入TD的目錄(建議全部目錄英文,畢竟是人家外國佬的東西)

3. 就調試mul.asm 這個程序吧!(彙編程序 - 1 (32位無符號乘法))

  3.1 彙編,連接

    

  3.2 td mul

    

  3.3 F5,窗口填充(就是大點,上面灰色圖層填滿了而已)

    F8 單步調試

    F7 步入調試(在CALL指令調用子程序使用)

  3.4 只有最後一個須要講的了,查看內存區的數據,通常咱們使用DS寄存器存放數據的內存地址,可是你會發現TD會跑到ES去了,不要緊。

    

    在代碼區右鍵,goto...,DS:XXXX (由上圖可知,咱們內存地址開始是0069,因此咱們須要查看那的數據變化)

    

    這時內存區域已經變化了。

    

    TIPS:能夠對照着源代碼來查看運行狀況,畢竟TD中是彙編事後的代碼。

    

    我輸入第一個數據是99999999,第二個數據是12345678,本身觀察。

    

    結果是,倒着存放的,也本身觀察。

    

  

我以爲我寫完了,也足夠用了。end..... []~( ̄▽ ̄)~*

相關文章
相關標籤/搜索