微机原理实验指导书(2008-11-11)

合集下载

微机原理实验指导书

微机原理实验指导书

实验一初级程序的编写与调试一、实验目的1、熟练掌握的DEBUG常用命令,学会用DEBUG调试程序;2、深入了解数据在存储器中的存取方法,及堆栈中数据的压入与弹出;3、掌握各种寻址方法以及简单指令的执行过程。

二、实验内容1、设堆栈指针SP=2000H,AX=3000H,BX=5000H,请编一程序段将AX的内容和BX的内容进行交换。

请用堆栈作为两寄存器交换内容的中间单元,用DEBUG调试程序进行汇编与调试。

2、设DS=当前段地址,BX=0300H,SI=0002H,请用DEBUG的命令将存储器偏移地址300H—304H连续单元顺序装入0AH、OBH、0CH、0DH、0EH。

在DEBUG状态下送入下面程序,并用单步执行的方法,分析每条指令源地址的形成过程。

当每条数据传送完毕时,AX中的内容是什么。

程序清单如下:MOV AX,BXMOV AX,0304HMOV AX,[0304H]MOV AX,[BX]MOV AX,0001[BX]MOV AX,[BX][SI]MOV AX,0001[BX][SI]HLT3、设AX=0002H,编一个程序段将AX的内容乘10,要求用移位的方法完成。

三、实验要求1、实验前要做好充分准备,包括汇编程序清单、调试步骤、调试方法,对程序结果的分析等。

2、本实验要求在PC机上完成。

3、本实验只要求在DEBUG调试程序状态下进行,包括汇编程序,调试程序,执行程序。

4、编程提示:(1)、实验内容1将两个寄存器内容进行交换时,必须有一个中间寄存器才能进行内容的交换。

如果用堆栈作为中间存储单元,必须遵循先进后出的原则。

(2)、实验内容2[1] 其中数据段寄存器中的段地址为进入DEBUG状态后系统自动分配的段地址。

[2] SI和BX的初值可在DEBUG的状态下,用R命令装入,也可以在程序中用指令来完成。

[3] 用T命令执行程序,可进行单步跟踪执行,每执行一条指令就可以看到各寄存器的状态,也可用R命令直接调出寄存器,来检查各寄存器内容是否正确。

微机原理实验指导书定稿

微机原理实验指导书定稿

实验一二进制码转换为BCD码一、实验目的1、掌握数码转换基本方法,加深对数码的理解。

2、用于十进制BCD码显示。

二、实验内容将AX的内容转换为十进制BCD码。

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

⑵复位RST键,由于AX中给定数为0FFFF,查看BCD码结果保留在4100H~4104H单元中,故其值应为06、05、05、03、05。

脱机模式:⑴在P.态,按SCAL键,输入2CE0,按EXEC键。

⑵复位RST键,由于AX中给定数为0FFFF,查看BCD码结果保留在4100H~4104H 单元中,故其值应为06、05、05、03、05。

五、实验程序清单;将AX拆为5个BCD码,并存入RESULT开始的5个单元DA TA SEGMENT A T 0ORG 4000HRESULT DB 5 DUP(?)DA TA ENDSCODE SEGMENTASSUME CS:CODE, DS:DATA ORG 2CE0HSTART PROC NEARMOV AX, DATAMOV DS, AXMOV DX,0000HMOV AX, 65535MOV CX, 10000DIV CXMOV RESULT, AL ;除以10000, 得WAN位数MOV AX,DXMOV DX,0000H MOV CX, 1000DIV CXMOV RESULT+1, AL ; 除以1000, 得QIAN位数MOV AX,DXMOV DX,0000HMOV CX, 100DIV CXMOV RESULT+2, AL ; 除以100, 得BAI位数MOV AX,DXMOV DX,0000HMOV CX, 10DIV CXMOV RESULT+3, AL ; 除以10, 得SHI位数MOV RESULT+4, DL ; 得GE位数JMP $CODE ENDSEND START实验二 BCD 码转换为二进制码一、实验目的1、掌握BCD 码到二进制码的转换方法。

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

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

实验一二进制多位加法运算一、实验目的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的使用方法。

微机原理实验指导书

微机原理实验指导书

微机原理实验指导书微机实验一DEBUG软件的使用―、实验目的1.学习DEBUG软件的基本使用方法。

2.掌握8088/8086的寻址方式。

3.掌握数据传送、算术运算逻辑运算等类指令的基本操作。

二、实验内容与步骤本实验进行前必须保证系统盘上有DEBUG.EXE文件。

在DOS环境下执行DEBUG命令就在屏幕上显示DEBUG提示符:“-”(短划线)。

D:\*****GK ;以下在字符下加下划线表示键入的内容,K代表回车1.装载文件――(N、L命令)-N EXSE2_3.EXE K ;程序命名为EXSE2_3.EXE -LK2.反汇编命令(U命令) -U K3.显示当前环境和寄存器内容(R命令)-RK4.以十六进制和ASCII码形式显示内存单元内容(D命令)-DK5.修改寄存器内容-R cxK ;修改完后检查是否已修改6.输入数据(可以是指令的机器码或操作数)――即修改内存内容(E 命令)-E 段地址:偏移地址K ;修改完后检查是否已修改7.程序输入――汇编命令(A命令) 输入程序应注意以下几点:(1)输入的数字必须是十六进制数,并且不输入H。

(2)分号后面的内容(注释)不要输入。

(3)不输入标号,条件转移指令中的标号用偏移地址代替。

-AK;以下用K代表回车键,下面加下划线部分代表要键入的内容。

(可以是任意程序)。

重新回到DEBUG提示符“-”状态,表示汇编命令已结束。

8.执行机器指令程序到指定断点――(G命令)-G=段地址:偏移地址(起始)段地址:偏移地址(指定断点)9.程序调试练习修改并调试以下程序,使之完成*****H开始的内存单元中存入31个先自然递增然后又自然递减的数据(00H~0FH~00H)的功能。

程序从CS:0100H开始存放。

调试完成后程序命名为PCS1.EXE并存盘。

