微机原理与接口技术 运算类编程实验

合集下载

微机原理及接口技术实验报告

微机原理及接口技术实验报告

微机原理及接口技术实验报告实验一实验日期实验时间1 实验名称:系统认知实验2 实验目的:了解汇编语言的设计、编写和调试程序的方法,掌握DEBUG的使用。

3 实验内容/原理:编程实现字符串“Hello World!”,用DEBUG调试程序。

实验要求:1、上机前做好充分准备,包括源程序清单、调试步骤等;2、用DEBUG来调试程序,熟悉DEBUG的使用。

实验步骤:1、编写程序并输入,检查无误后,经汇编、连接后运行,用DEBUG装入。

2、用U命令反汇编程序,应用R、G等命令,观看运行情况。

3、用D、E、A等命令查看、修改源数据,用G命令查看运行结果。

4、用Q命令退出DEBUG。

4 调试过程及结果DSEG SEGMENTSTRING DB 'HELLO,World!',0DH,0AH,'$'DSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXLEA DX,STRINGMOV AH,09HINT 21HMOV AH,4CHINT 21HCSEG ENDSEND START实验显示结果:-u13CB:0100 7403 JZ 010513CB:0102 E99700 JMP 019C13CB:0105 B80500 MOV AX,000513CB:0108 50 PUSH AX13CB:0109 FF363C21 PUSH [213C]13CB:010D FF363A21 PUSH [213A]13CB:0111 E84C14 CALL 156013CB:0114 83C406 ADD SP,+0613CB:0117 8946F8 MOV [BP-08],AX13CB:011A 895634 MOV [BP+34],DX13CB:011D 00BA130B ADD [BP+SI+0B13],BH-d13CB:0100 74 03 E9 97 00 B8 05 00-50 FF 36 3C 21 FF 36 3A t.......P.6<!.6:13CB:0110 21 E8 4C 14 83 C4 06 89-46 F8 89 56 34 00 BA 13 !.L.....F..V4...13CB:0120 0B 06 BA 17 75 1C 83 7E-0A FF 74 08 8B 46 06 0B ....u..~..t..F..13CB:0130 46 08 75 0E A1 3A 21 8B-16 3C 21 A3 B8 17 89 16 F.u..:!..<!.....13CB:0140 BA 17 C4 5E F8 2B C0 26-89 47 10 26 89 47 0E 8B ...^.+.&.G.&.G..13CB:0150 46 06 8B 56 08 26 89 47-0A 26 89 57 0C 8A 46 0A F..V.&.G.&.W..F.13CB:0160 26 88 47 22 8A 46 0C 26-88 47 05 A1 32 21 8B 16 &.G".F.&.G..2!..13CB:0170 34 21 89 46 FC 89 56 FE-A1 5E 27 8B 16 60 27 A3 4!.F..V..^'..`'.-tAX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=13CB ES=13CB SS=13CB CS=13CB IP=0102 NV UP EI PL NZ NA PO NC 13CB:0102 E99700 JMP 019C-rAX=6789 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=13CB ES=13CB SS=13CB CS=13CB IP=0102 NV UP EI PL NZ NA PO NC 13CB:0102 E99700 JMP 019C实验二实验日期实验时间1 实验名称:系统认知实验2 实验目的:了解汇编语言的设计、编写和调试程序的方法,掌握DEBUG的使用。

微机原理及接口技术实验

微机原理及接口技术实验

微机原理及接口技术实验一、实验目的本实验旨在通过学习微机原理和接口技术,了解和掌握微机系统的基本原理和接口技术的应用,培养学生对微机系统的认识和实践操作能力。

二、实验内容1. 微型计算机系统设计与搭建2. 微机输入输出接口技术应用实验3. 微机总线技术应用实验4. 微机存储器技术应用实验5. 微型计算机中断和DMA技术应用实验三、实验原理1. 微型计算机系统设计与搭建微型计算机主要由中央处理器、存储器、输入输出设备和总线组成。

本实验通过选择适当的芯片、电路连接和控制程序设计,实现一个基本的微型计算机系统。

2. 微机输入输出接口技术应用实验输入输出是微型计算机的重要组成部分,通过实验学习各种输入输出接口的原理和使用方法,并进行实际应用。

