東華大學(xué)微機(jī)系統(tǒng)及原理實(shí)驗(yàn)報告_第1頁
東華大學(xué)微機(jī)系統(tǒng)及原理實(shí)驗(yàn)報告_第2頁
東華大學(xué)微機(jī)系統(tǒng)及原理實(shí)驗(yàn)報告_第3頁
東華大學(xué)微機(jī)系統(tǒng)及原理實(shí)驗(yàn)報告_第4頁
東華大學(xué)微機(jī)系統(tǒng)及原理實(shí)驗(yàn)報告_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、微機(jī)系統(tǒng)及應(yīng)用實(shí)驗(yàn)實(shí)驗(yàn)報告實(shí)驗(yàn)一DEBUG的啟動及其基本命令的使用實(shí)驗(yàn)內(nèi)容:6:設(shè)堆棧指針SP=2000H AX=3000H BX=5000H請仿照例程的格式編 一程序段將AX和BX的內(nèi)容進(jìn)行交換。請用堆棧作為兩寄存器交換內(nèi)容的中間 存儲單元,用DEBUG調(diào)試程序進(jìn)行匯編與調(diào)試。寫出在DEBUG犬態(tài)下編寫、運(yùn)行步驟6所要求的程序過程(要求包含源程 序)以及調(diào)試所中遇到的問題是如何解決的,并對調(diào)試過程中的問題進(jìn)行分析, 對執(zhí)行結(jié)果進(jìn)行分析。程序清單:STACK SEGMENT STACKDB 2003H DUP(0)STACK ENDSCODE SEGMENTASSUME CS:CODE,SS:

2、STACKSTART: MOV AX,STACKMOV SS,AXMOV SP,2000HMOV AX,3000HMOV BX,5000HPUSH AXMOV AX,BXPOP BXMOV AH,4CHINT 21HCODE ENDSEND START運(yùn)行及調(diào)試:C:masm5.0>debug 1.exe-oProgram terminated normally進(jìn)入調(diào)試后,運(yùn)行正常。AK=0B91 BK=0000DS=0B81 tS=0B81 0092:0008 B80030 -tCX=2026 DX-0000 SP=2000SS=0B91 CS=0D92 £P=0008MOV

3、 AX,3000BP=000O SI=0009 01-0000HU UP tl PL NZ HR P0 NCAK=3000 BK=00O0DS=0B81 ES=0B81 0D92:000B BB9050 -tCX=2026 DK-0000 SP=20O0SS-0B91 CS=0D92 IP-000BMOV BX,5000BP=0000 SI=9000 DI=O000MV UP EI PL NZ NA PD NCflX=3000 BK=5000DS=0B81 ES=0B810D92:000E 50CX=2026 DX=0000 SP=2009SS=9B91 CS-0D92 IP=0O0EPUSH

4、 AXBP0000 SI=0000 DI=0Q00NV UP EI PL NZ NH P0 NC進(jìn)行反匯編調(diào)試:|-u0D92:0000 1B8910BMOVRX,0B910092:0003 ;8ED0MOVSSnflM0D92:0005 1BC0020MOVSPF 20000D92:0008 1B80030MOVAX.3000092:000B 1BB0050MOVBX.5000y092:000150PUSH油I0D92:00011-18BC3MOVAX.BK帆 92WH11 5BPOPBX10092:0012 1BMCMOVAHh4C|0D?2:0014 CD21INT21通過追蹤指令觀察

5、SP、AX、BX變化可知對SP、AX、BX賦值正確。將AX入棧后AX=3O00 BX=500ODS=0B81 ES=0B81OD92:000F 8BC3CX=2026 DX=0000 SP=1FFE BP=000O SI=0000 DI=00O0SS=0B91 CS=0D92 IP=000F NV UP EI PL NZ NA PO NC NOV RXIK用顯示內(nèi)存單元內(nèi)容的命令D觀察堆棧段中 SP為1FFF,2000的內(nèi)容-d 0b93:lFFO0B93:1FF0 00 00 00 00 00 30 00 00-0F 00 9& 0D 88 05 00 301FFF=00,2000=