程序如下:;PCS1MOV AX,3000H MOV DS,AX MOV SI,0 MOV CL,0FH XOR AX,AX L1:MOV [SI],AL1微机INC AL DEC CL JNZ L1MOV CX,10H L2:MOV [SI],AL INC SI DEC AL LOOP L2 INT 20H 步骤:(1)用A命令输入程序;(2)用反汇编U命令显示程序及目标码:(3)存盘程序命名为PCSl.EXE;(4)用断点执行G命令执行程序到INT 20H指令(不执行INT 20H指令);(5)用D命令检查程序执行后31个数是否已写入存储器3000H:0H 中。

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

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

微机原理与接口技术实验指导书电子与电气工程系2010 年10 月目录准备知识 (1)实验一汇编语言程序的输入、汇编、连接与运行 (4)实验二顺序程序的设计 (6)实验三分支程序的设计 (7)实验四冒泡法程序设计 (9)实验五循环程序设计 (12)实验六菜单程序设计 (14)附录一 Debug 的主要命令 (17)附录二 ASCII码表 (24)附录三 DOS功能调用一览表 (26)准备知识一、程序的编辑、汇编与连接1、编辑源程序汇编语言上机操作过程与某些高级语言上机操作过程类似,程序实际人员先调用一个文字编辑程序,例如NE,将汇编程序输入计算机,建立以ASM为扩展名的源程序文件。

格式为:EDIT SAMPLE.ASM。

源程序按段组织数据段、附加段、堆栈段和代码段。

为便于对程序的阅读和查错,希望各语句的四个字段(标号,助记符,操作数,注释)排列整齐。

一个源程序开头常常用标题伪指令说明本程序的名字或功能。

2、汇编与链接汇编就是把汇编语言编制的源程序翻译成机器语言的目标程序。

汇编程序MASM是一个宏汇编程序,它包括宏功能处理。

源程序经MASM汇编后,可产生三个文件:以扩展名为.OBJ的目标程序,以扩展名为.LST的列表程序,以扩展名为.CRF的交叉程序。

格式为:MASM SAMPLE源程序经过汇编后产生的目标程序,需经过连接程序LINK后才能运行。

格式为:LINK SAMPLE连接程序Link把一个或多个独立的目标程序模块联结成一个可浮动代码的执行文件(扩展名为.EXE)。

被连接的目标文件可以是由MASM汇编生成的,也可以是高级语言经编译后生成的。

注意:即使不需连接任何其他目标文件,对单一的目标文件也必须经过LINK这一步,否则不能生成可执行文件。

经过汇编——连接后,汇编语言源程序基本被翻译成对应的机器码模块,只是整个模块装入内存的具体地址尚未确定,因此涉及段地址的指令机器码还未最后“定型”,故此模块被称为浮动代码模块。

微机原理实验指导书

微机原理实验指导书

实验一 DOS命令与汇编源程序输入、汇编、连接、运行一、实验目的掌握在计算机上运行汇编语言程序的整个操作过程。

学会将自己编制的汇编语言源程序用EDIT编辑程序输入计算机并存盘;学会用MASM 宏汇编程序对汇编语言源程序进行汇编形成二进制目标文件;学会用LINK连接程序对二进制目标文件连接形成可执行文件;学会运行经汇编和连接后形成的可执行文件;学会用DEBUG调试程序运行和调试可执行文件。

二、实验设备1、PC系列不低于80286档次的微型机;2、DOS3.3以上版本的操作系统;3、EDIT,MASM,LINK,DEBUG执行程序。

三、实验步骤1、用EDIT编辑汇编源程序(1)MS-DOS Editor的启动与退出Editor是在DOS系统提示符下启动,其命令格式为:C:EDIT [Path] [filename]在编辑完成后,选择屏幕菜单的File命令(按“ALT+F”键)中的Exit项即可退出Editor。

(2)建立文本文件在MS-DOS Editor的屏幕菜单栏中File命令就是对文本文件的建立、存储和打印的操作。

A.建立文件(New)打开屏幕菜单栏中File下拉菜单,选择New项。

B.编辑文件将写好的汇编语言源程序输入到编辑文本区。

输入时,一行结束后按回车键(Enter)换行。

C.保存文件(Save)打开屏幕菜单栏中File下拉菜单,选择Save项在弹出的对话框中键入文件名。

如果要把文件保存到非默认路径下,则在键入文件名的同时键入路径。

D.打开文件(Open)打开屏幕菜单栏中File下拉菜单,选择Open项。

该窗口中有三个区可以选择要打开的文件:文件名区:可以直接键入要打开的文件名;文件表区:文件表中列出要打开的所有文件名,供用户选择;目录/磁盘区:键入的文件名是哪个磁盘目录中的,在该区中选择。

在Open对话框中用“Tab”或“Shift+Tab”键选择各区。

选完后按“OK”确定。

2.MASM宏汇编程序的使用方法(1)命令格式和功能命令格式:MASM文件名功能:对汇编语言源程序进行汇编形成二进制目标文件(2)操作过程在DOS下,将目录切换到汇编语言所在目录下,然后调入MASM宏汇编程序。

电气2008微机原理实验指导书

电气2008微机原理实验指导书

《微机原理与程序设计》
实验指导书
实验一:熟悉汇编语言程序的开发环境
实验二:分支程序的设计
试验三:循环程序的设计
试验四:子程序设计
实验五:混合程序设计
实验指导老师:于仲安、张振利
自动化与电气工程实验中心
2010.10.15
实验一熟悉汇编语言程序开发环境
一.实验目的
1.熟悉在汇编语言程序的编辑、汇编、连接、调试和运行的过程;
2.熟悉汇编过程中一些常见出错信息;
3.掌握简单的DEBUG调试命令。

二.实验内容
1. 编写一个简单的汇编语言程序,要求程序运行后在平屏幕上显示字符串:
my name is ×××
其中×××为你自己的名字的汉语拼音,在数据段中定义。

2. 用DEBUG命令进行调试,掌握简单的命令调试程序
三、编程提示
1.在数据段中定义以上的字符串;
2.利用DOS功能调用输出字符串
四.实验报告
编写实验内容1的实验程序并记录实验结果。

微机原理实验指导书_第2章