3. 微机总线技术应用实验总线是微型计算机各个部件之间传送数据和控制信息的公共通信路径。

通过实验学习总线的分类、结构和时序要求,掌握总线的实际应用。

4. 微机存储器技术应用实验存储器是微型计算机中存储数据和程序的重要设备。

通过实验学习不同类型存储器的原理和应用,掌握存储器的选择和使用。

5. 微型计算机中断和DMA技术应用实验中断和直接存储器访问(DMA)是微型计算机连接外部设备的重要技术。

通过实验学习中断和DMA的工作原理,掌握中断和DMA的应用方法。

四、实验步骤1. 根据实验要求,设计并搭建微型计算机系统;2. 连接输入输出设备,并编写控制程序;3. 进行输入输出接口技术应用实验,如串行通信、并行通信等;4. 进行总线技术应用实验,如总线传输数据测试等;5. 进行存储器技术应用实验,如读写存储器数据等;6. 进行中断和DMA技术应用实验,如中断服务程序编写等;7. 完成相关实验报告并进行总结。

五、实验设备和材料1. 微型计算机实验箱、电源适配器;2. 8051单片机、存储器芯片、输入输出芯片,如74HC164等;3. LED数码管、LCD液晶显示器、键盘、计算器等输入输出设备;4. 可编程芯片编程器、逻辑分析仪等实验设备。

微机原理与接口技术课程实验指导书

微机原理与接口技术课程实验指导书

实验一二进制多位加法运算一、实验目的1、熟悉实验系统键盘显示的使用。

2、掌握使用加法类运算指令编程及调试方法。

3、掌握加法类指令对状态标志位的影响。

二、实验内容计算X+Y+Z=?(X、Y、Z为16位二制数)三、编程指南由于本实验是三个十六位二制数相加运算,因此,当X+Y时要考虑用ADC指令,把进位C加到结果的高16位中,当(X+Y)+Z时,再把进位C加到结果的高16位中,本实验设定三个加数0FFFFH,计算结果应为2FFFDH。

四、实验步骤联机模式:(1)在PC机和实验系统联机状态下,运行该实验程序,可用鼠标左键单击菜单栏“文件”或工具栏“打开图标”,弹出“打开文件”的对话框,然后打开8kAsm文件夹,点击S1.ASM文件,单击“确定”即可装入源文件,再单击工具栏中编译,即可完成源文件自动编译、装载目标代码功能,再单击“调试”中“连续运行”或工具图标运行,即开始运行程序。

(2)运算结果保留在内存4100H~4102H单元中,点击DICE-8086K软件中存贮器RAM窗口,输入RAM的起始地址4100、4101、4102,单元内容应为FD、FF、02。

脱机模式:⑴在P.态下,按SCA L键,输入2CA0,按EXEC键。

⑵复位RST键,运算结果保留在内存4100H~4102H单元中,共内容分别为:FD、FF、02,低位在前,高位在后,具体操作方法:输入键[4100]→[ME]→[NX]→[NX]。

五、实验程序清单CODE SEGMENT ;S1.ASM-->BIN ADDASSUME CS:CODEORG 2CA0H ;this is a program of addSTART: CLCMOV SI,4000H ;result in [4100]MOV [SI],0ffffH MOV [SI+2],0ffffH MOV [SI+4],0ffffH MOV A X,0000H MOV [SI+102H],AX MOV A X,[SI]ADD AX,[SI+2] ADC [SI+102H],0000 ADD AX,[SI+4] MOV [SI+100H],A X ADC [SI+102H],0000 JMP $CODE ENDSEND STA RT实验二A/D转换实验一、实验目的了解模/数转换基本原理,掌握A DC0809的使用方法。

微机原理与接口技术实验报告一

微机原理与接口技术实验报告一

