微机实验指导书20160425

合集下载

微机原理实验指导书

微机原理实验指导书

实验一初级程序的编写与调试一、实验目的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命令直接调出寄存器,来检查各寄存器内容是否正确。

微机原理实验指导书(软件)

微机原理实验指导书(软件)

实验一系统认识与数码转换实验一、实验目的1.学习汇编语言的开发过程。

2.熟练掌握DEBUG调试程序。

参考书后附录E二、实验设备PC机一台三、实验内容及步骤1.系统认识实验在内存缓冲区BUFF中存储0-F共16个字节数据,实验参考程序如下:DATA SEGMENTBUFF DB 16 DUP (?);定义数据段DATA ENDSCODE SEGMENT ;定义代码段ASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV DI,OFFSET BUFF ;设置缓冲区首址MOV CX,16 ;字节数送入CX中MOV AL,0A1: MOV [DI],AL ;写入一字节INC DI ;修改地址指针INC AL ;修改数据LOOP A1 ;未填完循环MOV AH,4CHINT 21HCODE ENDS ;代码段结束END START ;程序结束实验步骤:(1)把实验用的相关软件拷贝到PC机中,比如D盘的HUIBIAN文件夹(D:\HUIBIAN)。

(2)进入DOS环境(开始\程序\附件\‘C:\命令提示符’),进入路径D:\HUIBIAN。

(3)编辑,启动编辑软件EDIT,输入源程序,检查无误后存盘,如文件名11.ASM。

(4)汇编,即键入MASM 11.ASM回车,通过后应生成文件11.OBJ。

(5)连接,即键入LINK 11.OBJ回车,通过后应生成文件11.EXE。

(6)调试,即键入DEBUG 11.EXE,进入调试软件DEBUG来调试源程序。

DEBUG的用法可参考教材的附录E。

(7)运行程序,观察结果是否正确。

2.数码转换实验将十进制数的ASCⅡ码转换为BCD码。

设五位十进制数的ASCⅡ码已存放在内存缓冲区BUF1中,转换为 BCD 码后,再分别存入内存缓冲区BUF2中。

提示:一字节ASCⅡ码取其低四位即变为BCD码。

实验程序如下:DATA SEGMENTBUF1 DB 31H,32H,33H,34H,35H ;定义数据段BUF2 DB 5 DUP (?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV CX, 5 ;循环计数器赋初值MOV SI,OFFSET BUF1 ;ASCⅡ码首址MOV DI,OFFSET BUF2 ;BCD码首址A1: MOV AL,[SI] ;送ASCⅡ码至ALCMP AL,3AH ;比较AL与3AJAE A2 ;大于3A则转A2SUB AL,30H ;小于3A则取ASCⅡ码低4位JB A2 ;小于30则转A2MOV [DI],AL ;保存结果A2: INC SIINC DILOOP A1MOV AH,4CHINT 21HCODE ENDSEND START实验步骤(1)输入源程序,进行汇编、连接。

微型计算机原理实验指导书-

微型计算机原理实验指导书-

微型计算机原理实验指导书目录一、基础实验部分实验一两个多位十进制数相加的实验 (1)实验二两个数相乘的实验 (3)实验三 BCD码相乘的实验 (5)实验四字符匹配程序 (7)实验五阶跃响应与冲激响应 (9)实验六零输入响应和零状态响应 (11)实验七信号的抽样与恢复 (13)二、选做实验部分实验八排序实验 (16)实验九8255A并行接口实验 (18)实验十串联谐振电路的特性研究 (20)实验十一一、二阶连续时间系统的模拟 (23)三、创新实验部分实验十二8259A中断控制器实验 (31)实验十三信号的分解与合成 (33)实验一两个多位十进制数相加的实验一、实验目的1、学习数据传送和算术运算指令的用法。

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

二、实验仪器及材料计算机一台三、预习要求预习数据传送指令和算数运算指令四、实验内容将两个多位十进制数相加。

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

程序框图:五、实验报告写出源程序及注释六、思考题把源程序修改为任意两个六位十进制相加。

并思考如果最高位有进位怎么办?实验二两个数相乘的实验一、实验目的掌握乘法指令和循环指令的用法。

二、实验仪器及材料计算机一台三、预习要求预习乘法指令和循环指令。

四、实验内容实现十进制数的乘法。

被乘数和乘数均以ASCII码形式存放在内存中,乘积在屏幕上显示出来。

程序框图五、实验报告写出源程序及注释六、思考题修改程序,实现6位数乘2位数的功能。

实验三BCD码相乘的实验一、实验目的掌握用组合的BCD码表示数据,并熟悉怎样实现组合BCD码乘法运算。

二、实验仪器及材料计算机一台三、预习要求预习乘法运算指令四、实验内容实现BCD码的乘法,要求被乘数和乘数均以组合的BCD码形式存放,各占一个内存单元,乘积存放在另外两个内存单元中。

微机原理实验指导书

微机原理实验指导书

实验一 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宏汇编程序。

微机实验指导书

微机实验指导书

实验一汇编语言上机环境的熟悉和DEBUG命令使用一.实验目的:1.熟悉程序的汇编过程以及Masm for Windows 6.0的使用。

2.学习使用DEBUG中的各种命令。

3.掌握用DEBUG调试自编程序的方法,为以后实验打下基础。

二.实验内容1.熟悉汇编语言的编译环境。

1)DOS下的编译环境。