6、30 說明已經(jīng) AX=3000已經(jīng)放入到堆棧段中0D92:0OOF 8BC3 tNOV AK.BXAX=5O00 BK=500ODS=0B81 ES=0B81 0092:0011 5B -1CK=2026 DM=00G0SS=0B91 CS=0D92POP BMSP=irrE BP-0000 SI=00O0 DI=0000IP-0011 NV UP EI PL NZ NA PO NCflX=500O BK=3000DS-0B81 ES-0B81 0092:0912 B44CCK=2026 DK-0000 SP=2000SS-0B91 CS-0D92 IP=0012NOV fiH,4CBP=00

7、00 SI-0000 DI=0000NV UP FT PI NZ NA PO NC結(jié)果可以看出:AX=5000 , BX=3000結(jié)果完成正確!實(shí)驗(yàn)二內(nèi)存操作數(shù)及尋址方法實(shí)驗(yàn)內(nèi)容:1、設(shè)堆棧指針SP=2000H AX=3000H, BX=5000H請編一程序段將 AX和 BX的內(nèi)容進(jìn)行交換。請用堆棧作為兩寄存器交換內(nèi)容的中間存儲單元,用字處 理程序編輯程序,用masm.exe和link.exe對源程序進(jìn)行匯編程和連接,用DEBUG 調(diào)試程序。2、用masm和link對以下程序進(jìn)行匯編和連接,調(diào)試程序在 DEBUGM試 程序狀態(tài)下進(jìn)行。用單步執(zhí)行的方法,分析每條指令源地址的形成過程,當(dāng)數(shù)據(jù) 傳送

8、完畢時,AX中的內(nèi)容是什么。程序清單如下:DATA SEGMENTORG 0300HA DB 12H,23H,34H,45H,56H,67H,78H,89H,9AHDATA ENDSPROGNAM SEGMENTASSUME CS:PROGNAM,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV AX,BXMOV AX,0300HMOV AX,0300HMOV AX,BXMOV SI,2MOV AX,0001BXMOV AX,BXSIMOV AX,0001BXSIMOV AH,4CHINT 21HPROGNAM ENDSEND START對源程序文件匯編,生成目標(biāo)文件

9、C:Xmasm5.0>mdsm 2.asnMicrosof t (R) Macro Assembler Version 5.00Copyright (C) Microsoft Corp 1981-1985, 1987. All rights reserved.Object filename 2.0BJ1:Source listing INUL.LST;Cross-reference NUL.CRF:50318 + 450322 Bytes symbol space free0 Warning Errors0 Severe Errors將目標(biāo)文件LINK后,生成可執(zhí)行文件如下:C;masm

10、5,0>link 2LobjMicrosoft (R) Overlay Linker Version 3.60Copyright (C) Microsoft Corp 1983-1987. fill rights reserved.Run File 2.EXE:List File NUL.MAP1:Libraries .LIB):LINK : warning L4021: no stack segment進(jìn)入debug調(diào)試C:masm5.0>debug 2.exe-u0BC20000 138910BMOVn»,0B910BC20003 :81ED8MOVDS. OX0BC

11、20005 :BlBC3MOVfiX.BX0BC20007480003MOVRX.03000BC2000AB80003MOVAX.0300GBC20000 1BB07MOV0BC2O00F 1BE0200MOVSI.00020BC20012 ;3B4701MOVAX.BX*010BC20015 iBB00MOVAXJBX-SIJ9BC20017 13B4001MOVnxjBX*si*ei0BC2001A 1B44CMOVAH. AC0BC2001C CD21INI21單步追蹤執(zhí)行:t-0bc2:0009fiK=0B9l BX=fl000DS=0B81 ES=0B81 0BC2:0003 8ED

12、8CX=032E DK=0000 SP=O00O BP=0BO0 SI=O000 01=0000SS=0B91 CS=0BC2 IP=0003 NV UP EI PL NZ NA PO NC NOV DS.OXAX=0B91 ,為數(shù)據(jù)段的首地址。AX=0B91 BX=0000DS=0B91 ES=0B81 0BC2:0005 8BC3CM-032E DX=O0O0 SP=O00O BP-0000 SI=0099 01=0000SS=0B91 CS=0BC2 IP=0005 NV UP EI PL NZ NA PO NCMOV IflK.BMAX不變,將數(shù)據(jù)段白首地址送至DS。執(zhí)行 MOV AX