微机原理与接口技术实验报告(一)实验内容一:1、实验目的: 考察对内存寻址方式、8086指令的理解内存中的数据排列如上表所示,各寄存器内容如下DS=2100H ES=2111H SS=2000H BX=106H CX=3H SI=106H DI=12H BP=1100H SP=1100HFR=3402H (FR 标志寄存器,FR 中的DF -字符串操作方向位为1)在执行下列指令后,写出寄存器AX中的内容 0) pop ax; AX= 1) mov ax,bx; AX= 2) mov ax,[bx];AX= 3) mov ax,102H;AX= 4) mov ax,[102H];AX= 5) mov ax,6[SI];AX= 6) lea ax,6[BX][DI];AX= 7) mov ax,[BP+DI];AX= 8) rep lodsw;AX= , 还需写出SI=2、实验内容: (1)开始菜单下选择运行,输入cmd 回车,在开启的窗口中输入debug 后回车,进入程序输入环境(2)利用r 指令显示当前各寄存器储值并按照上文中的寄存器值进行修改 结果如下:物理地址 内容(字节) 物理地址 内容(字节)21100H BEH 21110H 99H 21101H 02H 21111H 00H 21102H 01H 21112H E8H 21103H 8BH 21113H 7EH 21104H 44H 21114H E0H 21105H 02H 21115H 74H 21106H 29H 21116H 06H 21107H 44H 21117H E8H 21108H 04H 21118H 17H 21109H 9CH 21119H 01H 2110AH 50H 2111AH ACH 2110BH E6H 2111BH EBH 2110CH 99H 2111CH 34H 2110DH C6H 2111DH 00H 2110EH 06H 2111EH 30H 2110FHE8H2111FH0BH(3)d指令查看21100H——2111FH内存单元的内容(4)e指令对该段内存单元进行赋值(5)a指令按顺序输入要求中列出的指令(6)u指令进行反汇编(7)t指令(跟踪命令)逐条运行指令,观察记录指令运行结果3、实验结果0) pop ax; AX=02be1) mov ax,bx; AX=01062) mov ax,[bx];AX=44293) mov ax,102H;AX=01024) mov ax,[102H];AX=8b015) mov ax,6[SI];AX=c6996) lea ax,6[BX][DI];AX=011e7) mov ax,[BP+DI];AX=7ee88) rep lodsw;AX=4429, SI=0108实验内容二:1、实验目的:熟悉masm for windows 软件的应用,体会汇编程序的编写、编译、执行及调试等各个环节。

微机原理与接口技术实验报告

微机原理与接口技术实验报告

微机原理与接口技术实验报告引言微机原理与接口技术是计算机科学与技术专业的一门重要课程,通过实验的方式来深入理解微机原理和接口技术的原理和应用。

本实验报告将详细介绍我们在实验中所学到的内容和实验结果。

一、实验目的微机原理与接口技术实验的主要目的是让学生通过实验来了解和掌握微机系统的结构与工作原理,以及接口技术的基本原理和应用。

通过实验,我们可以加深对微机原理和接口技术的理解,并能够熟练操作相应的实验设备和软件。

二、实验内容本次实验主要包括以下几个方面的内容:1. 微机系统的组成与原理:了解微机系统的基本组成部分,包括微处理器、存储器、输入输出设备等,并学习它们的工作原理和相互之间的联系。

2. 微机系统的调试与测试:学习使用调试工具和测试设备来验证微机系统的正确性和稳定性,通过调试和测试来发现和排除系统中的问题。

3. 接口技术的原理与应用:了解各种接口技术的原理和应用,包括并行接口、串行接口、USB接口等,学会设计和实现简单的接口电路。

4. 接口电路的设计与调试:通过实际设计和调试接口电路,加深对接口技术原理的理解,并能够解决实际问题。

三、实验过程及结果在实验中,我们首先学习了微机系统的基本结构和工作原理,并通过实际操作,搭建了一个简单的微机系统。

通过调试和测试,我们验证了系统的正确性和稳定性。

接着,我们学习了各种接口技术的原理和应用。

我们以并行接口为例,设计了一个简单的并行接口电路,并通过实验验证了其正确性。

同时,我们还学习了串行接口和USB接口的原理,并了解了它们在实际应用中的重要性。

在接口电路的设计和调试过程中,我们遇到了一些问题,例如信号传输的稳定性、接口电路的兼容性等。

通过分析和调试,我们逐步解决了这些问题,并取得了令人满意的实验结果。

四、实验总结通过本次实验,我们深入了解了微机原理和接口技术的基本原理和应用。

通过实际操作和调试,我们不仅掌握了微机系统的组成和工作原理,还学会了设计和实现简单的接口电路。

微机原理与接口技术实验报告

微机原理与接口技术实验报告

微机原理与接口技术实验报告实验目的:本次实验旨在熟悉并掌握微机原理与接口技术的相关知识,通过实例操作和分析实验数据,加深对微机原理与接口技术的理解。