微机原理实验指导书_第2章
第2章 基础实验
2.1 实验一
一、 实验目的
掌握 TDN86/88 教学实验系统的基本操作。
系统认识实验
二、 实验设备
TDN86/88 教学实验系统一套。
三、 实验内容和步骤
内容:
程序的编辑、汇编、连接、装载与简单调试。
实验程序:
下面的实验程序将数据段内偏移地址为 3500H 开始的区域用组合 BCD 编码的方 式建立十进制数 0~15 共 16 个数据。注意:在程序中未定义数据段,实验调试操作时 应使 DS=0000H。 STACK SEGMENT STACK ; 定义堆栈段 DW 64 DUP( ? ) STACK ENDS CODE SEGMENT ; 定义代码段 ASSUME CS:CODE START: MOV DI,3500H ; 设定数据区的首地址 MOV CX,0010H ; 定义数据长度 MOV AX,0000H ; 初始数据为 0 (各标志和数的编码) SAHF ; 清标志(因为 AH=0) A1: MOV [DI],AL ; 保存当前的数的编码 INC DI ; 修改地址指针,指向下一单元 INC AX ; 修改数据 DAA ; 十进制调整(生成新数的编码) LOOP A1 ; 循环,重复建立所有数的编码。 A2: JMP A2 ; 死循环,程序陷阱。 CODE ENDS END START
四、 实验报告要求
1、 概要记录在实验过程中的操作过程及其结果(包括出错的操作) 。 2、 工整书写实验程序并画出其流程图。 3、 回答下述问题: 1) 在使用 T 命令调试程序时,什么时刻使标志位 A=1,其原因是什么? 2) 在使用 GB 命令调试程序时,断点 200AH 和 2011H 分别是哪两条指令,若 要在 DAA 指令处设置断点,该进行怎样的操作? 3) 在使用 G 命令调试程序时,两次的现象有何不同,为什么? 4、 根据实验情况,分析三种调试方法的优缺点,总结调试程序的基本原则。

微机原理实验指导书

微机原理实验指导书

实验一数据传送实验目的:1.熟悉8086指令系统的数据传送指令及8086的寻址方式。

2.利用TurboDebugger调试工具来调试汇编语言程序。

实验任务:1.通过下述程序段的输入和执行来熟悉TurboDebugger的使用,并通过显示器屏幕观察程序的执行情况。

练习程序段如下:MOVBL,08HMOVCL,BLMOVAX,03FFHMOVBX,AXMOVDS:[0020H],BX2.用以下程序段将一组数据压入(PUSH)堆栈区,然后通过不同的出栈顺序出栈,观察出栈后数据的变化情况。

压栈程序段如下:MOVAX,0102HMOVBX,0304HMOVCX,0506HMOVDX,0708HPUSHAXPUSHBXPUSHCXPUSHDX出栈程序段请自行编写(用不同的出栈顺序)。

3.指出下列指令的错误并加以改正,上机验证之。

(1)MOV[BX],[SI](2)MOVAH,BX(3)MOVAX,[SI][DI](4)MOVBYTEPTR[BX],2000H(5)MOVCS,AX(6)MOVDS,2000H4.设置各寄存器及存储单元的内容如下:(BX)=0010H,(SI)=0001H(10010H)=12H,(10011H)=34H,(10012H)=56H,(10013H)=78H(10120H)=0ABH,(10121H)=0CDH,(10122H)=0EFH说明下列各条指令执行完后AX寄存器中的内容,并上机验证。

(1)MOVAX,1200H(2)MOVAX,BX(3)MOVAX,[0120H](4)MOVAX,[BX](5)MOVAX,0110H[BX](6)MOVAX,[BX][SI](7)MOVAX,0110H[BX][SI]5.将DS:1000H字节存储单元中的内容送到DS:2020H单元中存放。

试分别用8086的直接寻址、寄存器间接寻址、变址寻址、寄存器相对寻址传送指令编写程序段,并上机验证结果。

微机原理实验指导书

微机原理实验指导书

目录实验一并行接口8255应用实验 (1)实验二交通灯模拟控制实验 (5)实验三可编程定时器8254应用实验 (9)实验四8254控制继电器实验 (13)实验五DAC0832数模转换实验 (17)实验六ADC0809模数转换实验 (21)实验七串行通信8251应用实验 (25)实验一并行接口8255应用实验一、实验目的1.掌握8255工作方式0的使用方法;2.掌握8255I/O口的输入输出使用方法;3.了解8255、电平开关、LED发光二极管的电路连接。

二、实验内容1、逻辑电平开关和LED显示电路如图1-1所示,8255的电路连接如图1-2所示。

2、利用8255C口作为并行数据的输入端(逻辑电平开关实现),A口作为并行数据的输出端(LED显示电路实现),当电平开关拨到上方时对应发光二极管亮,拨到下方时对应发光二极管灭,编写程序。

图1-1 逻辑电平开关和LED显示电路图1-2 8255接线电路三、接线方案PC0~PC7/8255 接K0~K7/逻辑电平开关PA0~PA7/8255 接L0~L7/LED显示CS/8255 接Y1/IO地址图1-3实验线路四、编程提示及流程图1、A口地址—288H;B口地址—289H;C口地址—28AH;8255控制寄存器端口地址—28BH。

2、参考程序流程图如图1-4所示。

图1-4 参考程序流程图五、实验步骤1、连接USB通信电缆和电源线;2、根据图1-3实验线路进行电路连接;3、打开“HQFC-A微机接口”应用程序,新建或打开实验程序;4、点击“编译”,并确保实验程序没有语法错误;5、点击“构建”,将目标文件生产可执行文件(后缀为EXE);6、点击“重构运行”,可执行文件(后缀为EXE)下载到实验设备中运行;7、观察实验现象,并记录。

若实验现象有误请重复第4~6步。

六、参考程序;*******************************;;* 8255方式0的C口输入,A口输出 *;;*******************************;data segmentio8255a equ 288hio8255b equ 28bhio8255c equ 28ahdata endscode segmentassume cs:codestart:mov ax,datamov ds,axmov es,axmain:mov dx,io8255b ;设8255为C口输入,A口输出mov al,() ;计算控制字out dx,alinout: mov dx,() ;从C口输入一数据in al,dxmov dx,() ;从A口输出刚才自C口out dx,al ;所输入的数据jmp inout ;跳转,则继续自C口输入,A口输出code endsend start七、思考题1、根据程序要求补充实验程序,并执行程序观察现象;2、修改程序,电平开关拨到上方时发光二极管灭,拨到下方时发光二极管亮。

