彙編實驗二

2022-05-24 06:06:12 字數 1135 閱讀 6813

(1)使用e命令修改0021:0~0021:f資料,及修改後檢視是否正確寫入的操作:

可以看出是正確的。

(2)使用a命令輸入指令:

(3)執行命令:

將結果填在書上:

2.(1)使用a命令輸入指令,使用e命令修改2000:0~2000:f的值,及修改後檢視的部分:

(2)單步除錯每一行彙編指令:

第一行:給ax賦值;

第三行:給棧分配空間為2000:0h~2000:000fh,設定棧頂為2000:0010h,棧底也為2000:0010h,為空棧。

變化原因:我認為是在除錯過程中將一些資料儲存在了棧空間裡。

在實驗二中我學到了如何用debug除錯修改記憶體單元的位址,也學到了如何初始化乙個棧並給它分配空間,對入棧、出棧的操作也更加熟悉了。

同時我也注意到乙個問題:在用t命令執行時,並沒有出現mov sp,10這步指令,說明它是在執行其它指令時伴隨完成的,但具體是伴隨在前一條還是後一條,我不能確定。

彙編實驗(二)

test 和 and 區別在於不改變op1 shr 如果要多移幾次 mov cl,4 shr dl,cl 判斷陣列裡正負數 並分開存放 assume cs code,ds data data segment m db 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17...

彙編實驗二

1 從buf單元開始存有一字串 長度 255 程式設計實現統計該字串中的ascii在42h 45h之間的字元個數,並將統計結果以二進位制形式顯示在螢幕。486 data segment use16 buf db abcd count equ buf data ends code segment us...

彙編實驗二

實驗結論 1 在使用 a 命令輸入指令除錯前,使用 e 命令將記憶體單元0021 0 0021 7連續 8個位元組資料修改為30h,31h,32h,33h,34h,35h,36h,37h 輸入指令 一條一條執行 書上的填空內容為ax 3130 ax 6465 bx 3534 bx 6c6a sp 0...