2)Windows下的编译环境(Masm for Windows 6.0)。

2.用A命令汇编下列程序段,完成将DS:2000开始的5个字节内存内容相加,并把相加的结果存放在DS:2005内存单元中,将程序写到硬盘上,然后用DEBUG调试﹑运行该程序,查看运行结果,观察程序段能否完成指定功能,若不能,说明原因。

MOV CX,5MOV AL,0MOV BX,2000NEXT: ADD AL,[BX]INC BXDEC CXLOOP NEXTMOV [BX],ALINT 3三.预习要求1.仔细阅读实验一后的【实验提示】及【DEBUG的启动及其基本命令的使用】中的内容2.―汇编语言上机操作过程及程序调试技术‖内容。

3.根据实验要求,对各项结果进行预测。

四.实验报告1.写出实验内容中2的程序错误所在,分析其运行过程。

2.举例写出利用dubug调试中你所用的命令的功能。

3.写出做完本实验的心得体会。

五.实验提示1.DEBUG的进入(1)如果是首次进入DEBUG编程,则只要在DOS提示符下键入DEBUG ↙,即可进入DEBUG环境,显示提示符―-‖。

(2)如果要对某个程序使用DEBUG进行调试,只要在DOS提示符下键入DEBUG 文件名↙,即可进入DEBUG环境,显示提示符―-‖。

2.程序的汇编与反汇编⑴源程序可以在DEBUG下,用汇编命令A输入到内存中,只需在DEBUG提示符―-‖下,键入汇编命令A ↙,并在显示―段寄存器地址:偏移地址‖后面键入你自己编写的程序,每键入一条,按一次回车键。

-A ↙127B:0100 MOV CX,5 ↙127B:0103 MOV AL,0 ↙127B:0105 MOV BX,2000 ↙┇⑵如果进入DEBUG时是使用―DEBUG 文件名↙‖进入的,那么在进入DEBUG状态后,可用反汇编命令U,将调入的程序显示出来:-U ↙127B:0100 B90500 MOV CX,5127B:0103 B000 MOV AL,0127B:0105 BB0020 MOV BX,2000┇3.在DEBUG状态下,对所编写文件存盘的步骤①给程序命名-N 文件名.COM ↙②将文件长度放入BX、CX中(高位放入BX,低位放入CX中)-R BX ↙(注意!!!由于文件长度一般较小,所以切记BX中赋0值)-R CX ↙(文件最末偏移地址减去文件开始的偏移地址即文件长度)③用写盘命令W把正在调试的内存中程序写入磁盘中-W 〈地址〉↙(文件开始地址)退出DEBUG状态用Q命令:-Q ↙4.在DEBUG状态下,建议使用DOS分配给用户的内存可用区在DEBUG状态下,用户可对所有寄存器、RAM内存随意查看和修改,但由于对DOS 操作系统在内存中存放情况不了解,可能会将存放有操作系统程序的内存内容破坏,从而可能引起系统的异常,出现死机现象,故建议使用DOS分配给用户的内存可用区,其低端地址是刚进入DEBUG时,用命令R查看到的DS:IP。

