freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

微機原理軟件實驗報告-展示頁

2025-03-16 13:21本頁面
  

【正文】 INT 21H MOV DX, OFFSET CR MOV AH, 09H INT 21H MOV DX, OFFSET BUF4 MOV AH, 09H INT 21H MOV DL, COUNT4 ADD DL,30H MOV AH, 02H 微機原理軟件實驗正偶數(shù) JMP EXIT 微機原理軟件實驗如果余數(shù)不為 0,則為正奇數(shù) ZER: INC COUNT5 。為 0 跳轉(zhuǎn) IDIV BL OR AH,0 JZ PO 。負(fù)偶數(shù) JMP EXIT MJ: INC COUNT3 。如果余數(shù)為 0,則為負(fù)偶數(shù) JNZ MJ 。 DB 100 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK BEGIN: MOV AX,DATA MOV DS,AX MOV CX,COUNT MOV SI,OFFSET BUFF AGAIN: MOV AL,[SI] MOV AH,0 MOV BL,2 CMP AL,00H JGE PLU 。 DATA ENDS STACK SEGMENT STACK 39。 CR DB 0DH,0AH,39。 BUF5 DB 39。 BUF4 DB 39。 BUF3 DB 39。 BUF2 DB 39。0 的個數(shù) BUF1 DB 39。負(fù)偶數(shù) 微機原理軟件實驗正偶數(shù) COUNT3 DB 0 。報告 第 7 頁 四、實驗流程圖 開 始定 義 數(shù) 據(jù) 段 , 存 儲 待 判 斷 數(shù) 字 以 及 存 放正 奇 數(shù) , 正 偶 數(shù) , 負(fù) 奇 數(shù) , 負(fù) 偶 數(shù) , 零的 個 數(shù)初 始 化 數(shù) 據(jù) 段D S , S I 指 向 待 比較 的 數(shù) 字當(dāng) 前 數(shù) 據(jù) 大于 等 于 0等 于 0零 的 個 數(shù) 加一是是 否正 奇 數(shù) 個 數(shù)加 1調(diào) 用 I D I V 指 令 除 以 2正 偶 數(shù) 個 數(shù)加 1調(diào) 用 I D I V 指 令 除 以 2否負(fù) 奇 數(shù) 個 數(shù)加 1負(fù) 偶 數(shù) 個 數(shù)加 1余 數(shù) 非 0余 數(shù) 為 0是 否 比 較 完全 部 數(shù) 據(jù)余 數(shù) 為 0余 數(shù) 非 0否輸 出 統(tǒng) 計 結(jié) 果是結(jié) 束 五、實驗源代碼 DATA SEGMENT BUFF DB 1,4,0,1,2,3,4,1,2,3,4,5,8,10 COUNT EQU $BUFF COUNT1 DB 0 。其余方法大同小異,核心的思想是要么直接和 0 相比,要么使用邏輯或移位運算,取出符號為進(jìn)行 判斷。 2. 如何檢驗一個數(shù)為正,為負(fù)或為零? 你能舉出多少種不同的方法? 答:方法有多種,現(xiàn)舉出兩種。 三、預(yù)習(xí)思考 1. 十進(jìn)制數(shù) 0 ~ 9 所對應(yīng)的 ASCII 碼是什么? 如何將十進(jìn)制數(shù) 0 ~ 9 在屏幕上顯示出來? 答: 0~ 9 分別對應(yīng) ASCII 碼的 30H~ 39H。 。每類數(shù)的個數(shù)都不超過 9。報告 第 6 頁 實驗二 分支、循環(huán)程序設(shè)計 一、實驗?zāi)康? ; ,循環(huán)程序設(shè)計; DOS 功能調(diào)用。 可以結(jié)合 r 指令、 t 指令、已經(jīng)用 g 指令設(shè)置斷點來診斷問題。實驗中 應(yīng)注意以下幾點: 在 debug 過程中,任何存儲器單元都無法用標(biāo)號來識別,要使用它們,只能使用物理地址調(diào)用。實驗之前我還覺得匯編語言過于抽象,難以看懂。 END STAR的作用是指示編譯器程序結(jié)束,同時告訴編譯器程序執(zhí)行時代碼段的入口地址。 微機原理軟件實驗 通過 U 命令查看反匯編結(jié)果,在 CALL SUB1 即 CALL 003F 處設(shè)置一個斷點,單步調(diào)試。 微機原理軟件實驗 DATA 段 基地址為 0B88H。得出 A 的地址為: 0B88: 0000,值為 1BH,即十進(jìn)制的 27D; B 的地址為: 0B88: 0001,值為 33,即十進(jìn)制的 51D。報告 第 3 頁 四、實驗過程 如上圖,通過 masm 和 link 命令程序編譯連接成功。 并判斷結(jié)果是否正確 . (4)在子程序 SUB1 的入口處設(shè)一斷點 ,用 G 命令執(zhí)行程序 . 在斷點處觀察 堆 棧的內(nèi)容 ,比較堆棧的內(nèi)容和程序返回地址是否一致 . (5)用 E 命令修改單元 A,B 的內(nèi)容 ,重新執(zhí)行程序 ,并記錄結(jié)果 . (6)用 M 命令和 A 命令對程序進(jìn)行修改 : 將主程序中最后兩條指令 (ADD 和 ADC) 修改為一條 CALL SUB1 指令 ,重新執(zhí)行程序 . (7)退出 DEBUG. ,把源程序最后一句中的 STAR 去掉 .再次生成可執(zhí)行文件 , 并用 DEBUG 調(diào)入內(nèi)存 .當(dāng)使用 U 命令時 ,顯示的結(jié)果與前一次 (未加 STAR) 的結(jié)果有何不同 ? 三、 預(yù)習(xí)題 : DEBUG 命令 . . SS=2021H,SP=FFFFH, 向堆棧中壓入 4 字節(jié)數(shù)據(jù)后 ,如何用 D 命令顯示壓入堆棧的內(nèi)容 ? 答: 使用 debug 指令“ d 2021:0000”即可顯示壓入堆棧的內(nèi)容,這是因為 SP+1 會溢出,變成 0000。(自定 ) Y DB 3 DUP(0) Z DB 0,0 DAT ENDS STA SEGMENT STACK DW 50 DUP(?) STA ENDS COD SEGMENT ASSUME CS:COD,DS:DAT STAR PROC FAR PUSH DS XOR AX,AX PUSH AX MOV AX,DAT MOV DS,AX MOV AX,STA MOV SS,AX MOV AL,A MOV Z,AL MOV Z+1,AL CALL SUB1 MOV AL,B MOV Z,AL MOV Z+1,AL CALL SUB1 MOV AL,A MOV Z,AL MOV AL,B MOV Z+1,AL CALL SUB1 ADD WORD PTR Y,AX ADC BYTE PTR[Y+2],0 微機原理軟件實驗 DEBUG 調(diào)試程序的方法 . 二 、 實驗內(nèi)容 : ,輸入以下匯編語言源程序 : DAT SEGMENT A DB 20 。 信息與通信工程學(xué)院 微機原理軟件實驗報告 班 級 : 姓 名 : 班內(nèi)序號: 學(xué) 號 : 日 期 : 2021 年 11 月 微機原理軟件實驗報告 第 1 頁 實驗一 DEBUG 的使用 一 、 實驗?zāi)康?: ,編譯 ,連接和執(zhí)行的全過程 。(自定 ) B DB 15 。報告 第 2 頁 RET STAR ENDP SUB1 PROC MOV AL,Z MOV AH,Z+1 MUL AH ADD WORD PTR Y,AX ADC BYTE PTR[Y+2],0 RET SUB1 ENDP COD ENDS END STAR ,連接形成可執(zhí)行文件 . DEBUG 將可執(zhí)行文件調(diào)入 ,并進(jìn)行調(diào)試 . (1)用 D 命令觀察數(shù)據(jù)區(qū)在內(nèi)存中的具體內(nèi)容 ,記錄單元 A 和 B 的具體地址 . (2)用 U 命令對目標(biāo)代碼反匯編 ,觀察反匯編后的結(jié)果 .注意發(fā)現(xiàn)源程序的起始 位置 , 并記錄這個起始地址 . (3)用 T 命令作單步跟蹤調(diào)試 .比較每條指令執(zhí)行后的結(jié)果和原來的理解是否 一致 .得出程序運行的結(jié)果 :它們是寫在什么單元 ,具體內(nèi)容是什么 。 微機原理軟件實驗 進(jìn)入 debug 中,用 u 命令查看反編譯結(jié)果。 Y 的偏移地址為 0002H, Z 的偏移地址為 0005H。 SUB1 子程序段入口地址為 003F。報告 第 4 頁 如上圖所示, 用 E 命令 將 A 和 B 的值由 1EH,33H 改為 10H,20H,通過 d 命令重新查看 A,B 的數(shù)值,發(fā)現(xiàn)改變成功。 上圖為用 t 命令單步運行結(jié)果, 執(zhí)行 SUB1 之后返回主程序時 CS 為 0B88, IP 為001A,壓入堆棧的 IP 值已經(jīng)彈出, CS,IP 已經(jīng)指向下一條指令。報告 第 5 頁 上圖為用用 M 命令和 A 命令對程序進(jìn)行修改 : 將主程序中最后兩條指令 (ADD 和 ADC) 修改為一條 CALL SUB1 指令 ,重新執(zhí)行程序 . 如上圖所示,將源代碼中最后一句 END STAR 改成 EDN,發(fā)現(xiàn)編譯連接均可通過,但是 DEBUG 時出現(xiàn)了嚴(yán)重的錯誤,沒有 END STAR 語句,編譯器將不知道代碼段的入口地址是多少,導(dǎo)致從數(shù)據(jù)段開始譯碼,后續(xù)譯碼全部紊亂。 五、實驗總結(jié) 本次實驗我初步了解了匯編語言的調(diào)試過程。實驗中我使用 t與 d相結(jié)
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1