一、实验器材与软件1. 硬件器材:计算机主机、外设设备2. 软件工具:操作系统、编程软件二、实验步骤及结果分析1. 实验1:计算机开机自检在实验中,通过开机启动计算机,观察计算机进行自检的过程。

根据显示屏上的自检信息,可以判断计算机硬件的工作状态。

2. 实验2:串口通信测试在本实验中,通过串口通信实现计算机与外设设备之间的数据传输。

首先,将串口接口连接到计算机主机,然后进行相应的设置,包括波特率、数据位、停止位和校验位等。

在实验中,通过编写相应的程序,实现计算机与外设设备之间的数据交互。

通过观察实验结果,判断串口通信是否正常。

3. 实验3:并口通信测试本实验旨在通过并行口通信实现计算机与外设设备之间的数据传输。

首先,将并行口接口连接到计算机主机。

然后,根据实验要求进行相应的设置,包括数据总线的宽度、传输模式等。

通过编写程序,实现计算机与外设设备之间的数据交互。

观察实验结果,判断并口通信是否正常。

4. 实验4:USB接口测试在本实验中,通过USB接口实现计算机与外设设备之间的数据传输。

首先,将USB接口连接到计算机主机。

然后,在计算机中安装相应的驱动程序。

通过编写程序,实现计算机与外设设备之间的数据交互。

观察实验结果,判断USB接口是否正常工作。

5. 实验5:网络接口测试本实验旨在通过网络接口实现计算机之间的数据传输。

首先,将计算机连接到局域网中的其他计算机。

然后,进行相应的设置,包括IP地址、子网掩码等。

通过编写程序,实现计算机之间的数据交互。

观察实验结果,判断网络接口是否正常工作。

三、实验总结通过本次实验,我对微机原理与接口技术有了更深入的了解,掌握了串口、并口、USB接口和网络接口等常用接口的使用方法。

通过实验的操作和分析,我对接口通信的原理和实现方式有了更详细的了解,对计算机与外设设备之间的数据传输有了更清楚的认识。

微机原理与接口技术实验报告_5

实验二初级程序的编写与调试实验一、实验目的1、熟练掌握DEBUG的常用命令,学会用DEBUG调试程序.2、深入了解数据在存储器中的存取方法,及堆栈中数据的压入与弹出.3、掌握各种寻址方法以及简单指令的执行过程.二、实验内容1.设堆栈指针SP=2000H,AX=3000H,BX=5000H,请编一程序段将AX的内容和BX的内容进行交换.请用堆栈作为两寄存器交换内容的中间存储单元,用DEBUG调试程序进行汇编与调试.程序:MOV AX,3000MOV BX,5000MOV SP,2000PUSH AXPUSH BXPOP AXPOP BXHLT2.设DS=当前段地址,BX=0300H,SI=0002H请用DEBUG的命令将存储器偏移地址300H~304H连续单元顺序装入OAH,OBH,OCH,ODH,OEH.在DEBUG状态下送入下面程序,并用单步执行的方法,分析每条指令源地址的形成过程?当数据传送完毕时,AX中的内容是什么?-E 300 0A,0B,0C,0D,0E-AMOV BX,0300MOV SI,0002MOV AX,BXMOV AX,0304MOV AX,[0304]MOV AX,[BX]MOV AX,0001[BX]MOV AX,[BX][SI]MOV AX,0001[BX][SI] HLT3.设AX=0002H,编一个程序段将AX的内容乘10,要求用移位的方法完成. 程序:MOV AX,0002MOV BX,AXMOV CL,2SHL AX,CLADD AX,BXMOV CL,1SHL AX,CLHLT实验四加法及判断程序的编写与调试一、实验目的1.熟练掌握编写汇编语言源程序的基本方法和基本框架.2.学会编写顺序结构,分支结构和循环结构的汇编程序3.掌握程序中数据的产生与输入输出的方法.二、实验内容1.用汇编语言编写一个加法程序:1325+9839请用ASCII码的形式将加数与被加数存放在数据区DATA1和DATA2中,并将相加结果显示输出.程序:DATA SEGMENTDATA1 DB '5','2','3','1'DATA2 DB '9','3','8','9'DATA ENDSSTACK SEGMENT PARA STACK 'STACK'DB 200 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXLEA SI,DATA1LEA DI,DATA2MOV CX,4MOV AH,0 NEXT:MOV AL,[SI]ADC AL,[DI]ADC AL,AHMOV AH,0AAAADD AL,30HMOV [DI],ALINC DIINC SILOOP NEXTMOV CX,5ADD AH,30HMOV [DI],AH NEXT1:MOV DL,[DI]MOV AH,02INT 21HDEC DILOOP NEXT1MOV AH,4CHINT 21H CODE ENDSEND START2.假设有一组数据:5,-4,0,3,100,-51,请编写一程序,判断:每个数是否大于0?等于0?还是小于0?并输出其判断结果,即即:1当X>0Y=0当X=0-1 当X<0程序:DATA SEGMENTDATA1 DB 5, -4, 0 ,3,100,-51STRING1 DB'Y=1','$'STRING2 DB'Y=0','$'STRING3 DB'Y=-1','$'DATA ENDSSTACK SEGMENT PARA STACK 'STACK'DB 200 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXLEA SI,DATA1MOV CX,6NEXT: MOV AL,[SI]CMP AL,0JZ NEXT1JNS NEXT2JS NEXT3NEXT1: MOV DX,OFFSET STRING2MOV AH,09HINT 21HJMP NEXT4NEXT2: MOV DX,OFFSET STRING1MOV AH,09HINT 21HJMP NEXT4NEXT3: MOV DX,OFFSET STRING3MOV AH,09HINT 21HNEXT4: INC SILOOP NEXTMOV AH,4CHINT 21HCODE ENDSEND START实验五大小写字母互换程序的编写与调试一、实验目的进一步熟悉汇编语言源程序的编写方法及宏汇编程序的使用方法二、实验内容设内存数据区有大小写混合英文ASCII码字母: ‘AbCdEfGChinaAgriculturalUniversity’。