微机原理及应用实验指导书

微机原理及应用实验指导书

实验一:汇编语言的调试一. 实验目的学习程序设计的基本方法和技能,熟练掌握用汇编语言设计、编写、调试和运行程序的方法。

二. 实验设备1.PC微机一台三. 实验准备1.根据实验目的认真做好实验前的预习,记住操作方法;2.预先编制好实验用的程序,提高实验效率。

四. 实验要求程序调试完后,须由实验辅导教师在机器上检查运行结果,经认可后在实验指导书签字,才算完成。

每个实验完成后,应写出实验报告。

实验报告的要求如下:1.设计说明:说明程序的功能、结构、原理及算法。

2.调试说明:上机时遇到的问题及解决办法的调试情况,观察到的现象及其分析,对程序设计技巧的总结以及程序输出结果的分析,实验的心得体会等。

3.程序框图。

4.程序清单。

五. 实验内容、步骤1、汇编语言程序上机操作方法实验举例如下:例1.1 比较字符串bjchx试编写一程序,比较两个字符串string1和string2所含的字符是否相同,若相同则显示‘Match’,否则,显示‘No match’。

我们可以用串比较指令来完成题目所要求的功能。

上机过程如下:(1)建立asm文件在windows系统环境下,应用写字板编辑程序建立源文件。

(2)用汇编程序MASM对源文件汇编产生目标文件.OBJ在windows环境下,点击masm文件,而后输入.asm的文件名:C:>MASM ABC.ASM↙如汇编指示出错则需重新调用编辑程序修改错误,直到汇编通过为止。

如调试时需要用Lst文件,则应在汇编过程中建立该文件。

(3)用连接程序LINK产生可执行文件EXE在windows环境下,点击link文件,而后输入*.obj的文件名:C:>LINK ABC.OBJ↙(4) 执行程序在windows环境下,点击*.exe文件运行程序,也可在dos的环境下执行程序如下:C:>ABC↙Match.屏幕终端上显示出程序运行结果。

实验二:运算类指令编写一. 实验目的1.掌握使用运算类指令编程及调试方法;2.学会运用运算类指令解决实际问题的方法;3.掌握运算类指令对各状态标志位的影响及其测试方法。

#《微机控制技术》实验指导书

#《微机控制技术》实验指导书

江西理工大学《微机控制技术》课程实验指导书主审人:蔡改贫主撰人:前言本课程是自动化、电气项目及其自动化专业的专业基础实验课,通过本课程的学习,使学生计算机控制系统的结构体系、信号的输入输出过程、以及控制器的设计方法、计算机控制系统的设计及调试等,并简单的讲解组态软件、通信网络等内容,为学生毕业后从事微机控制方面的工作打下坚实的基础。

本实验主要包括4大部分:微机控制的原理及体系结构、过程通道的设计、数字控制器的设计方法、控制系统的设计与调试,要求学生通过学时和实验,掌握微型计算机控制系统的基本工作原理、设计方法等。

目录第一部分绪论一、本课程实验的作用与任务二、本课程实验的基础知识三、本课程实验教案项目及要求第二部分基本实验指导实验一步进电机控制实验实验二直流电机控制实验实验三数字PID控制器设计及仿真实验四最少拍有纹波控制器设计及仿真实验五最少拍无纹波控制器设计及仿真实验六大林算法设计及仿真实验七 A/D转换器实验实验八组态软件设计第一部分绪论本实验指导书是根据《微机控制技术》课程实验教案大纲编写,适用于电气项目及其自动化专业、自动化等专业。

一、本课程实验的作用与任务《微机控制技术》实验是计算机学习过程中必不可少的重要实践环节。