微机原理实验指导书

微机原理实验指导书

微机原理及其接口技术实验指导书目录第一章汇编语言程序上机实验快览 (1)1.1汇编语言程序上机应具备的工具软件 (1)1.2调试程序(DEBUG)功能简介 (1)1.3预习报告格式 (3)1.4实验报告格式 (3)第二章软件实验 (4)实验一D EBUG程序的使用 (4)实验二汇编语言上机环境及基本步骤 (8)实验三两个多位十进制数相加的实验 (11)实验四循环结构程序设计 (14)实验五数组排序实验 (15)实验六子程序设计 (16)第三章硬件实验 (19)3.1DICE-8086K实验箱使用说明 (19)3.2系统安装与使用 (21)实验一存储器读写实验 (22)实验二8259单级中断控制器实验 (25)实验三8255A并行口实验 (31)实验四定时器/计数器 (33)实验五数码管显示实验 (35)第一章汇编语言程序上机实验快览1.1汇编语言程序上机应具备的工具软件汇编语言程序上机操作,必须经过文件的“建立-汇编-连接-执行”四个阶段。

因此系统磁盘上还应具备下列工具软件。

1.全屏幕编辑程序。

用以将程序键入内容,经编辑后生成源文件(.ASM)存盘。

常用的编辑程序有EDIT.EXE,SK.EXE,WORD97。

2.宏汇编程序,如MS的MASM.EXE,用以将源文件(.ASM)汇编生成二进制代码的目标文件(.OBJ)、列表文件(.LST)、及符号交叉引用表文件(.CRF)。

3. 连接程序LINK.EXE。

用以将目标文件(.OBJ)与欲使用的库文件(.LIB)及其它目标模块,连接装配生成一个可执行文件(.EXE)、及各段空间分配的列表文件(.MAP)。

4.调试程序。

用以对.EXE或.COM文件进行调试,排错。

值得提出的是,人工输入的现成程序,或自编程序,难免不出现键入错误、疏漏错误、语法错误及逻辑错误。

虽然在静态自查及汇编阶段均可被查出,但程序内在的逻辑功能性错误,还必须借助调试工具,在监测环境下动态运行程序时才能表露出来。

【最新推荐】微机原理实验指导书-实用word文档 (18页)

【最新推荐】微机原理实验指导书-实用word文档 (18页)

本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! ==微机原理实验指导书篇一:微机原理实验指导书(新版)微机原理与接口技术实验指导书主编:王青岳陈超波张晓倩许韫韬西安工业大学电信学院软件实验部分 (1)1 汇编基本原理 .................................................................. . (2)1.1 程序,可直接运行的程序,汇编源程序,汇编 .................................................... 2 1.2 CPU取指令、执行指令的过程 .................................................................. .............. 3 2汇编工具MASM5.0使用方法 .................................................................. .. (3)2.1汇编源程序文件的建立方法 .................................................................. ................... 3 2.2编译阶段................................................................... .................................................. 5 2.3链接阶段................................................................... .................................................. 6 2.4 程序调试阶段 .................................................................. .......................................... 7 3软件实验项目 .................................................................. .. (9)软件实验一清零实验 .................................................................. ................................... 9 软件实验二码制转换实验 .................................................................. ......................... 11 软件实验三数据区移动实验 .................................................................. ..................... 13 软件实验四冒泡法排序实验 .................................................................. ..................... 16 软件实验五存储器校验实验 .................................................................. ..................... 18 软件实验六实时时钟显示实验 .................................................................. .. (19)硬件实验部分 ................................................................211 微机实验系统简介 .................................................................. .......................................... 22 2 实验系统上位机软件使用方法 .................................................................. . (23)2.1 软件启动................................................................... ............................................... 23 2.2 如何使用星研集成环境软件 .................................................................. ................ 23 3 硬件实验项目 .................................................................. .. (32)硬件实验一 8255 PA口控制PB口实验 .................................................................. ... 32 硬件实验二 8255控制交通灯实验 .................................................................. ............ 34 硬件实验三 74HC138译码器实验 .................................................................. ............ 37 硬件实验四 8253方波实验 .......................................................................................... 39 硬件实验五 8259A中断控制器实验 .................................................................. ......... 41 硬件实验六 8250可编程通信实验(与微机) ...............................................................44 硬件实验七简易电子琴实验 .................................................................. ..................... 49 硬件实验八 LED8 * 8点阵实验 .................................................................. . (58)软件实验部分1 汇编基本原理1.1 程序,可直接运行的程序,汇编源程序,汇编程序程序以文件的形式存在,它是由若干条“指令”顺序排列存储构成的。

微机原理实验指导书

微机原理实验指导书

