2021微机原理实验指导书0503
- 格式:docx
- 大小:38.58 KB
- 文档页数:4
实验一初级程序的编写与调试一、实验目的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) (1)实验二简单程序调试(2) (4)实验三汇编程序设计及调试(1) (6)实验四汇编程序设计及调试(2) (12)实验五32位微机接口技术实验 (17)实验六8254定时/计数器应用实验 (23)实验七并行接口8255 (34)附录1 TD-PIT+实验系统的硬件环境 (44)附录2 Tddebug集成操作软件 (56)实验一简单程序调试(1)一.实验目的:1.熟悉8086常用指令;2.掌握Tddebug集成操作软件的操作指令。
二.实验内容:1.在Tddebug集成操作软件环境下输入下列程序片段,用Trace命令单步执行并记录结果。
程序片段运行结果1) DATA SEGMENTDATA ENDSCODE SEGMENTASSUME CS: CODE, DS: DATASTART: MOV AX, 2000HMOV DS, AX DS=MOV DX, 0100HMOV SI, 0000HMOV BYTE PTR[SI+0100H], 0AAH DS: 0100=MOV AL, [SI+0100H] AL=MOV BX, 0100HMOV WORD PTR[SI+BX], 1234HMOV AX, [SI+BX+0H] AX=INT 20HCODE ENDSEND START2)DATA S EGMENTDATA ENDSCODE SEGMENTASSUME CS: CODE, DS: DATASTART: MOV AL, 0FFHMOV AH, 00H AX=XCHG AL, AH AX=MOV AL, 07HMOV AH, 00HMOV BL, 08HADD AL, BL AH= AL=AAA AH= AL=MOV AX, 0FFFFHMOV BX, 8080HSUB AX, BX AX=MOV AX, 0FFFFHMOV BX, 0FFFFHMUL BX DX= AX=MOV AX, 1000HMOV DX, 2000HMOV CX, 4000HDIV CX DX= AX=INT 20HCODE ENDSEND START2.自编程序段实现两个两字节无符号数相加。
实验一系统认识与数码转换实验一、实验目的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)输入源程序,进行汇编、连接。
微机原理及应用实验指导书董珂编写电气与自动化工程学院专业实验中心2006年9月目录第一章系统概述 (1)系统组成 (1)系统介绍 (1)系统资源分配 (2)第二章软件实验 (3)实验一内存操作数及寻址方法 (4)实验二清零程序 (8)实验三逻辑运算程序 (9)实验四拆字及位移程序 (10)实验五拼字程序及分支程序、堆栈程序 (12)实验六数据区移动 (14)实验七数据排序实验 (16)实验八串操作 (18)实验九32位二进制乘法 (22)实验十多分支程序设计 (25)实验十一子程序 (29)第三章硬件实验 (33)实验一简单I/O口扩展 (33)实验二8259中断控制器实验 (35)实验三8255A并行口实验(一)方波 (40)实验四8255A并行口实验(二)PA输入,PB输出 (42)实验五8255A并行口实验(三)控制交通灯 (45)实验六定时/计数器8253方波 (49)实验七8253实验二 (52)实验八继电器控制 (55)实验九8251串口实验(一)自发自收 (57)实验十8251串口实验(二)8251发送26个字母 (61)实验十一步进电机控制 (65)实验十二时、分、秒显示实验 (67)实验十三8259中断嵌套 (72)第四章仿真实验系统键盘监控简介 (73)键盘/显示使用 (73)键盘监控程序简介 (73)第一章系统概述系统组成Dais系列单片机微机仿真实验系统的8088/8086微机接口实验是由管理CPU89C52单元、目标CPU8088/8086单元、接口实验单元和内置稳压电源组成,通过RS232C串行接口与PC微机相连,系统硬件主要内容如下:系统介绍(1)自带键盘、显示器,能独立运行,也可以PC微机为操作平台。
(注意:PC微机必须与本实验系统保持联机状态,即软件界面右上角有编译进度条)(2)系统采用紧耦合多CPU技术,用89C52作为系统管理CPU,8088/8086作为目标接口扩展实验CPU。
微型计算机原理实验指导书目录一、基础实验部分实验一两个多位十进制数相加的实验 (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码形式存放,各占一个内存单元,乘积存放在另外两个内存单元中。
实验一基本程序编程和程序调试一、实验目的1、掌握数码转换等基本程序设计的技巧和方法。
2、熟悉DEBUG命令。
3、学会和掌握用DEBUG调试程序的方法。
二、实验设备PC机一台,装有DOS基本系统三、实验内容及步骤用DEBUG建立、汇编和运行调试程序的操作。
DEBUG是DOS系统支持的用于汇编语言源程序调试的系统软件。
它共有19条命令完成相应的功能,命令及其格式可参阅附录一。
(一)DEBUG操作练习1)实验调试程序程序的功能是从3500H内存单元开始建立0-15共16个数据。
程序如下:地址(H)机器码(H)助记符2000 BF0035 MOV DI,35002003 B91000 MOV CX,00102006 B80000 MOV AX,00002009 9E SAHF200A 8805 MOV BYTE[DI],AL200C 47 INC DI200D 40 INC AX200E 27 DAA200F E2F9 LOOP 200A2011 F4 HLT2)实验步骤:(1)输入与修改①启动DOS,在DOS提示符下输入D E B U G后回车,屏幕立即显示DEBUG提示符“—”,表明已进入DEBUG状态,可以执行DEBUG的各种命令。
②用DEBUG中的汇编命令“A 地址”将程序建立在内存单元中。
在提示符“—”下键入:“A 2000 ↵”此时显示器上将会显示程序的段地址CS和偏移地址IP,你就可以输入以上的程序了。
即显示169C :2000 键入MOV DI,3500169C:2003 MOV CX,0010169C:2011 HLT:::③用反汇编命令“U 地址”检查程序在提示符“—”下,键入“U 2000↵”,将从2000内存单元开始的内容反汇编,屏幕上显示169C:2000 BF0035 MOV DI,3500169C:2003 B91000 MOV CX,0010169C:2006 B8000 MOV AX,0000::::::169C:2011 F4 HLT当发现程序有错时,可用汇编命令“A 地址”进行修改,如要修改200A单元中的指令,则键入“A 200A↵”,屏幕显示169C:200A ,然后再键入MOV BYTE[DI],AL↵,就把错误的程序改正了。
《微机原理及汇编语言》实验指导书微机原理和汇编语言实验指导书信息与通信工程学院电气工程系目录实验须知 (3)实验一数据求和实验 (4)实验二循环与分支程序设计实验 (8)实验三中断程序设计实验 (12)实验四屏幕显示程序设计实验 (14)第一部分实验须知1、预习要求实验前认真阅读实验教程中有关内容,明确实验目的和实验任务。
每次实验前应有预习报告,未预习者不允许参加实验。
预习报告中:对软件实验,要求画出程序流程图,编好上机程序;对硬件实验,要求画出实验线路图,拟定实验步骤,画出程序流程图,编好上机程序。
2、实验要求实验是学习“微机原理及汇编语言程序”这门课程的重要环节,实验课请勿迟到,缺席。
爱护设备,保持清洁,不随意更换设备。
认真完成实验任务,实验结果经教师检查,教师对实验内容提问,对完成者做记录。
做硬件实验时,注意断电操作,即所有的接线、改线及拆线操作均应在不带电的状态下进行,严禁带电操作,并注意防止导线堵塞插孔。
发生事故,应立即切断电源,并马上向教师报告,检查原因,吸取教训。
实验完毕,请整理实验设备,再离开实验室。
3、报告要求每次实验后,应递交一份实验报告,报告中应包括下列内容:(1)实验名称、实验人姓名、学号、班级、所用的设备号。
(2)实验目的、任务。
(3)各任务程序流程图、程序清单(应加适量注释)。
(4)硬件实验应画出各任务的完整电路图,包括PC总线与实验用到芯片间全部电路。
(5)记录和分析实验结果。
(6)根据实验目的认真做小结。
第二部分实验实验一数据求和实验一、实验目的1、学习使用DEBUG程序的各种命令。
2、了解计算机取指令、执行指令特别是算术运算指令的工作过程。
3、掌握用DEBUG调试程序的方法。
二、实验内容1、参照教材中有关内容,掌握DEBUG程序的各种操作命令,重点为R——寄存器内容检查命令D——存储器内容检查命令A——汇编命令U——反汇编命令T——跟踪及单步执行命令P——单步执行命令,跳过子程序G——全速执行程序命令。
《微机原理与应用》实验指导书机械电子工程系机械工程学院实验一分支程序,查表程序编写实验一、实验目的1.掌握跳转指令2.掌握子程序调用指令3.掌握查表程序运用二、实验设备单片机IDE集成开发软件三、实验要求验证“实验原理”一节中给出的实例程序,熟悉各种跳转指令、子程序调用指令,以及查表程序编写方法。
四、实验原理作为软件实验,可以在没有硬件及仿真仪的情况下,利用集成开发环境进行。
1.跳转指令控制转移的指令包括无条件转移指令和有条件跳转指令。
(1)长跳转指令LJMP addr16长跳转,把16位(2个字节)的地址送入PC中。
〔2〕绝对转移指令AJMP addr11在存储空间2kB内转移。
与PC当前值高5位共同组成16位目标地址。
(3)短跳转指令SJMP rel8位补码表示的地址。
可以在-128到127之间跳转。
(4)间接跳转指令JMP @A+DPTR这是一条很有用的散转指令。
跳转地址在程序运行时动态决定。
(5)累加器判零转移指令JZ rel,JNZ rel,JZ rel,累加器为0转移,JNZ rel,累加器不为0转移。
(6)比较转移指令,CJNE <目的字节>,<源字节>,rel。
CJNE A,#data,relCJNE A,direct,relCJNE @Ri,#data,relCJNE Rn,#data,rel(8)循环转移指令DJNZ Rn,rel。
首先Rn减1,然后判断是否是零,不是则跳转。
DJNZ direct , rel。
首先直接地址中的数据减1,然后判断是否是零,不是则跳转。
(9)位控制转移指令JC rel,若Cy=1,则(PC)<--(PC)+2+rel若Cy=0,则(PC)<--(PC)+2JNC rel若Cy=0,则(PC)<--(PC)+2+rel若Cy=1,则(PC)<--(PC)+2JB bit,rel; 若(bit)=1,则(PC)<--(PC)+3+rel若(bit)=0,则(PC)<--(PC)+3JNB bit,rel若(bit)=0,则(PC)<--(PC)+3+rel若(bit)=1,则(PC)<--(PC)+3JBC bit,rel; 若(bit)=1,则(PC)<--(PC)+3若(bit)=0,则(PC)<--(PC)+3+rel,(bit)←02.子程序调用和返回指令。
微型计算机原理实验指导书襄樊学院物理与电子信息工程系实验要求1.进入实验室前完成的部分1)认真阅读实验指导书,弄懂实验原理和实验内容。
分析实验内容A程序的结构、实现方法。
2)编写实验所要用到的程序,将其放在U盘上。
3)写出预习报告(其中应有实验内容A、B的程序清单)。
2. 进入实验室后完成的部分1)对实验内容A对其进行汇编、链接获得可执行文件。
运行可执行文件,实现实验内容A的要求。
2)对实验内容B的程序进行调试,修改错误,获得要求的结果。
3)保存调试后的程序。
3.实验结束后的部分对实验结果进行分析、总结,写出实验报告。
实验报告内容及格式1.实验目的2.实验设备3.实验内容只做文字叙述,程序部分放在程序清单中。
4.程序清单实验内容B的完整程序。
如果使用了本实验或前面实验中完全相同的子程序,可不列写,只做注明即可。
实验内容A的程序清单放在预习报告中,不再列写。
5.实验步骤6.实验总结主要包括对实验结果、调试过程、错误及产生的原因的分析,以及本次实验的重要收获等。
此项为实验成绩评定的重要依据。
汇编语言程序的上机过程本章内容在实验一~实验六中使用。
1.实验环境在计算机的C盘(也可以是其他盘符)下,有一个MASM50(也可能是其他文件名)文件夹,在这个文件夹下存放着对汇编语言源程序进行汇编、调试所需要的各种文件。
2.建立源程序可以用你熟悉的文本编辑器,如记事本、写字板等来建立一个源程序文件。
但需要注意以下几点:(1)在“我的电脑\工具\文件夹选项\查看\”中将“隐藏已知文件类型的扩展名”上的“√”去掉。
(2)源程序文件的文件名应该是*.asm,如果不是应进行修改。
(3)源程序文件中的字符必须是西文半角字符,不能使用中文全角字符。
(4)不要把数字“0”错写成字符“O”,或者把字符“O”错写成数字“0”。
3. 进入DOS系统在Windows XP的“附件”中有一个“命令提示符”,运行它即可进入DOS系统。
4. 在DOS系统中进入文件夹E:\>CD 文件夹名↙。
本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为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.冒泡算法简介冒泡算法的基本思想:将待排序的元素(数据)看作是竖着排列的“气泡”,较小的元素比较轻,从而要往上浮。
微机原理实验指导书(版本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。
微机原理及接口技术实验指导书周志敏谢楠编浙江水利水电专科学校计算机与信息工程系2008 年 3 月目录第1章80X86微机原理及其程序设计实验..................................................................................11.1 系统认识实验............................. ...........................................................................................11.2 运算类编程实验................ . ................................................................................................. 51.3 分支程序设计实验............................. .................................................................................81.4 循环程序设计实验........................................... ...................................................................111.5 显示程序实验................................................................... ...................................................14第2章80X86微机接口技术实验............... ...............................................................................152.1 静态存储器扩展实验.................... ......................................................................................152.2 8259 中断控制实验.................................................................... .........................................182.3 DMA特性及8237应用实验............................................. ...............................................242.4 8254 定时/计数器应用实验.................................................. ............................................302.5 8255 并行接口实验............................................................ ................................................352.6 8251 串行接口应用实验...................................................... ..............................................392.7 键盘扫描及显示设计实验............................................... ................................................512.8 电子发声设计实验............................................................... .. (55)附录1 Wmd86联机软件使用说明....................................... ....................................................59附录2 系统实验程序清单........................................................................... .............................67附录3 系统编程信息..................................................................................... ...........................69附录4I386EX系统板引出管脚排列及名称.................................................. .. (71)附录5 TD-PITE实验箱布局............................................................................. ..................... ..72 第1章80X86 微机原理及其程序设计实验本章主要介绍汇编语言程序设计,通过实验来学习80X86 的指令系统、寻址方式以及程序的设计方法,同时掌握联机软件的使用。
微机原理及应用实验指导书专业班级学号姓名前言实验目的掌握微型计算机的结构组成和工作原理、微机存储系统的结构组成和工作原理,熟练掌握微型计算机的中断技术、典型接口芯片的硬件设计和初始化及工作程序的设计。
了解微型计算机的最新技术和发展。
为后续课程打下坚实的基础。
实验综述微机原理及接口技术是一门实践性很强的专业技能课,通过实验环节使学生掌握微型计算机与外设连接的有关技术,以及一些典型通用接口的工作原理、工作过程及应用方法,培养学生对接口电路分析和设计的能力,使学生能将微型计算机与通用或专用外设连接起来,构成完整的微机系统或计算机控制系统。
每次实验前,学生必须按照指导书要求进行不少于实验课时数的预习与准备。
实验结果必须经实验教师认可。
实验环境硬件条件:高档PC机微机及接口实验系统装置软件条件:DOS 操作系统。
任意一种编辑程序,如EDIT.EXE。
宏汇编程序MASM.EXE。
连接程序LINK.EXE。
调试程序DEBUG.EXE。
目录实验一系统认识实验................................................................. 错误!未定义书签。
实验二程序调试(在DOS环境中执行) .................................... 错误!未定义书签。
实验三数据排序(在伟福环境中执行) ...................................... 错误!未定义书签。
实验四8259外部中断实验........................................................ 错误!未定义书签。
实验五8255输入、输出实验.................................................... 错误!未定义书签。
实验六8253计数器实验............................................................ 错误!未定义书签。
微机原理实验指导书商丘师范学院物理与信息工程系编实验一二进制多位加法运算实验 ............................................................... 错误!未定义书签。
一、实验目的 ................................................................................................... 错误!未定义书签。
二、实验仪器 ................................................................................................... 错误!未定义书签。
三、实验原理 ................................................................................................... 错误!未定义书签。
四、实验步骤 ................................................................................................... 错误!未定义书签。
五、问题思考 ................................................................................................... 错误!未定义书签。
实验二数码显示实验 ..................................................................................... 错误!未定义书签。
一、实验目的 ................................................................................................... 错误!未定义书签。
微机原理实验指导书实验一数据传送实验目的: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的直接寻址、寄存器间接寻址、变址寻址、寄存器相对寻址传送指令编写程序段,并上机验证结果。
2021微机原理实验指导书0503
2.1系统认识实验
[实验目的]
掌握td系列微机原理及接口技术教学实验系统的操作,熟悉wmd86联机集成开发调
试软件的调试环境。
【实验设备】
一台PC和一台TD pit实验装置。
[实验内容]
编写实验程序,将00h~0fh共16个数写入到内存3000h开始的连续16个存储单元中。
【实验步骤】
1.运行wmd86软件,进入wmd86集成开发环境。
2.在设置菜单中选择“汇编语言”和“16位寄存器”。
3.单击文集菜单的新建命令,新建一个文档,默认文件名为wmd861。
4.编写实验程序并保存。
此时,系统将提示您输入新的文件名,然后单击“保存”。
5.单击已编译的文件。
如果程序编译正确,科技将继续点击链接,只有链接正确后才能加
载程序。
6.连接PC和实验系统之间的通信电缆,打开实验系统的电源。
7.编译、链接都正确并且上下机通讯成功后,就可以下载程序,联机调试了。
可以通
过端口列表中的“端口测试”来检查通讯是否正常。
点击
下载程序。
为编译、链接、下载
组合按钮,可一次完成编译、链接和下载。
下载成功后,“加载成功!”将显示在输
出区域的结果窗口中,表示程序已正确下载。
start run语句下会有一个绿色背景。
8.将
输出区切换到调试窗口,使用实验命令d0000:3000查看内存3000h起始地址的数据。
9.
点击
按钮运行程序,等待程序运行停止后,通过命令来观察程序结果。
10.还可以设置端点。
要修改内存中的数据,可以使用命令E。
例如,e0000:3000可
以修改地址0000:3000处的数据。
修改一个数字后,您可以按“空格”键继续输入下一个
数字。
输入后按“回车”键退出。
2.2数制转换实验
[实验目的]
1掌握不同进制数及编码相互转换的程序设计方法,加深对数值转换的理解。
2.熟悉
程序调试的方法。
【实验设备】
一台PC和一台TD pit实验装置。
[实验内容]
编写程序,将ascii码表示的十进制数转换为二进制数。
【实验步骤】
1.根据程序流程图编写程序。
2.正确编译和连接后加载到系统中。
3.待转换的数据放入数据段,根据自己要求输入,默认为30h,30h,32h,35h,36h。
即十进制数256.
4.运行程序,然后停止程序。
5.查看ax寄存器,即为转换结果,应为:0100.
6.反复试验几组数据,验证程序的正
确性。
参考程序:A2-1 asm
数码转换程序流程图
4.28259中断控制实验
【实验目的】
1.掌握8259中断控制器的工作原理。
2.学习8259的应用编程方法。
3.掌握8259级
联模式的使用方法。
[实验设备]
pc机一台,td-pite实验装置一套。
【实验内容】
1.8259单中断实验。
编写程序。
每次按下“KK1+”时,屏幕上将生成并显示一个外部中断
示一个字符“7”。
2.8259级联实验。
编写程序,每次按“KK1+”生成一个外部中断,并在屏幕上显示该字
符“m7”,每按动一次“kk2+”,在屏幕上显示字符“s1”。
【实验步骤】
1.8259单中断实验
(1)按实验接线图进行接线。
(2)编写实验程序,编译连接后加载到系统中。
(3)运行程序,反复按KK1+,显示屏上将显示字符“7”,表示相应的中断。
实验参考程序:INT1 asm
8259单中断实验接线图
思考问题:1修改程序,以便每次按下KK1+时,屏幕上都会显示ABC。
2.编写程序,当第一次按动kk1+时,屏幕上显示1,第二次显示2,依次类推。
2.8259级联实验
(4)根据实验接线图进行接线。
(5)编写实验程序,经编译、连接无误后装入系统。
(6)运行程序,按KK1+或KK2+,观察实验结果,验证实验程序的正确性。
(7)
如果同时按下KK1+和KK2+,观察实验现象并解释实验现象。
实验参考程序:intcas1 asm
8259级联实验接线图
4.48254定时器/计数器应用实验
【实验目的】
1.掌握8254的工作模式和应用编程。
2掌握8254典型应用电路的连接方法。
[实验设备]
pc机一台,td-pite实验装置一套。
【实验内容】
1.计数应用实验。
编写一个程序,应用8254的计数功能,每次按下“KK1+”5次,使用单脉冲模拟计数产生一个计数中断,屏幕上显示一个字符“m”。
2.定时应用实验。
编写程序,应用8254的定时功能,产生一个1s的方波。
【实验步骤】
1.计数应用实验
(8)按实验接线图进行接线。
(9)编写实验程序,编译连接后加载到系统中。
(10)运行程序,按动kk1+产生单次脉冲,观察实验现象。
(11)更改计数值以验证8254的计数功能。
实验参考程序:a82541 asm
8254计数应用实验接线图
思考问题:修改程序,在按下5次后,会产生一个计数中断,并在屏幕上显示一个字符'm'。
按下10次后,将生成计数中断,并在屏幕上显示字符“Q”。
2.定时应用实验
(1)根据实验接线图进行接线。
(2)编写实验程序,经编译、连接无误后装入系统。
(3)单击
按钮运行程序,8254的out1引脚输出1s方波。
按钮或直接单击工具栏的
(4)用示波器观察波形,单击虚拟仪器菜单中的按钮,然后在弹出的示波器界面上单击波形。
实验参考程序:a82542.asm
按下按钮运行示波器,可以观察out1引脚的输出
8254定时应用实验接线图
4.58255并行接口实验
【实验目的】
1.掌握8255的工作模式和应用编程。
2掌握8255典型应用电路的连接方法。
[实验设备]
pc机一台,td-pite实验装置一套。
【实验内容】
1.基本输入输出实验。
编写一个程序,使8255的端口a输入,端口B输出,完成从拨动开关到数据灯的数据传输。
只要切换开关,数据的显示就会相应改变。
2.流水灯显示实验。
编写程序,使8255的a口和b口均为输出,数据灯d7~d0由左向右,每次仅亮一个灯,循环显示,d8~d15与d7~d0相反,由右向左,每次仅亮一个灯,循环显示。
【实验步骤】
1.基本输入输出实验
(1)按实验接线图进行接线。
(2)编写实验程序,编译连接后加载到系统中。
(3)运行程序,改变拨动开关,观察led变化现象,验证程序功能。
a82551。
asm。