13、,BXAX-0000 BM=0O09DS-0B91 ES=0B810BC2:0007 B8O003CX-032E DK=0000 SP=0000 BP-0000 SI=0000 DI=O000SS=0tJ91 CSRBC2 IP=0007 NV UP EI PL NZ NA PO NC MOV flX,0900AX同BX,清零。執(zhí)行 MOV AX,0300HAK=0300BK=O000CX=632EDX-0000SP=00O6BP=000O SI=0000 DI-0000DS=0B91ES=0B81SS-0B91CS=0BC2IP=00Oft州 UP EI PL NZ NA PO NC0BC2

14、:000fi B8O003 MOV AX50300AX=0300執(zhí)行 MOV AX,0300Hnx=930o BK=0oe0DS=0B91 ES=0B81 0BC2:000D 8B07CX-032F DK=Q000 SP=D09O BP=。 SI=09Ofl 01=0000SS=BB9 CS=0BC2 TP=009D NV UP FI PI Nf NA PO NCNOVLBXJDSAX=0300可知MOV AX,0300H 與 MOV AX,0300H得到同樣結(jié)果fiX=0O00BK=0000CX=032EDX=00O0SP=O000BP=0000SI=000ODI=0000DS-0B91ES

15、=0B81SS-0B91CS=0BC2IP=0O0F陽UPEIPL NZNA PO NG0BC2:0O0F-1BE02O0mSI.0002BK=0000CX=032EDX=0009SP=0090BP-0000SI=0002DT=0fl0ODS=0B91ES=0B81SS=0B91CS=0BC2IP=0B12NU UPEIPL NZNA PO NC0BC2:0012-18B4701MOU嘰冊01l)S 2 0001=0000fiX=0O00CX=032ESP-0000BP-eooeSI=000201=0000hs=0B91ES=0B81SS-0B91CS=0BC2IP-0015NU UPEIPL

16、 NZNA PO NC0BC2:0015-t8B00mnxjBX*su03:0002-0000fiX-0000BX-0000CX=932EDX-0000SP-0000Bp-0000sr-0002010000DS=0B91ES=0B81SS-0B91CS=0BC2IP-0017州UPEIPL NZNA PO NC0BC2:0017十8BM01MOVAXJBX*SI*01DS: 0003=0000RM-0000BX=00OGCX=B32ESP=O000BP-DU0BSI-00021)1=0000DS=0B91LS=GB81SS=0B91CS=6BC2IP=0B1ANU UPEIPL NZNA PO

17、 NC0BC2:Q01ABMCMOUAH.4CAX 均為 0000.將原文中的指令清單改為DATA SEGMENTA DB 12H,23H,34H,45H,56H,67H,78H,89H,9AHORG 0300HB DB 0BH,0CHDATA ENDSPROGNAM SEGMENTASSUME CS:PROGNAM,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV AX,BXMOV AX,0300HMOV AX,0300HMOV AX,BXMOV SI,2MOV AX,0001BXMOV AX,BXSIMOV AX,0001BXSIMOV AH,4CHINT 21H

18、PROGNAM ENDSEND START2222222222222 ccccccccccccc ub-bbbbbbbbbbb i Au0357OOF257ACF 00 0 000 0111111-MVB8910B 8ED8 8BC3B80003B80003 8B07 BE02008B4701 8RO0 8B4001B44CCD21C45F0tMOV HOV MOV HOV MOV HOV HOV HOV NOV HOV HOV INILFSHXWB91DS.AMAX, 0300flX,0900AKJBX1SI, 0002 mt Bx-oii AXJBX-SI1AXJBX-SI-01flHAC