目录目录 (1)实验一ARM汇编基础实验 (3)一.实验目的 (3)二.实验内容 (3)三.预备知识 (3)四.实验设备与工具 (3)五.实验原理 (3)六.实验步骤 (9)七.思考题 (10)实验二ARM控制LED实验 (12)一、实验目的 (12)二、实验内容 (12)三、预备知识 (12)四、实验设备与工具 (12)五、实验原理及说明 (12)六、实验步骤 (14)七、思考题 (14)实验三ARM汇编实现串口通信实验 (15)一.实验目的 (15)二.实验内容 (15)三.预备知识 (15)四.实验设备与工具 (15)五.实验原理 (15)六.实验步骤 (20)七.思考题 (21)实验四基于ARM的嵌入式Linux开发环境建立 (22)一.实验目的 (22)二.实验内容 (22)三.预备知识 (22)四.实验设备与工具 (22)五.实验原理与说明 (22)六.实验步骤 (24)七、思考题 (27)实验五基于ARM的模块方式驱动程序实验 (28)一.实验目的 (28)二.实验内容 (28)三.预备知识 (28)四.实验设备与工具 (28)五.实验原理与说明 (28)六.实验步骤 (32)七. 思考题 (35)实验六基于ARM的键盘及数码管驱动实验 (36)一.实验目的 (36)二.实验内容 (36)三.预备知识 (36)四.实验设备与工具 (36)五.实验原理与说明 (36)六.实验步骤 (42)七. 思考题 (42)实验七基于ARM的LCD驱动程序设计实验 (43)一.实验目的 (43)二.实验内容 (43)三、预备知识 (43)四、实验设备及工具 (43)五.实验原理与说明 (43)六.实验步骤 (49)实验八基于ARM的触摸屏驱动程序设计实验 (52)一.实验目的 (52)二.实验内容 (52)三.预备知识 (52)四.实验设备与工具 (52)五.实验原理与说明 (52)实验九SD卡读写及文件系统设计实验 (61)一、实验目的 (61)二、实验内容 (61)三、预备知识 (61)四、实验设备及工具 (61)实验十AC97音频驱动及应用实验 (74)一.实验目的 (74)二.实验内容 (74)三.预备知识 (74)四.实验设备与工具 (74)五.实验原理与说明 (74)六.实验步骤 (77)实验十一以太网通讯实验 (78)一、实验目的 (78)二、实验内容 (78)三、预备知识 (78)四、实验设备及工具 (78)五、实验原理及说明 (78)六、思考题 (85)实验一ARM汇编基础实验一.实验目的1.掌握ARM汇编指令及ARM汇编语言编程2.学习掌握C语言与汇编语言混合编程3.熟练使用ARM处理器平台调试工具RVDS进行程序调试操作二.实验内容1.ARM汇编语言编程实现1+2+...+N功能2.ARM汇编语言实现冒泡算法的程序3.C语言程序调用汇编语言程序的实验(实现字符串拷贝功能)4.汇编语言程序调用C语言程序的实验5.上述程序的编译(汇编)、调试和运行验证三.预备知识1.C语言、ARM汇编语言2.RVDS调试工具的使用四.实验设备与工具硬件:ARM嵌入式开发平台,PC机Pentium100以上软件:Windows操作系统,RVDS软件五.实验原理1.自然整数累加程序自然数累加的算法基本过程很简单,就是使用寄存器保存需累加的变量和累加结果,其算法参考流程图如下:2.冒泡算法简介冒泡算法的基本思想:将待排序的元素(数据)看作是竖着排列的“气泡”,较小的元素比较轻,从而要往上浮。

微机原理实验指导书

微机原理实验指导书

微机原理及程序设计实验指导书班级:姓名:学号:指导老师:完成日期:微机原理实验实验要求及运行环境交打印版实验报告,实验要求:实验成绩百分制(总分100分)实验预习(30分)实验过程(40分)提前预习,标好程序注释,修改好程序;10分个人按要求独立完成,填好实验结果,按时交实验报告20分不做与本实验无关的事(如玩游戏、聊天、打电话、听音乐等)10分不得缺席,实验签名,不代他人签名10分带走自己的垃圾,保持实验室卫生,电脑设备桌椅摆设整齐,保管好个人物品5分按秩序进出实验室,不拥挤,注意安全,爱护设备,保证设备完好5分实验结果,实验中经老师检查过10分实验报告(30分)报告按统一格式要求填写,包括:课程名称、姓名、学号、班级任课老师等5分实验报告包括实验目的、实验内容、程序框图、程序清单、实验要求5分读懂程序加注释(每句注释10+分段注释5)(手写)15分程序修改,实验要求的完成及结果5分2、实验运行环境在电脑中装ASM Masm for windows 集成实验环境2008。

双击图标打开ASM MasM for windows 集成实验环境运行工作界面,输入实验程序代码,调试、改错、保存、运行、查看结果,进行记录。

运行结果显示:实验一两个多位十进制数相加的实验一、实验目的1、学习数据传送和算术运算指令的用法。

2、熟悉在PC机上建立、汇编、链接、调试和运行8088汇编语言程序的过程。

二、实验内容将两个多位十进制数相加。

要求被加数均以ASCII码形式各自顺序存放在以DA TA1和DA TA2为首的5个内存单元中(低位在前),结果送回DATA1处。

三、程序框图四、程序清单CRLF MACRO ;宏定义,宏名:CRLFMOV DL, 0DH ;把0DH给DLMOV AH, 02H ; 把02H给AHINT 21H ;系统功能调用——实现回车功能MOV DL, 0AH ;把0AH给DLMOV AH, 02H ; 把02H给AHINT 21H ;系统功能调用——实现换行功能ENDM ;宏定义结束——本段实现回车换行功能DATA SEGMENT;数据段定义,段名DA TADATA1 DB 33H, 39H, 31H, 37H, 34H(, 3);变量DA TA1中装入加数DATA2 DB 36H, 35H, 30H, 38H, 32H;变量DATA2中装入被加数DATA ENDS;数据段定义结束——本段实现了两个数据的定义STACK SEGMENTSTA DB 20 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE, DS:DATA, SS:STACK, ES:DATASTART: MOV AX, DATAMOV DS, AXMOV AX, STACKMOV SS, AXMOV AX, TOPMOV SP, AXMOV SI, OFFSET DA TA2MOV BX, 05 ;06CALL DISPLCRLFMOV SI, OFFSET DA TA1MOV BX, 05 ;06CALL DISPLCRLFMOV DI, OFFSET DATA2CALL ADDAMOV SI, OFFSET DA TA1MOV BX , 05 ;06 |CALL DISPLCRLFMOV AX, 4C00HINT 21HDISPL PROC NEARDS1: MOV AH, 02MOV DL, [SI+BX-1]INT 21HDEC BX ;BX-1JNZ DS1 ;相等则转移RETDISPL ENDPADDA PROC NEARMOV DX, SIMOV BP, DIMOV BX, 05 ;06 | 07AD1: SUB BYTE PTR [SI+BX-1] , 30HSUB BYTE PTR [DI+BX-1] , 30HDEC BXJNZ AD1MOV SI, DXMOV DI, BPMOV CX, 05 ;06CLCAD2: MOV AL, [SI]MOV BL, [DI]ADC AL, BLAAAMOV [SI] , ALINC SIINC DILOOP AD2MOV SI, DXMOV DI, BPMOV BX, 05AD3: ADD BYTE PTR [SI+BX-1], 30HADD BYTE PTR [DI+BX-1], 30HDEC BXJNZ AD3RETADDA ENDPCODE ENDSEND START五、实验要求1.读懂源程序,写出源程序注释。