通过实验和设计,让学生计算机控制系统中输入输出通道的设计、数字程序控制技术、数字控制器的设计方法、组态软件的设计以及整个控制系统的设计过程及步骤,使学生在分析问题和解决问题等方面受到系统科学的训练,从而提高学生理论联系实际能力、自主动手能力和创新能力。

二、本课程实验的基础知识本课程要求学生掌握计算机的基本工作原理、编程方法、数字控制器的设计方法等基本知识。

学生在学习这门课程之前,必须掌握《自动控制原理》、《微机原理与程序设计》等课程相关内容。

三、本课程实验教案项目及要求第二部分基本实验指导实验一步进电机控制实验一.实验目了解步进电机的工作原理,掌握它的转动控制方式和调速方法。

微机原理试验指导书

微机原理试验指导书

《微型计算机原理》实验指导书上海行知学院计算机系二零零六年五月实验一DEBUG调试指令的认识实验一、实验目的(1)熟悉DEBUG的调试命令和DEBUG的调试指令的使用方法(2)掌握各种寻址方式和指令的功能二、实验内容1、已知:(DS)=3000H、(ES)=3500H、(SS)=4000H、(BX)=0038H、(BP)=0019H、(SI)=0012H、(3005AH)=56H、(3005BH)=78H、(30068H)=11H、(30069H)=22H、(32000H)=12H、(32000H)=34H、(35038H)=0AAH、(35039H)=0BBH、(4002BH)=88H、(4002BH)=99H。

分别下列指令,请说明其源操作数的寻址方式、有效地址和物理地址,以及AX寄存器中的内容。

(1)MOV AL,2000H(2)MOV AX,[2000H](3)MOV AX,BX(4) MOV AL,ES:[BX](5)MOV AX,30H[BX](6)MOV AX,[BP][SI](7)MOV AL,10H[BX][SI](8)MOV DX,ES:[BX](9) MOV AL,ES:[BX]2、已知:(SS)=2200H,(SP)=0010H,(DX)=ABCDH,(CX)=5678H执行下列指令段:PUSHDXPOPCX请说明DX、CX以及SP寄存器中的内容,用T命令跟踪,观察执行结果3、已知:(BX)=82A8H、(AX)=9FA3H执行面这指令,求AX寄存器及CF,SF,ZF和OF的内容是什么?ADD AX,BX4、假设(DX)=97B5H,确定下列各条指令单独执行后的结果。

(1)AND DX,0F54H(2)XOR DX,0FFFFH三、实验要求(1)掌握DEBUG的调试R 、A、U、D、E、T命令使用方法(2)掌握数据传送、算术和逻辑运算指令的功能四、实验步骤1、首先进入DEBUG状态,用R命令修改各寄存器的内容,以满足题目的要求。

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

实验一汇编语言程序设计(分支/循环)1.实验目的:(1)熟悉8088/8086指令系统(2)了解程序设计过程(3)掌握汇编语言程序设计和调试方法2.实验内容上机任务1:① 熟悉进入和退出32位控制台和16位DOS环境的方法。

② 创建MASM目录、复制开发软件,生成进入开发环境的快捷方式。

上机任务2:① 熟悉汇编语言的开发过程,实现教材例题2-1程序。

② 掌握数据寻址方式,上机实现教材中的例题2-2程序。

上机任务3:熟悉汇编语言中的数据表达、变量定义和属性,验证教材例题3-1、例题3-3、例题3-5程序,实现习题3.14程序。

上机任务4:① 掌握常用传送和运算指令,验证例题3-9和例题3-12程序。

②首先判断习题3.20每条指令执行后EAX的数值和相关标志状态,写出结果。

然后将其编辑成为一个完整的汇编语言源程序,汇编连接、生成可执行文件。

可以利用本书配套的I/O子程序库,在每条指令之后,调用其中的DISPRF(先调用)和DISPHD,显示6个状态标志位和EAX内容,并核对事先判断的结果。

