电科08级微机原理与接口试验自编教材
- 格式:doc
- 大小:122.50 KB
- 文档页数:16
1实验三(1) 8259中断实验一、实验目的和要求1)了解PC 的中断结构及8259中断控制器的初始化。
2)熟悉8259中断控制器的工作原理和硬件连线方法。
3)了解8259的应用并利用8255驱动8路发光二极管来验证中断的实现。
4)练习8259中断的编程方法,熟悉四个初始化命令字和三个操作命令字的设置。
5) 了解8259中断屏蔽,以及优先级判别等特性,了解8259的级联工作方式。
二、实验内容1.单片8259中断实验2.编写中断实验程序,其中主程序使8255的PB 口为输出口,输出0FFH ,L0-L7指示灯全亮。
2.编写中断服务程序从PB 口输出0FH ,L0-L3亮,L4-L7灭,并延时一段时间后返回主程序。
三、实验仪器、设备(软、硬件)及仪器使用说明1.硬件环境:PC 机一台 + 微机原理及接口实验箱一台2.软件环境:1)微机在Windows98环境、Windows2000环境、Windows XP 环境下均可以进行2)在WindowsXP 环境下运行SAC-86S 集成软件,编辑、运行汇编语言程序,并结合实验硬件来编辑、运行汇编语言程序。
3.说明:在实验平台上有两片8259,单片8259中断实验只使用第一片8259(左边一片),级联中断实验方式中使用第一片8259作为主片,第二片8259(实验板上右边的一片)作为从片。
8259实验模块电路如图4-19和图4-20。
微机原理及接口实验2四、实验原理1.8259A 的内部结构的三大部分(如图4-21):1)总线及级联缓冲:数据总线缓冲器、读写控制逻辑、级联缓冲/比较器。
2) 中断处理:中断请求寄存器IRR 、优先级比较分析器PR 、中断服务寄存器ISR 和中断屏蔽寄存器IMR 。
IRR(Interrupt Request Register)功能是接收和处理从引脚IR 0~IR 7进入的中断请求信号。
并用来存放来自外设(中断源)的中断请求信号。
《微机原理与接口技术》实验安排表实验时间班级第一组第二组第三组08电科1 星期一5、6节星期三1、2节08电科2 星期三3、4节08电子1 星期一3、4节星期一7、8节星期二7、8节08电子2 星期四1、2节星期二7、8节08通信1 星期三7、8节星期三9、10节星期二9、10节08通信2 星期二1、2节星期二9、10节实验项目教学周次实验项目名称对应的实验指导书的内容汇编语言程序设计指导书(电子文档)微机原理与接口实验指导书(2006.7)4 1、熟悉汇编语言的编程环境实验一熟悉汇编语言的编程过程5 2、循环程序设计实验实验五循环程序设计6 3、子程序设计实验实验七子程序设计7 4、中断程序设计实验P39实验八8 5、数字钟设计实验P41实验九9 5、数字钟设计实验P41实验九10 6、8253定时/计数器实验P30实验六11 7、8255并口可编程实验P24实验四12 8、模数转换ADC0809 P17实验一13 9、数模转换DAC0832 P20实验二14 10、小型直流电机调速实验P57实验十三15 11、双机通信实验P44实验十注意事项:1、实验室位置:第三教学楼3607(商学院办公室楼上);2、中午实验的同学12:30分开始,其它按照学校作习时间表;3、每次实验前写好预习报告,进入实验室时指导老师检查合格后方可进行实验,实验过程中认真记录实验结果和出现的问题,各组独立完成实验,并按规定交实验报告(每个实验做完当堂交报告)。
4、分组:08电科1(1)=学号前36,08电科1(2)=余下的37人;08电科2=全班37人08电子1(1)=学号前32,08电子1(2)=学号前33-64,08电子1(3)=余下的18人,08电子2(1)=学号前32,08电子2(2)=余下的12人08通信1(1)=学号前30,08通信1(2)=学号前31-60,08通信1(3)=余下的9人08通信2(1)=学号前30,08通信2(2)=余下的20人实验1熟悉汇编语言的编程环境[实验目的]1.学习并掌握Visual ASM软件的使用;2.学习在MSDOS方式下的手工汇编方式;3. 学习Debug.exe软件的使用方法;[实验重点和难点]1.Debug命令[实验课时]2学时[实验仪器]联想启天2400微型计算机。
微机原理与接口技术实验指导书编者:王亭岭华北水利水电学院电气学院自动化教研室二零一二年三月目录实验一标志寄存器应用 (1)实验二指令寻址方式练习 (4)实验三分支结构程序设计 (6)实验四循环结构程序设计 (7)实验五子程序结构程序设计 (8)实验六DOS系统功能调用程序设计 (10)实验七BIOS中断调用程序设计 (12)实验八定时器中断程序设计 (14)实验一标志寄存器应用一、实验目的与要求1.掌握汇编程序的编译过程;2.掌握8086的标志寄存器的特点。
二、实验内容微型计算机(80x86系列)。
四、实验参考程序DATA SEGMENTA DW 123B DW 456SUM DW ?DATA ENDSCODE SEGMENTASSUME CS:CODE , DS:DATA START: MOV AX , DATAMOV DS , AXMOV AX , ASUB AX , BMOV SUM , AXMOV AH,4CHINT 21HCODE ENDSEND START五、实验步骤步骤一、用鼠标单击开始菜单,单击运行。
如下图所示:步骤二、在运行窗口中键入cmd,回车进入命令提示符。
如下图所示:步骤三、在命令提示符中编译汇编源程序并连接*.obj文件。
如下图所示:1.C:\>D: 回车2.D:\ >CD MASM 回车3.D:\MASM>MASM SY1.ASM 回车4.D:\MASM>LINK SY1.OBJ 回车步骤四、在命令提示行中运行并调试汇编程序。
如下图所示:1.D:\MASM>SY1.EXE 回车2.D:\MASM>DEBUG SY1.EXE 回车六、实验结论1.程序运行后变量SUM的值是多少?2.程序运行前后标志寄存器的各标志位有何变化?3.分析实验结果及所遇到的问题,并说明解决的方法。
实验二指令寻址方式练习一、实验目的与要求1.掌握汇编语言调试工具(DEBUG)的基本使用方法;2.掌握8086的寻址方式。
微机原理与接口技术实验指导书电子与电气工程系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这一步,否则不能生成可执行文件。
经过汇编——连接后,汇编语言源程序基本被翻译成对应的机器码模块,只是整个模块装入内存的具体地址尚未确定,因此涉及段地址的指令机器码还未最后“定型”,故此模块被称为浮动代码模块。
单片机原理及使用实训指导书实训说明:1、在拿到实训题目并且用实验室的相关仪器完成实训任务时,首先要到实验室熟悉实验箱上所用各模块的硬件原理及接线,然后自行设计实训方案,进行软硬件调试,最终结果经教师验收通过并撰写出实训说明书。
2、也可用基于单片机的开发板完成实训任务,工作量一定饱满,题目必须经指导老师批准并报题。
3、带*号的是综合设计性实训题目,每人必选一题,不带*号的选一题。
学委负责将每位同学的实训题目列表报上来。
2011-05-26一、16×16点阵显示实训一、实训目的(1)利用单片机I/O口或以扩展锁存器的方式控制点阵显示。
(2)掌握单片机和16×16点阵块之间接口电路设计及编程。
二、实训内容利用实验系统16×16点阵实验单元,以两种方式控制点阵显示。
要求编制程序实现汉字点阵循环显示。
三、扩展名称口地址用处控制方式273(4)0FFE3H 列代码1 扩展锁存器273(1)0FFE0H 列代码2 扩展锁存器273(3)0FFE2H 行扫描1 扩展锁存器273(2)0FFE1H 行扫描2 扩展锁存器口分别提供字形代码(列码)、扫描信号(行码),凡字形代码位为“”、行扫描信号为“1”点亮该点,否则熄灭;通过逐行扫描循环点亮字形或曲线。
四、实验电路五、实训步骤1、实验连线⑴连接138译码输入端A.B.C,其中A连A2,B连A3,C连A4,138使能控制输入端G和总线单元上方的GS相连。
⑵点阵显示单元的16×16CS和译码单元Y0相连。
⑶用8芯扁平电缆将点阵显示单元的数据总线插座和数据总线单元任一插座相连。
2、在和PC联机状态下,编写调试程序,用连续方式运行程序。
4、观察运行结果(自己设定显示结果)如:点阵显示模块循环显示“欢迎选用启东达爱思计算机有限公司Dais系列产品。
附:汉字字模的提取汉字字模的提取可借助专用的软件来完成。
这里介绍的是“字模提取V2.2”的基本使用方法,软件的最新版本可从下载。
实验一 I/O地址译码一、实验目的掌握I/O地址译码电路的工作原理。
二、实验原理和内容实验电路如图11所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。
译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H~287H,Y1:288H~28FH,……当CPU执行I/ O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。
例如:执行下面两条指令MOV DX,2A0HOUT DX,AL(或IN AL,DX)Y4输出一个负脉冲,执行下面两条指令MOV DX,2A8HOUT DX,AL(或IN AL,DX)Y5输出一个负脉冲。
注意:由于使用PCI卡,命令中的实际端口地址应通过计算来重新确定。
是根据PCI 卡的基址再加上偏移量计算出来的,不同的微机器PCI卡的基址可能不同,需要事先查找出来,查找方法1:使用WINDOWS的设备管理器,查看此PCI卡的属性来获得。
方法2:利用实验台配套的集成开发软件检测出来。
例如:PCI卡的基址为:0D400H.计算公式如下:计算出的地址= 查找出的PCI卡的基址+ 偏移量;(其中:偏移量= 2A0H - 280H 或2A8H –280H)利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。
三、编程提示1、实验电路中D触发器CLK端输入脉冲时,上升沿使Q端输出高电平L7发光,CD端加低电平L7灭。
2、由于TPC卡使用PCI总线,所以分配的IO地址每台微机可能都不同,编程时需要了解当前的微机使用那段IO地址并进行设置,获取方法前面已经介绍。
3、参考程序:ioport equ 0d400h-0280houtport1 equ ioport+2a0houtport2 equ ioport+2a8hstart:mov dx,outport1out dx,alcall delay ;调延时子程序mov dx,outport2out dx,alcall delay ;调延时子程序mov ah,1int 16hje startmov ah,4chint 21hdelay proc near ;延时子程序mov bx,2000lll: mov cx,0ll: loop lldec bxjne lllretdelay endp实验程序应有信息提示,按什么键开始,按什么键退出程序等控制功能。
《微机原理与接口技术实验》教学大纲课程名称:微机原理与接口技术实验课程编号:实验学时:16 实验学分:1一、本实验课的性质、任务与目的《微机原理与接口技术实验》是电子信息科学与技术专业必修的专业基础课,是一门重要的实践环节课程。
本实验安排学生上机实践及实验箱的实际动手操作。
将使学生理解汇编语言的基本概念和主要功能,掌握常用的汇编语言程序设计方法,掌握常用的接口的工作原理和编程控制方法,学会利用软硬件方法使用各种常用的可编程接口芯片,为开发不同用途的微型计算机应用系统打下良好的基础。
三、考核方式与评分办法:1.每次实验必须有指导教师点名,不得无故缺席或迟到;2.实验结束后,学生向指导教师上交实验报告;3.平时成绩占50%,上机考核占50%。
四、本实验课教材或实验指导参考书[1] 李东《微机原理与接口实验自编教材》[2] 《微机接口实验系统8086/8088实验指导书》启东达爱思计算机有限公司出品[3] 王智文、蔡启先等《微机原理及汇编语言程序设计》2005年10月信息与计算科学系电科教研室李东前言:汇编语言程序设计是电子信息科学与技术专业的一门重要的计算机技术基础课程和必修的专业基础课,是操作系统、计算机接口技术、计算机系统结构、单片机原理、计算机控制技术等课程的先修课。
在众多的程序设计语言中,汇编语言是面向机器的低级语言。
由于汇编语言可以直接对硬件资源进行编程,因而汇编语言具有更高的执行效率。
与高级与语言相比,它更适合于对执行速度和代码长度要求较高的场合。
可见,汇编语言一方面可以帮助学生理解计算机工作原理,为后续课程的学习打下基础,同时也可以直接应用于实时控制及与硬件资源京密结合的其它领域。
汇编语言程序设计是一门实践性很强的课程,程序设计如何,是否达到要求,必须通过上机运行和调试。
在具体学习实践中,很多人普遍感到汇编语言程序改错、上机调试使学生操作上的难点,应此,我们编写了本实验教材,具有通俗易懂的特点,希望对大家的学习有所帮助。
微机原理及应用基本实训:实训一:A/D转换实验(2课时)【训练目标】了解模/数转换基本原理,掌握ADC0809的使用方法。
【主要仪器设备与场地】8088十六位微机实验系统、PC机微机原理实验室。
【训练内容与步骤】1.将0809 CS4连到译码输出8000H插孔。
2.将通道0模拟量输入端IN0连电位器W1的中心。
插头0~5V插孔。
3.编写程序。
对通道0进行A/D转换,并显示。
(在系统上显示“0809XX”。
“XX”表示输入的模拟量转换后的数字量。
)4.输入程序并检查无误,运行实验程序。
5.调节电位器W1,显示器上会不断显示新的转换结果。
模拟量和数字量对应关系的典型值为:0V — 00H;+2.5V — 80H;+5V — FFH【考核标准】优秀:硬件连线正确,程序正确、规范,运行结果准确。
良好:硬件连线正确,程序正确,但不是很规范,运行结果准确。
中等:硬件连线正确,程序规范,但不正确。
合格:硬件连线正确,程序不规范,也不正确。
不合格:硬件连线不正确,程序不规范,也不正确。
【注意事项】硬件连线要准确,不能出现短路现象。
实训二:D/ A转换实验(2课时)【训练目标】了解数/模转换基本原理,掌握DAC0832芯片的使用方法。
【主要仪器设备与场地】8088十六位微机实验系统、PC机微机原理实验室。
【训练内容与步骤】1.0832片选信号CS5插孔和译码输出8000H插孔相连。
2.编写实验程序。
使0832左侧AOUT插孔上输出方波。
3.运行实验程序。
4.用示波器测量0832左侧AOUT插孔,应有方波输出。
【考核标准】优秀:硬件连线正确,程序正确、规范,运行结果准确。
良好:硬件连线正确,程序正确,但不是很规范,运行结果准确。
中等:硬件连线正确,程序规范,但不正确。
合格:硬件连线正确,程序不规范,也不正确。
不合格:硬件连线不正确,程序不规范,也不正确。
【注意事项】硬件连线要准确,不能出现短路现象。
实训三:8255A并行口实验(2课时)【训练目标】1.掌握8255A和微机接口方法。
《微机原理与接口技术实验》教学大纲课程名称:微机原理与接口技术实验课程编号:实验学时:16 实验学分:1一、本实验课的性质、任务与目的《微机原理与接口技术实验》是电子信息科学与技术专业必修的专业基础课,是一门重要的实践环节课程。
本实验安排学生上机实践及实验箱的实际动手操作。
将使学生理解汇编语言的基本概念和主要功能,掌握常用的汇编语言程序设计方法,掌握常用的接口的工作原理和编程控制方法,学会利用软硬件方法使用各种常用的可编程接口芯片,为开发不同用途的微型计算机应用系统打下良好的基础。
三、考核方式与评分办法:1.每次实验必须有指导教师点名,不得无故缺席或迟到;2.实验结束后,学生向指导教师上交实验报告;3.平时成绩占50%,上机考核占50%。
四、本实验课教材或实验指导参考书[1] 李东《微机原理与接口实验自编教材》[2] 《微机接口实验系统8086/8088实验指导书》启东达爱思计算机有限公司出品[3] 王智文、蔡启先等《微机原理及汇编语言程序设计》2005年10月信息与计算科学系电科教研室李东前言:汇编语言程序设计是电子信息科学与技术专业的一门重要的计算机技术基础课程和必修的专业基础课,是操作系统、计算机接口技术、计算机系统结构、单片机原理、计算机控制技术等课程的先修课。
在众多的程序设计语言中,汇编语言是面向机器的低级语言。
由于汇编语言可以直接对硬件资源进行编程,因而汇编语言具有更高的执行效率。
与高级与语言相比,它更适合于对执行速度和代码长度要求较高的场合。
可见,汇编语言一方面可以帮助学生理解计算机工作原理,为后续课程的学习打下基础,同时也可以直接应用于实时控制及与硬件资源京密结合的其它领域。
汇编语言程序设计是一门实践性很强的课程,程序设计如何,是否达到要求,必须通过上机运行和调试。
在具体学习实践中,很多人普遍感到汇编语言程序改错、上机调试使学生操作上的难点,应此,我们编写了本实验教材,具有通俗易懂的特点,希望对大家的学习有所帮助。
系:;班级:;姓名:;学号:;指导教师:李东;实验时间:;实验成绩:;实验一调试程序DEBUG 的使用DEBUG.EXE是DOS提供的用于调试可执行程序的工具软件,是汇编语言程序设计中常用的调试工具。
在DEBUG环境下,不但可以调试经汇编、连接后生成的可执行程序,也可以编写简单的程序。
一、实验目的1.熟悉debug 常用命令的使用方法2.了解上机操作环境二、实验内容1.按照提供的《debug》电子版补充教材进行学习训练2.用汇编语言编写一个计算“3+5”的加法程序3.利用debug运行简单的汇编程序。
4.熟悉debug 常用命令的使用方法三、实验实现的程序及上机操作步骤MOV AL, 33H ; 将3的ASCII码送入AL寄存器中MOV DL, 35H ; 将5的ASCII码送入DL寄存器中ADD DL, AL ; 做“3+5”,结果送DL寄存器SUB DL, 30H ; 将“3+5”的结果进行调整,得到8的ASCII码,送DL寄存器MOV AH, 2 ;INT 21H ; 输出DL寄存器中的字符INT 20H ; 中断当前执行的程序该程序是将两个十进制数3和5的ASCII码送入寄存器AL和DL,当ASCII码进行相加时必须通过条调整后才能得到其结果。
如例中,33H+35H等于68H,68H-30H=38H,38H才是十进制8的ASCII码,再将结果在显示器上显示DL寄存器中的字符,该字符应该是将字符的ASCII码放在DL寄存器中。
INT 20H 是中断正常结束程序。
运行步骤如下:1.进入DEBUG状态点击“开始”→“程序”→“附件”→“命令提示符”,进入DOS操作环境。
然后运行DEBUG程序:(说明:本课程实验假设是在c盘上建立了masm子目录,且masm.exe、link.exe、debug.exe、cref.exe、lib.exe都在该目录中。
)C:\﹍\﹍>CD\↙C:\>CD MASM↙C:\>MASM>DEBUG↙屏幕显示:_“_”为已进入DEBUG状态,在该提示符下可键入DEBUG命令。
(下划线部分表示用户键入的字符或命令,↙为回车符号)2.键入程序并汇编用DEBUG的A命令送入程序:_ A 100 ↙0A47:0100 MOV AL, 33 ↙0A47:0102 MOV DL, 35 ↙0A47:0104 ADD DL, AL ↙0A47:0106 SUB DL, 30 ↙0A47:0109 MOV AH, 2 ↙0A47:010B INT 21 ↙0A47:010D INT 20 ↙0A47:010F ↙_当键入A命令时,自动产生程序所送内存单元的段地址和偏移地址。
通过偏移地址可以看到每条指令占内存单元多少字节。
如“MOV AL, 33”占两个字节,···当程序送完时,只键入回车键↙,就退出汇编状态(A状态)回到DEBUG状态“-”。
其中送入的数据为十六进制数,DEBUG状态下程序中的数据均按十六进制处理,不需要键入H来表示数据为十六进制数。
3.执行程序用DEBUG的G命令执行刚刚汇编的程序:- G ↙8program terminated normally4.反汇编可以用反汇编U命令将键入的程序调出,并且可以得到每条汇编指令的机器码。
- U100 10D ↙0A47:0100 BO33 MOV AL, 330A47:0102 B235 MOV DL, 350A47:0104 00C2 ADD DL, AL0A47:0106 80EA30 SUB DL, 300A47:0109 B402 MOV AH, 20A47:010B CD21 INT 210A47:010D CD20 INT 20四、熟悉:E、D、R等其它debug常用命令例:利用DEBUG的E命令向内存中写入机器码,D命令察看内存中的数据,用U命令查看内存中机器码的含义,用T命令执行内存中的机器码。
如何向内存中写入机器码呢?我们知道,机器码也是数据,当然也可以用E命令将机器码写入内存。
比如要从内存1000:0单元开始写入这样一段机器码:机器码对应的汇编指令b8 01 00 mov ax, 0001b9 02 00 mov cx, 000201 c2 add ax, cx可以用下述的方法进行实验:C: \ >DEBUG↙- E1000:0 B8 01 00 B9 02 00 01 C8 ↙-如何查看我们写入的或内存中原有的汇编指令呢?我们用D命令察看1000:0~1000:1F 中的数据(从数据的角度看一下我们写入的内容);最后用U命令查看从1000:0开始的内存单元中的机器指令和他们所对应的汇编指令。
- D1000:0 1F ↙1000:0000 B8 01 00 MOV AX, 00011000:0003 B9 02 00 MOV CX, 00021000:0006 01 C8 ADD AX, CX1000:0008 ···由此,我们可以再一次看到内存中的数据和代码没有任何区别,关键在于如何解释。
如何执行我们写入的机器指令呢?使用DEBUG的T命令可以执行一条或多条指令,简单的使用T命令,可以执行CS:IP指向的指令:接前面实验:- R ↙···- RCS ↙CS XXXX: 1000 ↙- RIP ↙IP XXXX: 0 ↙- R ↙- T ↙···- P ↙这个例子中,我们先用E命令向1000:0开始的内存单元中写入了8个字节的机器码,然后用R命令查看CPU中寄存器的状态,可以看到,CS=XXXX,IP=YYYY,指向内存XXXX:YYYY;若要用T命令控制CPU执行我们写到1000:0的指令,必须先让CS:IP指向1000:0;接着用R命令修改CS、IP中的内容,使CS:IP指向1000:0完成上面的步骤后,我们就可以使用T命令来执行我们写入的指令了(此时CS:IP指向我们的指令所在的内存单元)。
执行T命令后,CPU执行CS:IP指向的指令,则1000:0处的指令B8 01 00 (MOV AX, 0001)得到执行。
指令执行后,DEBUG显示输出CPU中寄存器的状态。
注意:指令执行后,AX中的内容改写为1,IP改写为IP+3(因为(MOV AX, 0001的指令长度为3个字节),CS:IP指向下一条指令。
接着我们可以继续使用T命令执行下面的指令,注意每条指令执行后,CPU相关寄存器内容的变化。
五、实验运行结果及实验后的心得体会实验二汇编语言程序的编辑、汇编、链接、调试、运行一、实验目的1. 了解上机操作环境;2. 了解上机操作流程;3.熟悉EDIT编辑程序的使用方法,利用EDIT编辑简单的汇编程序;4.熟悉汇编语言程序的编辑、汇编、链接、调试、运行二、本实验上机操作环境:这里列出了本实验的上机操作环境。
包括:操作系统:Window 9x的MS-DOS方式,MSDOS6.22、MSDOS7.0,Window 2000及以上“命令提示符”的运行等。
文本编辑器:记事本,等汇编程序:MASM.EXE、ASM.EXE等连接程序:LINK.EXE调试程序:DEBUG.EXE此外还有:索引程序:CREF.EXE库管理程序:LIB.EXE假定在C盘上建立了MASM子目录,且上述程序都在该目录中。
三、上机操作流程整个上机过程包括:①建立与编辑源程序;②原程序汇编产生目标文件;③连接目标程序产生可执行程序;④调试运行可执行程序这么四个步骤。
①进入MS-DOS,建立与编辑源程序点击“开始”→“程序”→“附件”→“命令提示符”,进入DOS操作环境:C:\﹍\﹍>CD\MASM↙C:\>MASM>DIR↙C:\>MASM的目录200X-XX-XX XX-XX <DIR>200X-XX-XX XX-XX <DIR>···200X-XX-XX XX-XX 39,100 MASM.EXE200X-XX-XX XX-XX 39,100 LINK.EXE200X-XX-XX XX-XX 39,100 CREF.EXE200X-XX-XX XX-XX 39,100 LIB.EXE200X-XX-XX XX-XX 39,100 DEBUG.EXEXX个文件 XXX,XXX字节X个目录 X,XXX,XXX,XXX可用字节现在我们利用EDIT编辑程序:C: \ > MASM>EDIT ↙进入EDIT编辑状态,在EDIT文本编辑器中输入源程序:DATA SEGMENTX DB 0E5H ;定义变量X、Y、WY DB 34HW DW ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX, DATA ;装填DS端地址MOV DS, AXXOR AH, AH ;AH清零,为高字节加作准备MOV AL, X ;AX=X+YADD AL, YADC AH, 0MOV W, AX ;送结果MOV AH, 4CH ;返回DOSINT 21HCODE ENDSEND START程序输入完毕,要给输入的程序起一个文件名,其扩展名必须为.ASM。