微机原理实验指导书(注释版修正版)-1

微机原理实验指导书(注释版修正版)-1

微机原理实验指导书(版本0.1)余有灵副教授控制科学与工程系2007年11月13日说明本实验指导书是依据西安唐都科教仪器公司的产品手册编制,在实验中心相关领导和实验工作人员的帮助下完成的,在此表示感谢。

实验一 显示程序实验1. 实验目的(1) 掌握在PC 机上以十六进制形式显示数据的方法。

(2) 掌握部分DOS 功能调用使用方法。

(3) 熟悉Tddebug 调试环境和Turbo Debugger 的使用。

2. 实验设备PC 微机一台。

3. 实验内容及说明一般来说,有很多程序需要显示输出提示运行的状况和结果,有的还需要将数据区中的内容显示在屏幕上。

本实验要求将指定数据区的数据以十六进制数形式显示在屏幕上,并通过DOS 功能调用完成一些提示信息的显示。

实验中可使用DOS 功能调用(INT 21H )。

(1) 显示单个字符输出 入口:AH=02H 调用参数:DL=输出字符 (2) 显示字符串 入口:AH=09H 调用参数:DS:DX=串地址,’$(3) 键盘输入并回显 入口:AH=01H 返回参数:AL=输出字符 (4) 返回DOS 系统入口:AH=4CH调用参数:AL=返回码4. 实验步骤(1) 运行Tddebug 软件,选择Edit 菜单,根据实验内容的描述编写实验程序,本实验显示部分参考实验流程如图2-1-1示。

(2) 使用Compile 菜单中的Compile 和Link 对实验程序进行汇编、连接。

(3) 使用Rmrun 菜单中的Run ,运行程序,观察运行结果。

(4) 使用Rmrun 菜单中的Debug ,调试程序,观察调试过程中,数据传输指令执行后,各寄存器及数据区的内容。

(5) 更改数据区中的数据,考察程序的正确性。

图1 显示程序实验流程图5. 参考程序清单;显示程序实验STACK1 SEGMENT STACKDW 256 DUP(?)STACK1 ENDSDATA SEGMENT MES DB 'Press any key to exit!',0AH,0DH,0AH,0DH,'$' MES1 DB 'Show a as hex:',0AH,0DH,'$' SD DB'a'16位段模式DATA ENDSCODE SEGMENT USE16ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AXMOV ;显示退出提示MOV AH,09HINT 21HMOV DX,OFFSET MES1 ;show messageMOV AH,09HINT 21HMOV SI,OFFSET SDMOV AL,DS:[SI]AND AL,0F0H;取高4位SHR AL,4CMP AL,0AH ;是否是A 以上的数JB C2ADD AL,07H C2:ADD AL,30HMOV DL,AL ;show characterMOV AH,02HINT 21HMOV AL,DS:[SI]AND AL,0FH ;取低4位CMP AL,0AHJB C3ADD AL,07H C3:ADD AL,30HMOV DL,AL ;show characterMOV AH,02HINT 21HKEY:MOV AH,1 ;判断是否有按键按下?INT 16HJZ KEY C2也是一个标号,可以用跳转循环指令直接跳到这个标号所在的代码行执行MOV AX,4C00H ;go back to dosINT 21HCODE ENDSEND START。

《微机原理及应用技术》实验指导书