上机任务5:① 掌握位操作类指令的应用,验证例题3-14程序,实现习题3.28程序。

② 理解串操作指令,验证例题3-16程序。

上机任务6:① 掌握转移指令和分支程序结构。

验证例题4-3程序,实现习题4.5程序。

② 验证例题4-7程序,实现习题4.11程序。

上机任务7:① 掌握循环指令和循环程序结构。

验证例题4-12程序,实现习题4.13程序。

②验证例题4-10程序。

实现如下程序:进行自然数相加(1+2+3+……+N);如果(无符号整数的)累加和用一个32位寄存器存储,求出有效累加和的最大值及N的界限。

上机任务8:① 掌握子程序指令和子程序结构。

验证例题4-15程序,实现习题4.29程序。

②熟悉子程序的参数传递和子程序库方法。

验证例题4-18程序,然后分别使用子程序模块、子程序库和子程序库包含方法生成最终可执行文件。

3.实验准备(1)仔细复习课前关于汇编语言指令系统的PPT,对所需要使用的命令需要知道书本中的位置,并能进行简单的编程。

(2)对书本中的部分例子要仔细阅读,搞清楚实际含义,理解程序内容。

(3)熟练使用MASM程序。

4.实验步骤(1)进入MASM程序。

(2)根据任务需求,在MASM下验证及编制相应的程序。

(3)详细记录每一步所用的命令,以及查看结果的方法和具体结果。

5.实验报告要求(1)如何进入MASM程序。

(2)至少验证一个书本程序,说明如何用命令行与批处理两种形式完成程序的执行。

(3)根据要求,至少编制一个程序,并对每行程序进行说明性注释实验二子程序设计1.实验目的:(1)进一步熟悉8088/8086指令系统与程序分支跳转循环等结构(2)了解子程序设计的要求,和设计过程(3)掌握汇编语言中子程序设计的方法和调用方法2.实验内容上机任务1:①掌握转移指令和分支程序结构。

验证例题4-3程序,实现习题4.5程序。

②验证例题4-7程序,实现习题4.11程序。

上机任务2:①掌握循环指令和循环程序结构。

验证例题4-12程序,实现习题4.13程序。

②验证例题4-10程序。

实现如下程序:进行自然数相加(1+2+3+……+N);如果(无符号整数的)累加和用一个32位寄存器存储,求出有效累加和的最大值及N的界限。

上机任务3:①掌握子程序指令和子程序结构。

验证例题4-15程序,实现习题4.29程序。

②熟悉子程序的参数传递和子程序库方法。

验证例题4-18程序,然后分别使用子程序模块、子程序库和子程序库包含方法生成最终可执行文件。

3.实验准备(1)再次仔细复习课前关于汇编语言指令系统的PPT,对所需要使用的命令需要知道书本中的位置,并能进行简单的编程。

同时复习循环分支程序的构成及结构,并学会熟练使用(2)对书本中的子程序部分例子进行仔细阅读,理解程序内容。

(3)掌握书本中汇编语言中子程序的编写规则。

4.实验步骤(1)进入MASM程序。

(2)根据任务需求,在MASM下验证及编制相应的程序。

(3)详细记录每一步所用的命令,以及查看结果的方法和具体结果。

5.实验报告要求(1)如何进入MASM程序。

(2)至少验证一个书本程序,说明如何用命令行与批处理两种形式完成程序的执行。

(3)根据要求,至少编制一个程序,并对每行程序进行说明性注释实验三字符处理程序设计1.实验目的:(1) 熟悉串操作指令的功能与应用;(2) 掌握串操作指令的寻址方式及使用方法,编写常用的字符串处理程序。

2.实验内容上机任务1:①掌握字符的键盘输入与屏幕显示。

实现如下程序:编写一个汇编程序,将键盘输入的小写字母用大写字母显示出来,若输入的是非字符则显示NOT CHAR,若输入字符“x”,则退出。

实现习题4.11的程序。

②掌握串传送指令。

验证例题3-16程序,实现字符串的复制。

上机任务2:①掌握循环指令和循环程序结构。