微机原理与接口技术实验报告二

微机原理与接口技术实验报告(二)1、实验内容一:实验目的:(1) 阅读《实验操作.ppt》, 学习汇编工具的使用(2) 学习附录的程序代码, 理解并输入、编译和查错3) 学习利用编译错误信息进行附录的程序修改;(程序包含一个语法错误和一个逻辑错误)4)学习程序流程控制: (条件跳转指令ja jb (call指令, 观察程序执行时堆栈的变化(学会用debug –g命令设置断点);5 )学习程序中有限的寄存器的使用。

2.实验内容:(1)打开masm for windows软件, 在其中输入实验要求附给的程序, 保存后运行, 程序报错:(2)经分析发现, “noneeded”没有定义, 改为“notneeded”后正常运行(3)运行过程中发现当字母或数字个数达到两位数时, 统计结果的各位与十位对调了。

如下图, 字母数应为13, 但显示为31(4)经检查, 发现第80行程序有误, inc指令应改为dec指令。

运行后程序正常, 调试完毕。

如下图程序框图如下:实验内容二:1.实验目的及内容:编写完整程序, 实现功能:统计以下字符串STR中空格的数目, 结果保存在COUNT中, 并把个数在屏幕上显示出来。

STR DB ' AB CDE FG H I J K L MNOPQ RST UV W XYZ 12 34 56 78 9'L EQU $-STRCOUNT DB ?(字符串STR可以从这里直接拷贝到程序中)实验结果:程序如下:dispmsg macro messgemov ah,9lea dx,messgeint 21hendmDATA segmenttishi db 0dh,0ah,'the original string is:' string db ' AB CDE FG H I J K L MNOPQ RST UV W XYZ 12 34 56 78 9' STRINGLEN= $-stringnewline db 0dh,0ahNspace db 0dH,0aH,'Number of char space is:',?,?Nsp db ?,'$'DATA endsSTACK segment stack 'stack'sta db 100 dup(?)stack endsCODE segmentASSUME CS:CODE,DS:DATA,SS:STACK START:MOV AX,seg DATAMOV DS,AXxor cx,cxxor dl,dlmov cl,stringlenlea bx,stringcnt:mov al,[bx]cmp al,' 'jz yesspinc blloop cnt jmp shijinzhiyessp:inc dlinc blloop cntjmp shijinzhishijinzhi:lea bx,Nspmov ah,02hint 21hcall char2asc dispmsg tishiMOV AH,4CHINT 21Hchar2asc procmov dl,10 next: xor ah,ahdiv dladd ah,'0'mov [bx],ahdec bxor al,aljnz nextretchar2asc endpcode endsend startEND START运行结果如下:程序流程图如下:实验中遇到的问题及解决方法:1.汇编语言中寄存器有限, 在使用时注意是否保存寄存器中原有的值, 防止在使用寄存器时将原值改变。

简单的微机原理与接口技术的实验.

data segmentbuf1 db 3,6,2,1内存地址BUF1处存放一有符号的字数组,从中mindb ? 找出最小数存入MIN单元中。

lenequ min-buf1data endscodesegement‘code’assumeds:data,cs:codestart:movax,datamovds,axlea bx,buf1mov cx,len-1mov al,[bx]again:cmp al,[bx+1]jl finishmov al,[bx+1]finish:incbxloop againmovmin,almov ah,4chint 21hcode endsend startdata segmentarraydb 'aaaabca'resultdb ?countequ result-array1.data ends统计STRINGS表中字符A的个数,并code segment 'code'将统计结果保存到RESULT单元中。

assumecs:code,ds:datastart: movax,datamovds,axleabx,arraymovcx,countmov result,0moval,'a'again: cmp al,[bx]jnz nextinc resultnext: incbxloop againmov ah,4chint 21hcode endsend start1.编程判断NUM单元存放数据的正负,若为正,显示‘NUM is a positive number’,否则显示‘NUM is a nonpositive number。

data segmentndb 'num is a nonnegative number!','$'nndb 'num is a positive number!','$'numdw 6data endscode segment 'code'assumecs:code,ds:datastart:movax,datamovds,axmovax,numcmp ax,0jgeisnn leadx,n mov ah,9 int 21h jmp finish isnn:leadx,nn mov ah,9 int 21h finish: mov ah,4ch int 21h code ends end start编程将键盘输入的一个小写字母转换成大写字母显示。

微机原理与接口技术实验报告-全实例代码

实验一上机练习实验目的:1、掌握用编辑软件编辑程序文本的方法。

在DOS环境下,熟练掌握用MASM5.0宏汇编程序对ASM文件进行编译、连接等操作步骤。

2、熟悉用DEBUG调试程序。

实验要求:选取教科书中一典型例题,用编辑软件在PC机中形成ASM文件,然后编译、连接,生成目标文件和可执行文件。

再用DEBUG程序进行调试。

实验步骤:实验程序如下:data segmentary1 db 12,34,45,56,67,78,89,90,18cont1 equ $-ary1 ;ary1的长度sum1 dw ?ary2 db 13h,24h,57h,68h,9ah,0bch,0cdh,0deh,80h,50hcont2 equ $-ary2sum2 dw ?data endscode segmentassume cs:code, ds:datastart: mov ax,datamov ds,axlea si,ary1mov cx,cont1 ;设定循环次数为ary1的个数call sumlea si,ary2mov cx,cont2call summov ah,4ch ;结束程序功能调用4CHint 21hsum proc ;求和程序段,求该段所有数之和xor ax,ax ;ax清零为下面加法准备next1: add al,[si]adc ah,0inc siloop next1mov [si],axret ;返回调用程序sum endp ;程序段结束code endsend start点击“运行”点击“编译成目标文件”,编译成功后,再“运行”=〉“生成可执行文件”,然后运行,即可。

运行成功以后,可进行调试。

点击工具栏的调试按钮,出现调试框。

其命令如下:输入a,进行逐行汇编,输入c,比较两内存块,输入d,内存信息以16进制显示;输入e,修改内存指定的字节;输入f,可以预置一段内存;输入g,执行程序;输入h,制算术运算;输入i,从指定端口地址输入;输入l,读盘;输入m,内存块传送;输入n,置文件名;输入o,从指定端口地址输出;输入q,结束DEBUG调试;输入r,显示和修改寄存器;输入s,查找字节串;输入t,跟踪执行;输入u,反汇编;输入w,存盘操作。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DW 64 DUP(?)
SSTACK ENDS
CODE SEGMENT
ASSUME CS:CODE,SS:SSTACK
START: PUSH DS
XOR AX,AX
MOV DS,AX
MOV SI,3500H
MOV DI,3508H
MOV BX,3530H
AA1: MOV AL,[SI] ;READ
ADD AL,[DI] ;ADD
MOV ZH, AX;存高位结果
JMP START;在此行设置断点,以观察变量值
CODEENDS
END START
实验步骤
(1)编写程序,经编译、链接无误后装入系统。
(2)程序装载完成后,点击‘变量区’标签将观察窗切换到变量监视窗口。
(3)点击 ,将变量XH,XL,YH,YL,ZH,ZL添加到变量监视窗中,然后修改XH,XL,YH,YL的值,如图2.13所示,修改XH为0015,XL为65A0,YH为0021,YL为B79E。
PC机一台(windows xp +Wmd86),TD-PITE实验装置或TD-PITC实验装置一套。
实验内容:
80X86指令系统提供了实现加、减、乘、除运算的基本指令,可对表2.2所示的数据类型进行算术运算。
表2.2数据类型算术运算表
数制
二进制
BCD码
带符号
无符号
组合
非组合
运算符
+、-、×、÷
+、-
(4)在JMP START语句行设置断点,然后运行程序。
(5)当程序遇到断点后停止运行,查看变量监视窗口,计算结果ZH为0037,ZL为1D3E。
(6)修改XH,XL,YH和YL的值,再次运行程序,观察实验结果,反复测试几组数据,验证程序的功能。
图2.13变量监视窗口
2.拓展性实验
SSTACK SEGMENT STACKZLDW ?来自Z低位ZHDW ?;Z高位
DATAENDS
CODESEGMENT
ASSUME CS:CODE, DS:DATA
START:MOV AX, DATA
MOV DS, AX
MOV AX, XL
ADD AX, YL;X低位加Y低位
MOV ZL, AX;低位和存到Z的低位
MOV AX, XH
ADC AX, YH;高位带进位加
+、-、×、÷
操作数
字节、字、多精度
字节(二位数字)
字节(一位数字)
.1.二进制双精度加法运算
2.拓展性实验
实验方法、步骤:1.二进制双精度加法运算
计算X+Y=Z,将结果Z存入某存储单元。实验程序参考如下。
本实验是双精度(2个16位,即32位)加法运算,编程时可利用累加器AX,先求低16位的和,并将运算结果存入低地址存储单元,然后求高16位的和,将结果存入高地址存储单元中。由于低16运算后可能向高位产生进位,因此高16位运算时使用ADC指令,这样在低16位相加运算有进位时,高位相加会加上CF中的1。
MOV [BX],AL ;SAVE
INC SI
INC DI
INC BX
LOOPAA1
AA2: JMP AA2
CODE ENDS
END START
实验结果及分析:
1.二进制双精度加法运算
0015 65A0 H
+ 0021 B79E H
= 0037 1D3E H,程序运行结果与实际相符
0016 54BA H
+ 0045 F5A1 H
= 005C 4A5B H,程序运行结果与实际相符
0234 30EB H
+ 12A9 2759 H
= 14DD 5844 H,程序运行结果与实际相符
2.拓展性实验
实验结论:
.二进制双精度加法运算
学会使用Wmd86观察自定义变量的变化情况,以及带进位求和、分段求和的方法。
指导教师批阅意见:
成绩评定:
指导教师签字:
年月日
备注:
注:1、报告内的项目或内容设置,可根据实际情况加以调整和补充。
2、教师批改学生实验报告时间应在学生提交实验报告时间后10日内。
深圳大学实验报告
课程名称:微型计算机技术
实验项目名称:运算类编程实验
学院:
专业:
指导教师:
报告人:学号:班级:
实验时间:
实验报告提交时间:
教务部制
实验目的与要求:
1.掌握使用运算类指令编程及调试方法。
2.掌握运算类指令对各状态标志位的影响及其测试方法。
3.学习使用软件监视变量的方法。
实验设备与环境:
实验程序清单(例程文件名为:A3-1.ASM)
SSTACKSEGMENT STACK
DW 64 DUP(?)
SSTACKENDS
PUBLIC XH, XL, YH, YL, ZH, ZL;设置全局变量
DATASEGMENT
XLDW ?;X低位
XHDW ?;X高位
YLDW ?;Y低位
YHDW ?;Y高位
相关文档
最新文档