19、21BX,BP-041單步執(zhí)行后:0BC2:00OR B800O3MOVHK.0300制=0900 BM=00O0OS=0B91 ES=0B81 O8C2:000D 8B07 TCK-032E DX=OO00 SP=0OO0SS=0B91 CS=0BC2 IP=0O0OHOVAK.EBXBP=O000 SI=O000 01=0000NV UP EI PL NZ NA P0 NCDS:0000=2312AH=2312 BX=m0l)S=0B91 ES=0B81GBC2:B0OP BED2O0-tCH-332F DX=flQ0O 5P=0000SS=0B91 CS=0IJC2 TP=000irBP

20、=0000 ST=Dfl00 nT=00OQNV UP ET PL NZ NA PO NCMOVSI.0D02制=2312 BX-0000OS=0B91 ES=0B81O8C2:0012 8B4701-tCK-032E DX=OO00 SP=0O00SS=GB91 CS=0BC2 IP=0012HOVBP-0000 SI=0002 01-0000NV UP EI PL NZ NA P0 NCDS:0001=3423AK=3423 BX=M01晦=的91 ES=BB81 0BC2:001b 8B00CH=Q32F nX=Ba0O SP=00fl0SS=0B91 CS=0IJC2 TP=0015H

21、OVBPF0 朋 ST=Ofl02 DI=0DR3NV UP EI PL NZ NA PO NCDS:6002=4534口X=453A BK=0O00DS=0B91 ES=0B810BC2:0O17 8B4001CX=032E OK=O00O SP=0O00 BP=00OO $1=0802 DI=0OO0SS=0B91 CS=0BC2 IP=0O17NOVRX.BX*SI*01NV UP EI PL NZ NR P0 NCDS:0003=5645nx=56t5 BX=0O00CX-032F DK=OO00 SP=000D BP=000O ST=0002 01=0009PS=OB91 ES=0B

22、810BC2:001A BMC35=0B9J CS=0BC2 IP=R01R NV UP FT PI NZ NA P。 NCHOVAH, AC可知:隨著程序進(jìn)行, AX發(fā)生變化。實(shí)驗(yàn)三算術(shù)運(yùn)算指令實(shí)驗(yàn)內(nèi)容編寫三個完整的匯編語言源程序,完成以下計算。其中 為存放16位帶符號數(shù)單元的地址。(1)Z W+ (Z X)(2)Z W (X+ 6) ( R+ 9)X、Y、Z、R W 均(3)Z (W*X) / (Y+ 6), K余數(shù)實(shí)驗(yàn)前要做好充分準(zhǔn)備,包括匯編程序清單、調(diào)試步驟、調(diào)試方法,以及對 程序結(jié)果的分析等1、程序說明。說明程序的功能、結(jié)構(gòu)。2、調(diào)試說明。包括上機(jī)調(diào)試的情況、上機(jī)調(diào)試步驟、調(diào)試所遇

23、到的問題是 如何解決的,并對調(diào)試過程中的問題進(jìn)行分析,對執(zhí)行結(jié)果進(jìn)行分析。3、寫出源程序清單和執(zhí)行結(jié)果。(1)Z W+ (Z X)匯編程序清單DATA SEGMENTX DW 10Z DW 20W DW 10DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV AX,ZSUB AX,XADD AX,WMOV Z,AXMOV AH,4CHINT 21HCODE ENDSEND START進(jìn)入debug調(diào)試:C:masm5.0>debug 2.exeOB92:O000 138910BMOVRKr0B

24、910892:0003 :3ED8MOVDS, AM0B92:0005 1410200HOVfiX,0002OB92:0008 :2B96000OSUBm, 000010B92:000C 133060A00ODDRK J制弘0B92;0010A30200HOV00021.AMUB92:0013B44CMOVAH AC0892:0015 1DD21INT21使用追蹤指令T單步執(zhí)行:0B92:0005 R10200 MOV RXJQ002山rtAK=0014BX-0000CX=0027DX=0O0QSP=O0Q0BP=00O0 S1=0OOO Dl=UOODDS-0B91ES-0B81SS=0B9