不利用串传送指令,实现例题3-16的功能。

②验证例题4-11程序。

实现字符文字的加密与解密。

上机任务3:①验证例题4-12程序,实现字符个数统计程序,实现习题4.13的程序。

②验证例题4-13程序,剔出一个以0结尾的字符串中的空格字符。

3.实验准备(1)仔细复习关于汇编语言指令系统的PPT,对所需要使用的命令需要知道书本中的位置,并能进行简单的编程。

同时复习字符串操作指令的应用,并学会熟练使用(2)对书本中的相关字符处理程序进行仔细阅读,理解程序内容。

(3)掌握书本中字符处理程序(大小写转化、字符数统计、字符剔出等)的编写规则。

4.实验步骤(1)进入MASM程序。

(2)根据任务需求,在MASM下验证及编制相应的程序。

(3)详细记录每一步所用的命令,以及查看结果的方法和具体结果。

5.实验报告要求(1)如何进入MASM程序。

(2)至少验证一个书本程序,说明如何用命令行与批处理两种形式完成程序的执行。

(3)根据要求,至少编制一个程序,并对每行程序进行说明性注释实验四:1输入输出接口2微机串口通信编程(二选一)1.实验目的:(1)通过编程调试,实现汇编语言对计算机端口的调用;(2)熟悉理解指令in/out的使用;调用扬声器端口,实现扬声器发音,掌握输入/输出指令实现汇编语言对计算机端口的调用;(3)熟悉理解端口指令in/out的使用;(4)了解计算机串并行通信技术,实现单个或连续的串行数据传输。

2.实验内容1.利用扬声器控制原理,编写一个简易乐器程序。

当按下1~8数字键时,分别发出连续的中音1~7和高音i(对应频率依次为524Hz,588Hz,660Hz,698Hz,784Hz,880Hz,988Hz和1048Hz);当按下其他键时暂停发音;当按下ESC键(ASCII码为1BH),程序返回操作系统。

参考程序; 数据段table d w 2277,2138,1808,1709,1522,1356,1208,1139; 对应中音1~7和高音i的定时器记数值; 代码段mov al,0b6h ; 设置定时器2工作方式out 43h,alagain: call readc ; 等待按键cmp al,'1' ; 判断是否为数字1~8jb nextcmp al,'8'ja nextsub al,30h ; 1~8的ASCII码转换为二进制数sub al,1 ; 再减1,将数字1~8变为0~7,以便查表xor ah,ahshl ax,1 ; 乘以2mov bx,ax ; 记数值表是16位数据,无法采用xlat指令mov ax,table[bx] ; 取出对应的记数值out 42h,al; 设置定时器2的记数值mov al,ahout 42h,alin al,61h ; 打开扬声器声音or al,03h ; 使D1D0=PB1PB0=11B,其他位不变out 61h,aljmp again ;连续发声,直到按下另一个键next:push axin al,61h ; 不是数字1~8,则关闭扬声器声音and al,0fch ; 使D1D0=PB1PB0=00b,其他位不变out 61h,alpop axcmp al,1bh ; 判断是否为ESC键(对应ASCII码1bh)jne again ; 不是ESC,继续;否则程序执行结束2.首先采用自循环查询方式在本机上实现例题8-3。

3.然后购买或制作一个用于零调制解调器连接的RS-232C电缆,修改例题8-3采用正常的查询方式实现两台微机的通信。

3.实验准备(1)仔细阅读本章中关于输入输出接口技术的内容,掌握输出输出接口对外设的直接控制技术(2)仔细阅读串行通讯接口的结构,寄存器编程方法,对串行通讯包括双机通讯数量掌握。

(3)准备好双绞的串口线一根及声卡可控的微机。

4.实验步骤(1)进入MASM程序。

(2)根据任务需求,在MASM下验证及编制相应的程序。

(3)详细记录每一步所用的命令,以及查看结果的方法和具体结果。

5.实验报告要求(1)如何进入MASM程序。

(2)根据要求,至少编制一个程序,并对每行程序进行说明性注释。

相关文档
最新文档