1. 程式人生 > >彙編實驗3

彙編實驗3

練習1

第1步,編寫彙編源程式t1.asm, 源程式程式碼如圖所示。

第2步——(1)執行結果:輸出數字36

(2)將line4和line9的暫存器dl值改為6和8:結果輸出數字68

推測:本段程式碼含義為輸出line4和line9的暫存器dl中的數字


(3)debug除錯該檔案

① 使用 r 命令檢視。觀察暫存器 cx 的值是 多少;觀察暫存器 ds 和 cs 的值是多 少,它們之間是否滿足關係(cs)=(ds)+10H? 結果如下圖

② PSP(程式段字首)的頭兩個位元組是CD 20, 用debug檢視PSP的內容是否如此

③使用 u 命令對 t1.exe 進行反彙編

④ 使用 t 命令和 p 命令(遇到 int 命令時,用 p 命令)單步除錯

練習2

(1)編寫如下程式

結果為:左上角輸出紅色的數字36

(2)試將原始碼中line7的0433h→0432h, line10 的 0436h→0439h

結果為:左上角輸出紅色的數字29

(3)將原始碼中line7的0433h→0333h, line10 的 0436h→0336h,

結果為:左上角輸出藍色的數字36

推測:line7和line10分別控制著輸出數字的第一位和第二位,諸如0439h,其中04兩位控制輸出顏色,39兩位控制輸出的數字