25、1CS=0B92IP=0008 NV UP EI PL HZ Hfi PO NC執(zhí)行結(jié)果是將 20放入AX中。AX=0014H0892:0008 2B060000 SUBAX J 0000DS:-tAX=000fiBX=0000CX=0027DK=0000SP-0000RP=0000 SI=0000 DI=0000DS=0B91ES=0B81SS=0B91CS=0B92IP=00OC NV UP EI PL NZ RC PE NC執(zhí)行結(jié)果 AX=0014H-000AH=000A,結(jié)果正確。-tRX=0014 BX=0000DS-0B91 ES-GB810B92:0010 030200-1CX=

26、0027 DK=0000 SP=0000SS-0B91 CS=0B92 IP=001OMOV 00021,fiXAX=001i BM=000GDS=0B91 F$=0B8J 0692:0013 BMCCX=0O?7 DK=00O0 SP=000OSS=0H91 C$=0B92 p=H013MOV flH,4CBP=B000 51=0000 DI=0000NV UIJ FT Pl NZ RC PI- NCBP=0000 SI=000O 01=0000 NV UP EI PL NZ AC PE NC DS:0002-0014執(zhí)行結(jié)果顯示:AX=0014H ,即為20,正確。然后將結(jié)果保存至 Z存儲

27、字中。最后觀察數(shù)據(jù)組中的數(shù)據(jù);-d0b91:00B91:0000 0A 00 14 00 0A 00 00 00-00 00 00 00 00 00 00 00甚小為 X=10 , Z=20 , W=10 o程序運(yùn)行結(jié)果ZE確(2)Z W (X+ 6) (R+ 9)匯編程序清單:DATA SEGMENTW DW 100X DW 20 R DW 30 Z DW ? DATA ENDS CODE SEGMENTASSUME CS:CODE,DS:DATA START: MOV AX,DATAMOV DS,AX MOV AX,W MOV BX,X ADD BX,6 SUB AX,BX MOV BX,

28、R ADD BX,9 SUB AX,BX MOV Z,AX MOV AH,4CH INT 21HCODE ENDSEND START 對程序進(jìn)行匯編后調(diào)試:C:masm5,0>debug 2.exe0B92:0000B8910BMOVRK.0B919B92:90038ED8MOVDS. AX0B92:0005A1O000MOVAXRl0O00J0B92:00088B1E0200MOV3X400020B92:0O0C83C306ADD0B92:000F2BC3SUB亂BK0B92:00118B1E0400MOV3XJ00040B92:001583c309ADD0B92:00182BC3SU

29、B弭BX0B92:001AA3O600MOV0006J,AX0B92:001DB44CMOV1AH,4C0B92:001FCD21INT:21單步執(zhí)行:0B92:0093 8ED8MOV DS.fiKTAN=0B91BK=0O00CX=0031DX=0O00SP-0000BP=0090 SI-0000 DI=0000DS=0B91ES=0B81SS=0B91CS=0B92IP=0005NU UP EI PL NZ 即 PO NC此時,對DS的段基址賦值為數(shù)據(jù)組的首地址0B92:0Q05 Al0000-tMOV HX,L0O00RX-0064 BK-0000 CX=031 OK-0000 SP=

30、0O00S-0B91 ES=0B81 SS=0B91 CS-0B92 IP=0O08 0B92:O008 8B1E02G0 MOV BX.EO002 -1BP=B0O0 SI-0000 DI=0000 NV UP EI PL NZ Nfl PO NC DS:0002=6014冊=0064 BX=O014 CK-0031 DK-0000DS=0B91 ES=0B81 SS=DB91 CS-0B92SP=000O BP=BO00 SI-0000 DI-0000IP=0O0C NV UP EI PL NZ NR PO NC此時,對 AXBX 分別賦值為100, 20|0B92:000C - t80C

31、3G6ADI)EX,+D6AX-00 64BX-001HCN=0O31DX-0000SP-0000BP=000081=0000010000DS-0B91ES=0B81SS-0B91CS=0B92IP=000FNV UPEI PL NZ NAPO NC0B92:000F-t2BC3SUBBX-001ACM-Q031OX-0000SP-0000BP-0000虹=1000D10000DS-0B91LS=0B81SS=QB91CS=0B92IP=00UNV UPLI PL NZ fiCPO NC0B92:H011 T8B1EO40OMOVBKJ0OO4S10004=0011nH-eawBX-O01EC