《微机原理及应用技术》实验指导书
第三步:编译不通过,重新修改(错误类型:源程序语句不合法)
在执行过第二步后,如有出错信息时,就不能跳跃到第四步去,如果强行执行第四步, 将无任何有效结果。
说明:要清楚,在第二步中检测出的错误均为每一条语句的语法或用法错误,它并不能 检测出程序的逻辑设计(语句安排位置)错误,所以就要记好出错的行号。在记录行号后, 就应再次执行第一步,这时的操作应是打开已编好的源程序(以 EDIT 为例:在 DOS 提示符 下键入:
3
《微机原理》实验指导书
段寄存器 CS,DS,ES 和 SS 均指向 DEBUG 末尾的第一个段。 IP 寄存器置为 0100H。栈指针 SP 指向尾部或装入程序的暂存部分的底部。 其余寄存器皆取零值,但若用户调用时含文件说明,则 CX 含文件长度(长度大于
64K 时 BX 含长度的高位);标志为各自的复位值;驱动器传送地址在代码段位移 80H 处。 注意:若 DEBUG 装入扩展名为.EXE 的文件,则 DEBUG 需重定位且设置段寄存器指示器为 文件中所定义的值。但 DS,ES 指向最低可用段处的程序区前缀。BX 和 CX 为文件容量值。 而 .EXE 文件如果在连接时选择了装入内存高处的参数,则该程序装入高处。
溢出 OF 有/无 OV/NV
方向 DF 减/增 DN/UP
中断 IF 开/关 EI/DI
符号 SF 负/正 NG/PL
零 ZF 零/非 ZR/NZ
辅助 AF 有/无 AC/NA
奇偶 PF 偶/奇 PE/PO
进位 CF 有/无 CY/NC
(2)显示指定寄存器内容
例如:-R AX <Enter>
-R F <Enter>
EDIT filename.asm 回车,依据行号进行修改并存盘,再次进行汇编,直至第二步通过 为止。便可继续向下执行第四步。

微机原理实验指导书

微机原理实验指导书

微机原理实验指导书实验一数据传送实验目的:1.熟悉8086指令系统的数据传送指令及8086的寻址方式。

2.利用TurboDebugger调试工具来调试汇编语言程序。

实验任务:1.通过下述程序段的输入和执行来熟悉TurboDebugger的使用,并通过显示器屏幕观察程序的执行情况。

练习程序段如下:MOVBL,08HMOVCL,BLMOVAX,03FFHMOVBX,AXMOVDS:[0020H],BX2.用以下程序段将一组数据压入(PUSH)堆栈区,然后通过不同的出栈顺序出栈,观察出栈后数据的变化情况。

压栈程序段如下:MOVAX,0102HMOVBX,0304HMOVCX,0506HMOVDX,0708HPUSHAXPUSHBXPUSHCXPUSHDX出栈程序段请自行编写(用不同的出栈顺序)。

3.指出下列指令的错误并加以改正,上机验证之。

(1)MOV[BX],[SI](2)MOVAH,BX(3)MOVAX,[SI][DI](4)MOVBYTEPTR[BX],2000H(5)MOVCS,AX(6)MOVDS,2000H4.设置各寄存器及存储单元的内容如下:(BX)=0010H,(SI)=0001H(10010H)=12H,(10011H)=34H,(10012H)=56H,(10013H)=78H(10120H)=0ABH,(10121H)=0CDH,(10122H)=0EFH说明下列各条指令执行完后AX寄存器中的内容,并上机验证。

(1)MOVAX,1200H(2)MOVAX,BX(3)MOVAX,[0120H](4)MOVAX,[BX](5)MOVAX,0110H[BX](6)MOVAX,[BX][SI](7)MOVAX,0110H[BX][SI]5.将DS:1000H字节存储单元中的内容送到DS:2020H单元中存放。

试分别用8086的直接寻址、寄存器间接寻址、变址寻址、寄存器相对寻址传送指令编写程序段,并上机验证结果。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《微机原理及应用》实验指导书张群英编写桂林工学院电子与计算机系2008-11-11目录汇编语言程序设计的实验环境及上机步骤 (3)实验一汇编语言程序上机过程与调试 (17)实验二顺序程序设计 (21)实验三分支程序设计 (22)实验四循环程序设计 (24)实验五子程序设计 (25)实验六显示程序设计 (26)实验七系统认识实验 (29)实验九中断特性及8259应用编程实验 (33)实验十8255并行接口应用实验 (45)实验十一8253定时/计数器应用实验 (50)第一部分:汇编语言程序设计的实验环境及上机步骤1.1汇编语言程序设计的实验环境汇编语言程序设计的实验环境为:80x86系列微型计算机一台机进行汇编语言程序设计所必需的编程工具一套。

目前被广泛使用的编程工具分别来自Microsoft和Borland两家公司。

1.1.1 Microsoft公司的汇编语言程序设计工具◆任意一种文本编辑器——用于编辑生成汇编语言源程序(*.ASM)◆小汇编程序ASM.EXE或宏汇编程序MASM.ESE——用于将汇编语言源程序(*.ASM)翻译成机器语言文件,即目标文件(*.OBJ)◆连接程序LINK.EXE——用于将目标文件连接生成可执行文件(*.EXE)◆调试程序DEBUG.EXE——用于对生成的可执行文件(*.EXE)进行逻辑错误检查。

1.1.2 Borland公司的Turbo系列汇编语言程序设计工具◆任意一种文本编辑器——用于编辑生成汇编语言源程序(*.ASM)◆汇编程序TASM.EXE——用于将汇编语言源程序(*.ASM)翻译成机器语言文件(*.OBJ)◆连接程序TLINK.EXE——用于将目标文件连接生成可执行文件(*.EXE)◆调试程序TD.EXE (Turbo Debugger) ——用于对生成的可执行文件(*.EXE)进行逻辑错误检查。

可以看出,进行汇编语言程序设计时需要的编程工具有:文本编辑器、汇编程序、连接程序以及调试程序,下面分别对它们进行简要介绍。

1.文本编辑器(Text Editor)在文本编辑器中,用户可以通过键盘输入汇编语言源程序,并可以对源程序进行编辑、修改以及存盘等操作。

不论使用哪一种文本编辑器,都应该把汇编语言源程序保存为*.ASM文件,即源程序的扩展名必须为“ASM”,否则,汇编程序将无法对其进行汇编。

2.汇编程序(Assembler)汇编程序用于将用户编写的汇编语言源程序(*.ASM)翻译成机器语言文件(*.OBJ),其主要功能可以概括为以下三点:(1)检查源程序中的语法错误,并给出错误信息。

(2)产生目标文件(*.OBJ)(3)展开宏指令(Microsoft公司的小汇编程序ASM.EXE无此功能)Microsoft公司和Borland公司这两家公司研制的汇编程序MASM和TASM基本上是相同的,且都在IBM PC系列机中得到广泛使用。

3.连接程序(Linker)经汇编后得到的二进制机器语言程序中的地址是“浮动”的,它只是一种逻辑地址,一次,汇编后得到的二进制目标文件(*.OBJ)是不能直接在计算机上运行的,必须对其进行连接装配后才能成为可执行文件(*。

EXE)。

不同版本的汇编程序有着与其配套的连接程序,也就是说,如果所生成的*.OBJ文件是使用Microsoft公司的汇编程序得到的,那么,对该*.OBJ文件进行连接是就应使用Microsoft公司的LIINK.EXE;如果使用Borland公司的汇编程序TASM生成目标文件,那么,对目标文件进行连接是就必须使用Borland公司的TLINK.EXE。

4.调试程序(DEBUG)调试程序用于在DOS环境下对已生成的可执行文件(.EXE或.COM)进行调试,一边法相程序中存在的逻辑或算法错误。

在对汇编语言源程序进行汇编是,汇编程序只对源程序语法错误进行检查,而对程序中存在的逻辑错误是无法进行检查的,如果汇编过程没有发现语法错误,即可生成OBJ文件,OBJ文件经过连接后生成可执行的EXE文件。

因此,经常会出现运行所生成的EXE文件无法得到正确结果的情况。

出现这种情况的原因通常是由源程序中存在的逻辑错误或算法错误引起的。

遇到这种情况后最简单的解决办法就是使用文本编辑器打开源程序文件(*.ASM)对其进行逻辑或算法错误检查,显然使用这种办法查找逻辑错误是非常困难的,尤其对那些逻辑关系复杂。

程序较长的源程序更是如此。

对逻辑错误或算法错误的检查最好的办法就是使用DEBUG程序对已生成的可执行文件进行调试。

通过DEBUG可以使程序逐段甚至逐条指令地执行,一边观察是否达到预期的功能或得出预测的结果,从而发现源程序在设计上存在的而逻辑错误、算法错误或其他一些缺陷。

初学者往往意识不到DEBUG程序的重要性,在程序汇编、连接生成可执行文件后,总是寄希望于程序一次运行成功,这往往是不显示的。

为了能很好地进行汇编语言程序实际,掌握DEBUG程序的使用是非常重要的,这已点务必请初学者注意。

本书专用以Microsoft公司研制的汇编语言程序设计工具(MASM.EXE,LINK.EXE和DEBUG.EXE)进行介绍。

1.2上机步骤汇编语言程序设计过程分成两个阶段:编写程序阶段和上机调试阶段。

编写程序阶段包括问题分析、确定算法以及手工编写程序等步骤。

如下图所示,汇编语言上机步骤包括编辑、汇编、连接和调试等过程。

(1)编辑源程序。

利用文本编辑工具输入事先已手工编写好的汇编语言源程序,生成一个汇编语言源程序的纯文本文件,并将其存储为扩展名为.ASM的文件。

如利用EDIT程序编辑源程序。

命令为:EDIT 源程序名.ASM(2)汇编源程序。

使用汇编程序(MASM)对.ASM文件进行汇编,生成目标代码文件,目标代码文件的扩展名是﹒OBJ,汇编器还可以生成列表文件和交叉参考文件,如果源程序有语法错误行,汇编器就不生成目标代码文件。

这时,必须重新编辑源程序,修改语法错误的行。

当发现源程序中的某些行含不确定因素时,汇编器会给出警告信息,但仍按缺省处理办法生成目标代码文件。

此时,可以重新编辑源程序,消除不确定因素。

命令为:MASM 源程序名.ASM(3)连接目标程序。

通过连接程序(LINK)将.OBJ文件连接装配成可在计算机上直接运行的可执行文件.EXE,此时,就可以在DOS命令行键入文件名来运行程序。

通常DOS平台上的可执行程序文件的扩展名是﹒EXE。

一般单个或者与库函数连接时,如果在目标代码文件或者库中找不到所需的连接信息,连接器就会发生错误提示信息,而不生成可执行程序文件。

这时,就要重新编辑源程序,并汇编源程序。

命令为:LINK 目标程序名.OBJ(4)调试可执行程序。

程序的动态调试是在形成可执行程序文件后,针对可执行程序进行的。

DEBUG是简单而有效的动态调试工具,利用调试工具动态地调试程序,找出程序中的问题。

如果发现程序中有问题,那么必须重新编辑、汇编源程序。

命令为:DEBUG 可执行程序名.EXE下面以两个简单的例子说明汇编源程序的上机过程。

例一:假定要在显示器显示如下一行信息:I am a student!根据要求编好的源程序如下:STACK SEGMENT STACKDB 200 DUP(0)STACK ENDSDA TA SEGMENTBUF DB 'I am a student!$'DA TA ENDSCODE SEBMENTASSUME CS:CODE,DS:DA TA,SS:STACKSTART: MOV AX,DA TAMOV DS,AXLEA DX,BUFMOV AH,9INT 21HMOV AH,4CHINT 21HCODE ENDSEND START那么,其在DOS状态下编辑、汇编、连接、运行源程序的过程如下:首先:假设已经在D盘上建立了名为masm的文件夹,其中拷贝了汇编程序MASM.EXE和连接程序LINK.EXE,我们以下的操作均在路径D:\masm> 下进行。

第一步:编辑源程序。

假定源文件名为XS﹒ASM,键入编辑命令(edit)和文件名后回车,界面如下:在编辑界面下输入源程序,指令用大写或小写字母均可,界面如下:程序输入完成,点击下拉菜单选择Save项保存,再次点击下拉菜单选择Exit项即可退回到DOS 状态,源程序的编辑就完成了,界面如下:第二步:汇编源程序xs.asm,键入汇编命令(masm)和文件名后回车,界面如下:对于简单程序(比如本例),在系统出现的3个选项中选择回车即可,系统提示没有出错,即表明源程序汇编通过,已经生成了名为xs.obj的目标文件;若系统提示出错,则应该重新回到编辑状态将出错的地方更正并保存后方可再次进入汇编过程。

界面如下:第三步:连接目标程序文件xs.obj, 键入连接命令(link)和文件名后回车,界面如下:在系统出现的3个选项中选择回车即可,系统显示的警告“no stack segment”不会影响程序的执行,此时,可执行程序xs.exe已经生成了。

界面如下:在DOS状态下键入程序名xs.exe并回车,执行该程序,界面如下:显示器上将显示出“I am a student!”,并重新回到DOS状态。

由显示结果即可判断程序是否达到预定要求。

若未得到预期的结果,可检查XS﹒ASM文件内容,修改错误,再次汇编、连接、运行,直到满意为止。

界面如下:对于程序的执行结果没有在显示器上显示出来的,则必须要进入到调试状态才能探查程序的执行结果,并进行相应的完善,下面将以一个求数据累加所得的和作为例子。

例二:编制程序,求10个字节类型的数据的和,源程序如下:data segmenta db 1,2,3,4,5,6,7,8,9,10he db ?data endscode segmentassume cs:code,ds:datastart: mov ax,datamov ds,axlea bx,amov cx,10mov al,0next: add al,[bx]inc bxloop nextmov he,almov ah,4chint 21hcode endsend start其在DOS状态下编辑、汇编、连接、运行源程序的过程如下:首先:假设已经在D盘上建立了名为masm的文件夹,其中拷贝了汇编程序MASM.EXE和连接程序LINK.EXE,我们以下的操作均在路径D:\masm> 下进行。

第一步:编辑源程序。

假定源文件名为qiuhe.asm,键入编辑命令(edit)和文件名后回车,界面如下:在编辑界面下输入源程序,指令用大写或小写字母均可,界面如下:程序输入完成,点击下拉菜单选择Save项保存,再次点击下拉菜单选择Exit项即可退回到DOS 状态,源程序的编辑就完成了,界面如下:第二步:汇编源程序qiuhe.asm,键入汇编命令(masm)和文件名(可在文件名后加分号)回车,界面如下:键入汇编命令(masm)和文件名后加分号再回车,系统将不再给出选项,而是直接生成目标文件,若源程序中有错误,则给出相应的出错信息;若系统提示出错,则应该重新回到编辑状态将出错的地方更正并保存后方可再次进入汇编过程。

相关文档
最新文档