32、M-0031DX-0000SP-0000BP=0000SI-000001=0000DS-0B91ES-0B81SS-GB91CS-0B92IP-0015NV UPEI PL NZ ncPO NC0692:0015-t83c309ADOBX,-09HX-004ABX=0027CX=0091DK=O000SP=0000BP=0000SI=0000D1=000O|DS=0B91ES=0B81£S=0B91CS=0H92IP=0018HU UPLI PL NZ ACPE NC0B92:0018 2UC3SUB AK.BKOM-0023 BX=0027DS-0B91 ES-0B81 0892:

33、0010 030600-tCK-0031 DX=OO00 SP-0000SS-0B91 CS=0B92 IP-0O1RMOV 00061f0KRP=0000 SI=00O0 01-0000 NV UP EI PL NZ NA PO NC DS:0006=0000fiM=0023 BX=6027DS=0B91 ES=0B81CK=O031SS=0B91DX=0O0(JCS=0B92SP-0000IP=001DBP=0000 SI=0000 DI=0000NV UP El PL NZ NN PU NC(3)Z (W*X) / (Y+ 6), R余數(shù) 匯編程序清單:DATA SEGMENTX DW

34、10H Z DW ? W DW 10H Y DW 3H R DW ? DATA ENDS CODE SEGMENTASSUME CS:CODE,DS:DATA START: MOV AX,DATAMOV DS,AX MOV AX,W IMUL X MOV BX,Y ADD BX,6 IDIV BX MOV Z,AX MOV R,DX MOV AH,4CH INT 21H CODE ENDS END START 編譯執(zhí)行結(jié)果如下:-u0B92:0000B8910BMOV0692:00038ED8MOVDS, AX州92:0豳5A10400MOVAX J 00040892:0008F72E00O0

35、IMULWORD PTR 00000B92:000C861E0600MOVBXJ00060B92:001089C306ADDBQU60B92:0013F7FBIDIVBX0B92:0015A3020OMOV0002.flX0692:001889160800MOV0O081.DK0B92:001CB44CMOVAH, 4c0B92:001ECD21INT21單步執(zhí)行結(jié)果如下:0092:0003 SEDEMUVUS.flMDS=0B91 ES=0B81 晚92:0觸5 A1040O-t0=0030 DN=flflfl0 SP=0e00SS=0B91 。$=曲92 IP-3605MOV AH,000

36、4 JBP=00O0 SI=009G DT-0000 陽 UP tl PL NZ NA P。 NC DS 6004=0810fi«=0010 BK=G600DS=0B91 ES=0B8J 0B92W觸8 F72E00O0CM=fl030 DX=的蒯 $P=前的SS=0B91 CS=0B9? IP-00981HUL UORD PTR 6060ap-eaea spaeee oi-eoeaM UP EI PL NZ NA PO NCDS:00(J0=B01(JBP=00O0 S>009e DT-e900 陽 UP tl PL NZ NA PO NC DS;6006=0093AH=O1

37、00 明印皿。0=0030SP-3B00DS=0B91 ES=0B81 SS=0B91 US=0BS2 1P=新就0B92;O0eC 8B1E0606 MOV BKJ。噩61-tfiX-0160 BK=G603居=H891 ES=0B8J0B92:0O10 83c306CM=fl030 DX=的蒯 $P=前的SS=0B91 CS=0B9? IP-9010F1DD EK,聞6ap-eaea spaeee oi-eoeaM UP EI PL NZ NA PO NC0B92;6010 83C306 ADD BX,+06-tftX=ei00 BK=0蒯9 環(huán)印03。OK=0000DS=0B91 ES=

38、0B81 SS=0B91 CS-0B920B92:6013 F7FBIDIV BX-tSP=0000IP-0013BP=0鴕6 SI=0009 01=0090州 UP EI PL NZ 廂 PE NCAX=O01C BH=B0O9 DS=0B91 I S=0B81 0B92:0015 A3020O-tCX=fi330 DK=的網(wǎng) SP=fl3fl0SS=0B91 CS=BB92 IP=6315HOU 00021,RXRP=0fl00 ST=fl3fl0 DPflflaflHV UP FT Pl 亞 NR PE NCUS:0B02=B0B0ftX-OfllC EH-0009 CX=6030 口

39、心刖附 SP=0060DS-0B91 ES-0E81 SS=6B91 CS-0B92 IP-00180B92;6018 89160800 NOV (60081,0M-tBP=0606 31=6060 DP0600NV UP EI PL HZ NA PE NC08:0608=0060HX=001CDS=0B91明=8009ES-0B81CX=0030SS=0B91DK=0 孫CS=9B92SP=0000IP-001CBP=0鴕0 SI=C009 01=0090州 UP EI PL NZ 廂 PE NC-d0B91:00B91:0000 10 00 IC 00 10 00 09 00-04 00

40、00 00 00 00 00 00執(zhí)行結(jié)果可得:商的整數(shù)部分z所指向的字單元內(nèi)容為001CH,余數(shù)本分R指向的 字單元內(nèi)容為0004H。實(shí)驗(yàn)四查表程序設(shè)計實(shí)驗(yàn)內(nèi)容:用查表的方法將一位十六進(jìn)制數(shù)轉(zhuǎn)換成與它相應(yīng)的ASCIB,并將結(jié)果存放到ASCI單元中。匯編程序清單:DATA SEGMENTTABLE DB 30H,31H,32H,33H,34H,35H,36H,37HDB 38H,39H,41H,42H,43H,44H,45H,46HHEX DB 0AHASCI DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV

41、 DS,AXMOV BX,OFFSET TABLEMOV AL,HEXXLATMOV ASCI,ALMOV AH,4CHINT 21HCODE ENDSEND START對程序進(jìn)行編譯進(jìn)入debug調(diào)試0B930B930B930B930B930B930B930B930000 B8910B0003 8ED80005 BB000O0008 R0100O000B D7000C A2110O000F B44CWV 000 MMMI A MLo o MMAX,0B91DS, AX BX.0000 nLh001000111AH.4C使用t追蹤指令觀察數(shù)據(jù)變化0B93:00O5 BBO000-1MOVAX=

42、0B91 BX=O00GDS=0B91 FS=0BB 0693:0008 AO1O0O-1CX=0033 DK=0000 SP=BO00SS=0H91 CS=0B93 IP=O0R8MOVHL.10010HP=G090 SI=0000 DI=G0OONV UP FI PL NZ NR P0 NCDS:0810=。RX=0B0fi BX=00O0DS=0B91 ES=0B81 0B93:000B 07-1CX=0933 DK=00O0SS=0B91 CS=6B93XLfiTSP=00O0IP-00ABBP=0000 SI=0000 DI=0000NV UP EI PL NZ NA P0 NCnK

43、=0B41 BK=000I3j)S=0B91 LS=0B81CX=0033 DK=Q0OUSS=0H91 CS=0B93SP=0O00IP=000CBP=0000 SI=0000 DI=0000NV UP LI PL NZ NH P0 NC0B93:000C A21100-1MOV0911,flLDS:0011=00OM-0B41 BX-0000DS=0B91 ES-0B81CX-0033 nK-0000 SP=0000 BP=0000 SI=0000 DI-0000SS=0B91 CS-DB93 IP=OO0F NV UP EI PL NZ NO PO NC-d0b91:00B91:GB00

44、 30 31 32 33 34 35 36 97-38 39 Al 42 A3 AA 45 46012 34 56789ABC DI-10B91:0010 0A 41 00 00 00 00 00 00-00 00 00 00 00 00 00 00.AASC所指向的字節(jié)單元的內(nèi)容正是十六進(jìn)制數(shù) 0AH的ASCI值41實(shí)驗(yàn)五系統(tǒng)功能調(diào)用實(shí)驗(yàn)內(nèi)谷:試編寫一個匯編語言程序,要求對鍵盤輸入的小寫字母用大寫字母顯示出 來。匯編程序清單:CODE SEGMENTASSUME CS:CODESTART: MOV AH,1INT 21HSUB AL,20HMOV DL,ALMOV AH,2INT 21HMO

45、V AH,4CHINT 21HCODE ENDSEND START對源程序編譯并進(jìn)入debug狀態(tài)VTBWTV1 ONUOONON1 0 L 2 c0 2 A 0 4, 3 at 郎 -FH1LLH1H1A2flDR2fi20B91:0000 6401 0B91;0002 CD21 0B91:0004 2C20 BB91:O006 3fiD0 0B91:0008 B402 0B91:009fi CD21 0B91:000C B44COB91:000L CD21Program terminated normally調(diào)試結(jié)果正確O實(shí)驗(yàn)六分支程序設(shè)計:實(shí)驗(yàn)內(nèi)容 L假設(shè)有一組數(shù)據(jù):0,等于0,還是小于

46、即:15,-4, 0, 3, 100, -51,請編一程序,判斷:每個數(shù)大于0;并輸出其判斷結(jié)果。當(dāng)x>0y= 0 當(dāng) x=0-1 當(dāng) x<0匯編程序清單:DATA SEGMENTTABLE DB 5,-4,0,3,100,-51GDB '1',13,10,'$'ZDB '0',13,10,'$LDB '-1',13,10,'$'DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA START: MOV AX,DATAMOV DS,AX LEA SI,TABLE

47、 MOV CL,6COMP: CMP BYTE PTR SI,0 JG GREATJZ EQUAL LEA DX,L JMP SHORT DISP GREAT: LEA DX,GJMP SHORT DISP EQUAL: LEA DX,Z DISP: MOV AH,9INT 21H INC SI LOOP COMP MOV AH,4CH INT 21H CODE ENDS END START對源程序進(jìn)行編譯并進(jìn)入調(diào)試狀態(tài)333333333333999999999999 u B B B B B B B B B B B B0359BEO268CE 0 0 00 0 01 1 1 1 1 13 -H

48、V Av _w_B891DB8ED8 8D36000O B106 803C007F08740C8D160E00EB0A 80160600 EB04 8D160ifl00MOV MOV LEfl MOV CMP JGJZ LEA JMP LEA JMP LEARX.HB91DS.AXSIJ0000CL,06BYTE PTR ISI5000018001EDXJ000E0022DM J 00060022DXJ0O0A0B93:00220B93:00240B93:00260B99:00270B93:0029B409 CD21 46E2E2B44CMOV INT INC LOOP MOVAH ,0921

49、SI 000BAH, AC分布調(diào)試:F1K=0B91 BM=0O00 pS=0B81 ES=0B81 0B93:0003 8FD8 -tCX-004D DH=0000 SP-0000SS=0B9 CS=0B93 IP=Rfi03BP=0000 SI=fi090 DI-0009NV UP ET PI NZ NA PO NCMOVOS, AXMK-QB91 BM=0O00DS-0B91 ES=0B31 0B93:0005 8D3600OO-tCX-004D DM-0000 SP-0000SS-0B91 CS=0B93 IP=0OO5LEfiSI J0000BP-0000 SI=0O00 01-00

50、00NV UP EI PL HZ N» PO NCDS:BOO0=FC05口*=0B91 BX=0Q90DS=0B91 ES=0B31 0B93:0009 B106-tCX-0RW DK=0000 SP=0fi()eSS=0B91 CS=flB93 IP=0B09BP=fl00O SI=OO00 DJ00ONV UP EI Pl NZ Nfl PO NCAK-0B91 BX=0O90AK=0B91 BX=B900DS=0B91 ES=0B81QB99:000E 7IF08 -tMOVCL, 06CX-0006 OM-0000 SP-0000BP-0000 SI=OO00 DI-0000CX-0006SS=0B91JGDH=OO0B SP=0D0OCS=0B93 IP=000E6018BP=00DO SI=D0G0 D1=00DUNV UP EI PL NZ NA PE NCfiH=9B91 BH=0OO0DS-0B91 ES=0B81 0B93:0O1B 3D16060O -tCK=O006 ISS=0B91 LEDDX=0O0O SP=

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論