微机原理 实验三
微机原理及应用实验报告
3•掌握各种寻址方法以及简单指令的执行过程。
二、实验要求
1实验前要作好充分准备,包括汇编程序清单、调试步骤、调试方法以及对程序结果的分 析等。
2•本实验要求在PC机上进行。
3•本实验只要求在DEBUC调试状态下进行,包括汇编程序,调试程序,执行程序。
4•熟悉建立源文件,进行汇编和连接的全过程,并对程序进行调试。
二、实验要求
1•实验前准备
1分析题目,将程序中的原始数据、中间结果和最终结果的存取方式确定好。
2写出算法或画出流程图。
3写出源程序。
4对程序中的结果进行分析,并准备好上机调试的过程。
2•本实验要求在PC机上进行。
3•汇编过程中出现问题,可用DEBU(进行调试。
xorax,ax pushax movax,data movds,ax leasi,data1 leadi,data2 leabx,data3 moval,[si+3] movah,[di+3] an dal,0fh an dah,0fh addal,ah oral,30h mov[bx+3],al moval,[si+2] movah,[di+2] an dal,0fh an dah,0fh adcal,ah oral,30h mov[bx+2],al moval,[si+1] movah,[di+1] an dal,0fh an dah,0fh adcal,ah oral,30h mov[bx+1],al moval,[si] movah,[di] an dal,0fh an dah,0fh adcal,ah
;exercize21
微机原理实验报告册(3篇)
第1篇一、实验目的1. 理解和掌握微机的基本组成和工作原理;2. 熟悉微机硬件设备和实验仪器的使用方法;3. 提高动手实践能力,培养解决实际问题的能力;4. 深入理解微机原理课程内容,为后续课程学习奠定基础。
二、实验内容1. 微机系统认识实验2. 微机硬件组成实验3. 微机指令系统实验4. 微机寻址方式实验5. 微机程序设计实验6. 微机接口技术实验三、实验仪器与设备1. 微机原理实验箱2. 示波器3. 数字万用表4. 计算机一台5. 实验指导书四、实验步骤与内容1. 微机系统认识实验(1)观察实验箱的结构,了解各个模块的功能;(2)熟悉实验箱的电源、复位、运行等按钮的使用方法;(3)学习微机系统的工作流程,包括加电、复位、启动等过程;(4)观察微机系统启动后的运行状态,了解各个模块的协同工作。
2. 微机硬件组成实验(1)观察实验箱的CPU、内存、I/O接口等硬件模块;(2)学习CPU的内部结构,包括寄存器、控制单元、运算单元等;(3)学习内存的存储原理,了解ROM、RAM等存储器的特点;(4)学习I/O接口的工作原理,了解中断、DMA等传输方式。
3. 微机指令系统实验(1)学习微机指令系统的基本格式,包括操作码、地址码等;(2)掌握微机指令系统的寻址方式,包括立即寻址、直接寻址、间接寻址等;(3)编写简单的汇编语言程序,实现加、减、乘、除等运算;(4)学习微机中断处理过程,了解中断向量表、中断服务程序等概念。
4. 微机寻址方式实验(1)学习微机寻址方式的基本概念,包括直接寻址、间接寻址、寄存器寻址等;(2)编写程序,实现不同寻址方式下的数据访问;(3)观察不同寻址方式对程序执行速度的影响。
5. 微机程序设计实验(1)学习汇编语言程序设计的基本方法,包括数据定义、指令编写、程序结构等;(2)编写简单的程序,实现数据交换、排序等操作;(3)学习微机程序的调试方法,包括单步执行、断点设置等。
6. 微机接口技术实验(1)学习微机接口技术的基本概念,包括并行接口、串行接口等;(2)观察实验箱中的并行接口、串行接口等模块,了解其工作原理;(3)编写程序,实现数据在并行接口、串行接口之间的传输;(4)学习微机中断处理在接口技术中的应用。
微机原理及应用实验(题目)
微机原理及应用实验实验一开发环境的使用一、实验目的掌握伟福开发环境的使用方法,包括源程序的输入、汇编、修改;工作寄存器内容的查看、修改;内部、外部RAM内容的查看、修改;PSW中个状态位的查看;机器码的查看;程序的各种运行方式,如单步执行、连续执行,断点的设置。
二、实验内容在伟福开发环境中编辑、汇编、执行一段汇编语言程序,把单片机片内的30H~7FH 单元清零。
三、实验设备PC机一台。
四、实验步骤用连续或者单步的方式运行程序,检查30H-7FH 执行前后的内容变化。
五、实验思考1.如果需把30H-7FH 的内容改为55H,如何修改程序?2.如何把128B的用户RAM全部清零?六、程序清单文件名称:CLEAR.ASMORG 0000HCLEAR: MOV R0,#30H ;30H 送R0寄存器MOV R6,#50H ;50H 送R6寄存器(用作计数器)CLR1: MOV A,#00H ;00 送累加器AMOV @R0,A ;00 送到30H-7FH 单元INC R0 ;R0 加1DJNZ R6,CLR1 ;不到50H个字节,继续WAIT: LJMP WAITEND实验二数据传送一、实验目的掌握MCS-51指令系统中的数据传送类指令的应用,通过实验,切实掌握数据传送类指令的各种不同的寻址方式的应用。
二、实验内容1.编制一段程序,要求程序中包含7中不同寻址方式。
2.编制一段程序,将片内RAM30H~32H中的数据传送到片内RAM38H~3AH中。
3.编制一段程序,将片内RAM30H~32H中的数据传送到片外RAM1000H~1002H 中。
4.编制一段程序,将片内RAM40H~42H中的数据与片外RAM2000H~2002H中的数据互换。
三、实验设备PC机一台。
四、实验步骤逐段编制程序,汇编无误后,用连续或者单步的方式运行程序,检查程序的运行结果,看是否达到预期的效果。
五、实验思考1.如何把片外RAM中1000H~100FH单元中的数传送到片外RAM中2000H~200FH单元中?2.如何把ROM中0200H~0207H单元的数传送至片外RAM0000H~0007H单元中?实验三数码转换一、实验目的掌握采用软件方法进行不同形式数据之间的转换,如十进制数与二进制数的转换、十六进制数与BCD码的转换、BCD数与ASCII码之间的转换、非压缩BCD码与压缩BCD码之间的转换。
微机原理实验三实验报告
实验3. 循环程序设计一、实验目的⒈掌握移位指令的使用方法。
⒉学会循环结构程序的编程方法。
⒊利用DEBUG调试程序查看循环程序循环过程中CS和IP的变化情况。
二、实验要求⒈编写程序并上机调试,记录运行结果。
⒉用DEBUG调试程序调试所编程序,查看并记录每条指令内存单元地址及执行结果(包括F标志寄存各位值。
)⒊注意观察并记录每条指令执行后CS和IP寄存器值变化情况,以加深对循环程序的概念的理解。
三、实验内容⒉编写统计15个学生数学学习成绩程序。
要求:分别统计出低于60分,60-69分,70-79分,80-89分,90-100分的人数,并存放到S5,S6,S7,S8,S9,S10对应内存单元中。
源程序代码;DATA SEGMENTDATA1 DB 55,60,65,88,67,70,75,80,77,85,90,66,95,53,100DATA2 DB 5 DUP(?)DATA ENDS;CODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV CX,15LEA SI,DATA1LEA DI,DATA2AGAIN:MOV AL,[SI]CMP AL,90JB NEXT1INC BYTE PTR[DI]JMP NEXT0NEXT1:CMP AL,80JB NEXT2INC BYTE PTR[DI+1]JMP NEXT0NEXT2:CMP AL,70JB NEXT3INC BYTE PTR[DI+2]JMP NEXT0NEXT3:CMP AL,60JB NEXT4INC BYTE PTR[DI+3]JMP NEXT0NEXT4:INC BYTE PTR[DI+4]NEXT0:INC SILOOP AGAINMOV AH,4CHINT 21HCODE ENDSEND START程序运行结果截图:四、实验总结本次实验掌握移位指令的使用方法。
微机原理实验报告
微机原理实验报告微机原理与接口技术实验报告学院:信息工程学院班级:学号:姓名:实验一:系统认识实验1 实验目的:掌握TD-PITE 80X86 微机原理及接口技术教学实验系统的操作,熟悉Wmd86联机集成开发调试软件的操作环境。
2 实验设备:PC机一台,TD-PITE 实验装置一套。
3 实验内容:编写实验程序,将00H~0FH 共16 个数写入内存3000H 开始的连续16 个存储单元中。
4 实验步骤:1. 运行Wmd86 软件,进入Wmd86 集成开发环境。
2. 环境调试,“设置”选项中选择汇编语言。
语言环境选择界面3. 新建文档,编写程序,程序如下:SSTACK SEGMENT STACKDW 32 DUP(?)SSTACK ENDSCODE SEGMENTASSUME CS:CODE,SS:SSTACKSTART: PUSH DSXOR AX, AXMOV DS, AXMOV SI, 3000HMOV CX, 16AA1: MOV [SI], ALINC SIINC ALLOOP AA1AA2: JMP AA2CODE ENDSEND START4. 编译连接,程序无误下载:信息界面5. 连接PC与实验系统的通讯电缆,打开实验系统电源。
6. 下载程序,查看内存3000H 开始的连续16 个存储单元中的内容,显示如下:8.由于该内存段原始数据与实验数据相同,便于区分观察,将该内存段初始化,然后查看:9.点击运行程序,在此查看该段内存:10.设置断点,执行程序:5 操作练习编写程序,将内存3500H 单元开始的8 个数据复制到3600H 单元开始的数据区中。
通过调试验证程序功能,使用E命令修改3500H 单元开始的数据,运行程序后使用D命令查看3600H 单元开始的数据。
1、编写程序如下:SSTACK SEGMENT STACKDW 32 DUP(?)SSTACK ENDSCODE SEGMENTASSUME CS:CODE,SS:SSTACKSTART: PUSH DSXOR AX, AXMOV DS, AXMOV SI, 3500HMOV DI, 3600HMOV CX, 8AA1: MOV AL, [SI]MOV [DI], ALINC SIINC DILOOP AA1AA2: JMP AA2CODE ENDSEND START2、执行过程如上,内存变化如下:程序执行前程序执行后实验二:数制转换实验1、实验目的1. 掌握不同进制数及编码相互转换的程序设计方法,加深对数制转换的理解;2. 熟悉程序调试的方法。
微机原理实验3
《微机原理》上机实验第一次实验内容一、8086宏汇编系统盘构成1. masm.exe 宏汇编系统程序把汇编语言源程序(.asm)汇编成目标文件(.obj)2. link.exe 连接程序把目标文件(.obj)连接生成执行文件(.exe)3. cref.exe 索引程序4.Lib.exe 库管理程序5. 汇编源程序编辑工具。
二、8086宏汇编上机实验步骤第一步:编辑源程序(程序名.asm)Edit 程序名.asm(Alt+F 选择存盘)第二步:对源程序(.asm)进行汇编masm 程序名(提示两个0 ,表示源程序,程序名.asm编辑正确,否则需进入第一步,修改源程序)第三步:对目标文(.obj)件进行连接Link 程序名第四步:运行执行文件,查看结果程序名三、实验实例1、利用8086宏汇编语言,编程在屏幕上显示“Hello!”程序清单:Data segmentA db ‘Hello!$’Data endsCode segmentAssume cs:code,ds:dataStart:mov ax,dataMov ds,axLea dx, aMov ah,9Int 21hMov ah,4chInt 21hCode endsEnd start三、DEBUG上机1. DEBUG常用命令如何启动DEBUG?在DOS提示符下,输入命令DEBUG 回车出现_ 提示符,所有的DEBUG命令在_提示符下进行。
(1)汇编命令格式:A [地址](2)退出DEBUG命令格式:Q(3)文件命名格式:N 文件名(4)显示寄存器内容格式:R [寄存器名](5)写盘命令格式:W(6)运行命令格式:G(7)单步执行命令格式:T(8)反汇编命令格式:U实验二:利用DEBUG编程计算5+3,并显示结果。
程序指令清单Mov al, 5 Add al, 3 Mov dl, al Or dl,30 Mov ah,2 Int 21 Mov ah,4c Int 21《微机原理》实验3一、实验目的:通过本节课实验,使学生掌握DOS中断调用的格式以及DOS常用中断调用;掌握宏指令的定义及调用格式;掌握8086模块程序的定义及调用格式、对段间模块程序调用进行汇编的命令格式;掌握程序正常结束返回DOS的两种方法。
微机实验三-进制转换实验报告
计算机科学与技术系实验报告专业名称计算机科学与技术课程名称微机原理与接口技术项目名称进制转换实验班级学号姓名同组人员无实验日期 2016/06/28一、实验目的与要求1、熟悉二进制、十进制、十六进制转换规则。
2、熟悉算术运算指令及移位指令的运用。
二、实验逻辑原理图与分析(汇编—流程图)2.1 画实验逻辑原理图三、程序分析1、十进制转二进制(此处时代码,但是由于上传问题,学生可以自己添加)将存放转换后的二进制数值,并通过移位的方式将寄存器中的每一位转换成对应的字符显示出来就成了对应的二进制。
2、二进制转十进制(此处也是代码,只要把代码复制进去就行。
也可以私聊我,我分享代码给你们。
)用系统功能调用将上面程序除出来的每一位转换成字符输出到显示器上来,从而完成2进制向10进制的转黄。
四、实验数据和结果分析4.1 实验结果数据二进制转十进制实验结果: 00001111B=15D;十进制转二进制实验结果:27D=00011011B;十六进制转十进制的实验结果:0011H=17D4.2 结果数据分析二进制转十进制结果分析:((0*2+1)*2+1)*2+1)*2+1=15;十进制转二进制结果分析:该数在计算机是以二进制形式存储的,即0,1,每次输出时,根据最高位判断一下是1还是0;十六进制转十进制结果分析:(0*16+1)*16+1=17五、实验问题分析、思考题与小结在实验过程中,我们发现对于16位的10转2中,其高位会出错通过检测盘查发现,错误出在对于寄存器的界限上以及高低位的使用上有问题。
本次实验过程中,我们进一步了解的系统功能调用,如从键盘上输入字符以及从显示器上显示对应的字符。
了解了在汇编语言中如何实现子函数调用,利用call 指令调用对应的函数,从而减少程序的重复性以及方便程序的可读性。
在整体实验中熟悉了移位指令,算术指令以及堆栈相关的指令,对于这些指令的用法进一步了解了。
并通过在编写程序中出现的错误加深了自身的编程习惯。
微机原理继电器实验
实验三 继电器控制要求和代码 二、实验原理与内容 实验原理如图所示,编程使用8253定时,让继电器周而复始的闭合5秒钟(指示灯亮),断开5秒钟(指示灯灭)。
5V 1、将8253计数器0设置为方式3,计数器1设置为方式0串连使用,CLK0接1MHZ 时钟,设置两个计数器的初值(乘积为5000000)启动计数器工作后,经过5秒OUT1 输出高电平。
通过8255A 口查询OUT1的输出电平,用C 口的PC0输出开关量控制继电器动作。
2、继电器开关量输入端输入“1”,继电器常开触点闭合,电路接通,指示灯亮,输入“0”,开关断开,指示灯熄灭。
一、实验目的1、了解微机控制直流继电器的原理2、进一步熟悉8255和8253的应用2主程序Data segmentio8255 equ 28bhio8255a equ 288hio8253 equ 283hio82530 equ 280hio82531 equ 281hdata endscode segmentassume cs:codestart:mov dx,io8255mov al,90hout dx,almov al,01 ;置位out dx,alcall delaymov al,0 ;复位out dx,alcall delayjmp startdelay proc near ;延时子程序push dxmov dx,io8253 ;设8253计数器0为方式3mov al,36hout dx,almov dx,io82530 ;8253计数器0写初值mov ax,10000out dx,almov al,ahout dx,almov dx,io8253 ;设8253计数器1为方式0mov al,70hout dx,almov dx,io82531 ;8253计数器1写初值mov ax,500out dx,almov al,ahout dx,alpress:mov ah,6mov dl,0ffhint 21hjz next ;无键按下跳转mov ah,4chint 21hnext:mov dx,io8255ain al,dxtest al,01h ;测试jz presspop dxret delay endpcode endsend start。
微机原理实验报告
微机原理实验报告院别:物理与电子工程学院专业:电子信息工程1011班姓名:刘小云学号:2010128134实验一两个多位十进制数相加的实验一、实验目的学习数据传送和算术运算指令的用法熟悉在PC机上建立、汇编、链接、调试和运行汇编语言程序的过程。
二、实验内容将两个多位十进制数相加,要求被加数和加数均以ASCII码形式各自顺序存放在以DATA1、DATA2为首的5个内存单元中(低位在前),结果送回DATA1处。
三、程序框图四、实验所用程序DATA SEGMENTDATA1 DB 33H,39H,31H,37H,34H;被加数DATA1END EQU $-1DATA2 DB 34H,35H,30H,38H,32H;加数DATA2END EQU $-1SUM DB 5 DUP(?)DATA ENDSSTACK SEGMENTSTA DB 20 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA START: MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXMOV AX,TOPMOV SP,AXMOV SI,OFFSET DATA1ENDMOV DI,OFFSET DATA2ENDCALL ADDAMOV AX,4C00HINT 21HADDA PROC NEARMOV DX,SIMOV BP,DIMOV BX,05HAD1: SUB BYTE PTR [SI],30HSUB BYTE PTR [DI],30HDEC SIDEC DIDEC BXJNZ AD1MOV SI,DXMOV DI,BPMOV CX,05HCLCAD2: MOV AL,[SI]MOV BL,[DI]ADC AL,BLAAAMOV [SI],ALDEC SIDEC DILOOP AD2MOV SI,DXMOV DI,BPMOV BX,05HAD3: ADD BYTE PTR [SI],30H ADD BYTE PTR [DI],30H DEC SIDEC DIDEC BXJNZ AD3RETADDA ENDPCODE ENDSEND START五、实验程序分析及预计结果数据定义段省略分析MOV SI,OFFSET DATA1END ;将DATA1的偏移地址给SI,SI中存放的是0004 MOV DI,OFFSET DATA2END ;将DATA2的偏移地址给DI,DI中存放的是0009 CALL ADDA;调用子程序ADDAMOV AX,4C00HINT 21HADDA PROC NEARMOV DX,SIMOV BP,DIMOV BX,05HAD1: SUB BYTE PTR [SI],30H;将SI中的数值变为十进制数SUB BYTE PTR [DI],30H;将DI中的数值变为十进制数DEC SI;将SI中的地址前移一位改变下一个数值DEC DI;将DI中的地址前移一位改变下一个数值DEC BX;定义循环的次数JNZ AD1;在BX中的数值不等于0的情况下循环执行AD1MOV SI,DX;重新初始化SIMOV DI,BP;重新初始化DIMOV CX,05HCLC ;将进位标志位清零AD2: MOV AL,[SI]MOV BL,[DI]ADC AL,BL;将AL,BL中的数据用带进位的加法相加,保存到AL中AAAMOV [SI],ALDEC SIDEC DILOOP AD2MOV SI,DXMOV DI,BPMOV BX,05HAD3: ADD BYTE PTR [SI],30H;将十进制数转化为十六进制,并存到SI中ADD BYTE PTR [DI],30H;将十进制数转化为十六进制,并存到DI中DEC SIDEC DIDEC BXJNZ AD31、在数据段,定义了一个data1,分配的地址是00~04,data1end里面的内容是04h,且不占内存,定义的data2,分配的地址是05~09,类似的,data2end里面的内容是09h2、在循环AD1过程中,data1里面的内容从开始的33h,39h,31h,37h,34h变为3,9,1,7,4;data2里面的内容也从开始的34h,35h,30h,38h,32h变为4,5,0,8,2。
微机原理实验指导书
实验八 RS-232标准全双工查询方式 异步串行通信实验
实验目的
学习RS-232C标准的串行通信接口电路及串行通信收/发程序的 设计原理与方法。
实验求
采用两台MFID平台板上的串行接口电路进行硬件连接,分别编 写甲乙两机各自的发送与接收程序,并进行调试,直至程序正 常运行。
实验内容
甲乙两台微机之间,按RS-232C标准协议,进行零MODEM方 式,全双工串行通信。所谓全双工是双方通过各自的键盘按键 发送,同时接收对方发来的字符。发送与接收的字符均在屏幕 上显示。通信数格式为起止式:1位停止位,7位数据位,无校 验,波特率因子为16。波特率为1200bps。按ESC键,退出。
微机原理实验指导书
华中科技大学计算机学院 武汉豪申光电新技术有限公司
目录
实验一 实验二 实验三 实验四 实验五 实验六 实验七 实验八 实验九 实验十
系统认识实验 分支程序设计实验 循环程序设计实验 排序程序设计实验 子程序设计实验 8255并行接口实验 音乐发声器接口实验 RS-232标准全双工查询方式异步串行通信实验 查询方式A/D转换器接口实验 D/A函数波形发生器接口实验
实验二 分支程序设计实验
实验目的
掌握分支程序的结构。 掌握分支程序的设计方法。
实验要求
编制计算下面函数值的程序(x,y的值在-128~+127之间) 1 x>=0,y>=0 a= -1 x<0,y<0 0 x,y异号 输入数据为x、y,输出数据为a。
实验内容
在MF2KP环境下输入汇编程序,编译、连接,生成.exe文 件。 2. 启动调试程序(Debug)。 3. 在程序的退出处设置断点,利用Add Watch命令查看A中 的内容是否正确。
微机原理实验
实验一调试程序DEBUG的使用方法一、实验目的通过对DEBUG调试程序的使用,熟悉用DEBUG调试汇编语言程序的方法,加深对汇编语言指令、机器码、寻址方式等基本内容的理解,为后续程序编制和调试打下基础。
二、实验原理调试程序DEBUG 的特点:在受控环境中测试程序;装入,显示或修改任何文件;执行DOS程序;完成磁盘实际读/写操作;建立或汇编汇编语言程序。
DEBUG的命令格式:DEBUG [drive:][path][filename.exe][param...]其中:drive: 是DEBUG将要调试的文件所在的磁盘驱动器。
path: 是查找DEBUG将要调试的文件所需的子目录路径,若未指定,DOS使用当前目录。
filename.exe 是DEBUG将要调试的文件名。
param 是将被调试的程序(或文件)的命令行参数。
例如:调试放在c 盘asm文件夹下的汇编程序t1.exe。
c:> debug c:\asm\t1.exe ↙(↙回车符)当显示器出现提示符“-”时,说明已进入DEBUG状态,这时,可用DEBUG命令进行操作。
DEBUG使用单字符命令:R命令:查看、改变CPU寄存器的内容D命令:查看内存中的内容E命令:改写内存中的内容U命令:将内存中的机器指令翻译成汇编指令(反汇编)T命令:执行一条机器指令A命令:以汇编指令的格式在内存中写入一条机器指令Q命令:退出DEBUG 状态三、实验内容1、参考教材,熟悉DEBUG的使用方法,运行各种命令,观察运行后的况。
2、用DEBUG调试程序调试汇编语言例子te1.exe程序(程序见后面)。
1)用U命令对te1.exe文件进行反汇编,比较源程序te1.asm和反汇编后的指令代码。
2)用R命令查看各寄存器的初试状态。
3)用T命令单步跟踪te1.exe的执行过程,写出每一步执行后,相关寄存器中的内容。
四、实验步骤1、按实验内容用全屏幕编辑程序EDIT编写源程序te1.asm2、运用汇编源程序,产生目标文件.OBJ3、连接目标文件,产生可执行文件.EXE4、用DEBUG运行可执行文件。
东南大学微机原理微机系统与接口实验三四实验报告范文自动化学院
东南大学微机原理微机系统与接口实验三四实验报告范文自动化学院《微机实验及课程设计》实验报告学号08011东南大学《微机实验及课程设计》实验报告实验三TPC装置系统,I/O与存储器简单输入输出实验四(1)姓名:学号:08011专业:自动化实验室:计算机硬件技术实验时间:2022年04月9日报告时间:2022年04月21日评定成绩:审阅教师:《微机实验及课程设计》实验报告学号08011一.实验目的与内容实验三:(1)实验目的:1)2)3)4)了解掌握TPC实验系统的基本原理和组成结构,学会测试检查TPC-PCI总线转接卡地址;正确掌握I/O地址译码电路的工作原理,学会动态调试程序DEBUG/TD的直接I/O操作方法;学会利用I/O指令单步调试检查硬件接口功能,学会利用示波器检测I/O指令执行时总线情况;进一步熟悉8086/8088及PC机的分段存储特性,了解存储器扩展原理,完成编程及测试。
(2)实验内容:1)观察了解TPC-2003A实验系统的基本原理和组成结构,测试基本单元电路功能,熟悉各部分辅助电路的使用;2)通过Win/某P控制台硬件信息或测试程序检查TPC-PCI总线转接卡地址,并记录;3)按图3.3-5的I/O地址译码测试参考电路连线,分析电路原理,分别利用动态调试程序直接I/O操作功能和单步功能测试;4)编程利用片选负脉冲控制指示灯(如L7)闪烁发光(亮、灭、亮、灭、),时间间隔通过软件延时实现;5)修改延时参数,使亮(约1秒)与灭的时间间隔分别为1秒、5秒和8秒,记录延时程序对应参数B某,C某。
实验四:(1)实验目的6)进一步掌握TPC实验装置的基本原理和组成结构7)掌握利用I/O指令单步调试检查硬件接口功能,学会用示波器检测I/O指令执行时总线情况8)掌握简单并行输入输出接口的工作原理和使用方法,进一步熟悉掌握输入输出单元的功能和使用(2)实验内容9)连接简单并行输出接口电路,编程从键盘输入一个字符或数字,将其ASCII码通过这个输出接口电路输出,根据8个放光二极管发光情况验证正确性10)连接简单并行输入接口电路,用逻辑电平开关K0~K7预置一字母的ASCII码,编程输入这个ASCII码,并将其对应字母在屏幕上显示出来二.基本实验原理实验三:实验电路图见3.3-5,实验电路中D触发器CLK端输入脉冲时,上升沿使Q端锁存输出高电平L7发光,CD端为低电平时L7灭:《微机实验及课程设计》实验报告学号08011参考程序:程序名:decode.amioportequ0c800h-0280h;tpc卡中设备的IO地址outport1equioport+2a0h;CLK端译码输出端选为地址Y4outport2equioport+2a8h;CD端对应译码输出选为地址Y5tackegmenttackdb100dup()tackendcodeegmentaumec:code,:tackmainprocfartart:mova某,tackmov,a某movd某,outport1;Y4,置位,CLK端写outd某,alcalldelay;调延时子程序movd某,outport2;Y5,清空CD端写outd某,alcalldelay;调延时子程序movah,1int16hjetart;ZF=1,无键输入movah,4chint21h;返回DOS操作系统mainendpdelayprocnear;延时子程序movb某,2000ZZZ:movc某,0ZZ:loopZZdecb某2《微机实验及课程设计》实验报告学号08011jneZZZretdelayendpcodeendendtart实验四:(1)简单并行输入输出接口电路连线图输出接口电路输入接口电路(2)简单并行输入输出电路原理数据D0~D7先预存入273中,当输出端口2A8H和写信号同时低电平时,发生时钟触发,此时将数据运送到输出端Q1~Q8。
微机原理实验
微机原理实验材料以下是微机原理各个实验空白处的代码,按从上到下的顺便编辑如下,供大家参考。
实验一8237DMA传输实验MOV AL,04OUT DX,ALOUT DX,ALMOV DX,DMAaddr_00MOV AL,0OUT DX,ALMOV AL,30HOUT DX,ALMOV DX,DMAaddr_02MOV AX,6000HOUT DX,ALMOV AL,AHOUT DX,ALMOV AX,07FFHOUT DX,ALMOV AL,AHOUT DX,ALMOV AL,88HOUT DX,ALMOV DL,85HOUT DX,AL实验二8259A中断控制器实验MOV AL,13HOUT DX,ALMOV AL,70HOUT DX,ALMOV AL,0FEH实验三8253方波实验MOV DX,COM_ADDRMOV AL,35HOUT DX,ALMOV DX,T0_ADDRMOV AL,0E8H(快,00H 慢)OUT DX,ALMOV AL,03H(10H)OUT DX,ALMOV DX,COM_ADDRMOV AL,77HOUT DX,ALMOV DX,T1_ADDRMOV AL,0E8H(快,00H 慢)OUT DX,ALMOV AL,03H(10H)OUT DX,AL实验四8255控制交通灯实验START: MOV DX,COM_ADDMOV AL,80HOUT DX,ALMOV DX,PA_ADDMOV AL,0FFHOUT DX,ALLEA BX,LED_DataSTART1: MOV DX,PA_ADDMOV AL,0XLATOUT DX,ALCALL DL5SMOV CX,6START2: MOV AL,1XLATOUT DX,ALCALL DL500msMOV AL,0XLATOUT DX,ALCALL DL500msLOOP START2MOV AL,2XLATOUT DX,ALCALL DL3SMOV AL,3XLATOUT DX,ALMOV CX,6START3: MOV AL,4XLATOUT DX,AL实验五8251可编程通信实验(与微机)Receive_Byte1: IN AL,DXTEST AL,2JZ Receive_Byte1MOV DX,DATA_ADDRIN AL,DXSend_Group1: LODSBCALL SendByteLOOP Send_Group1 SendByte1: IN AL,DXTEST AL,1JZ SendByte1POP AXMOV DX,DATA_ADDROUT DX,AL实验六并行AD实验(数字电压表实验)START1: MOV CX,50START2: DN BLAD0809: MOV CX,200AD08091: ZN AL,DXLOOP AD08091MOV DX,ADDR_0809IN AL,DX。
微机原理实验报告
微机原理实验报告西安电⼦科技⼤学实验报告班级:1303018学号:130********姓名:李胜东地点: EII-312批次:第批时间: 2015.11-2015.12实验⼀汇编语⾔编程实现1.实验⽬的(1)掌握汇编语⾔的编程⽅法(2)掌握DOS功能调⽤的使⽤⽅法(3)掌握汇编语⾔程序的调试运⾏过程2.实验内容(1)将指定数据区的字符串数据以ASCII码形式显⽰在屏幕上,并通过DOS功能调⽤完成必要提⽰信息的显⽰。
(2)在屏幕上显⽰⾃⼰的学号姓名信息。
(3)循环从键盘读⼊字符并回显在屏幕上,然后显⽰出对应字符的ASCII码,直到输⼊”Q”或“q”时结束。
实验中使⽤的DOS功能调⽤: INT 21H3.实验步骤及原理(1)运⾏QTHPCI软件,根据实验内容编写程序,参考程序流程如下图所⽰。
(2)使⽤“项⽬”菜单中的“编译”或“编译连接”命令对实验程序进⾏编译、连接。
(3)“调试”菜单中的“进⾏调试”命令进⼊Debug调试,观察调试过程中数据传输指令执⾏后各寄存器及数据区的内容。
按F9连续运⾏。
(4)更改数据区的数据,考察程序的正确性。
4.实验源代码DATA SEGMENTNUMBER DB 'SNO:130********',0AH,'NAME:lishengdong',0DH,0AH,'$';0DH (回车))0AH(换⾏)24H($)结束MSG1 DB 0AH,0DH,'If you want to leave,please input: q or Q ',0AH,0DH,'$'MSG2 DB 0AH,0DH,0AH,0DH,'Input: $'RESULT DB 0AH,0DH,'ASCII is: $'SD DB ' 'DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV SI,OFFSET DATAMOV CX,5A:MOV AL,DS:[SI]AND AL,0F0HCMP AL,0A0HJB A1ADD AL,07HA1:SHR AL,1SHR AL,1SHR AL,1SHR AL,1OR AL,30HMOV AH,02HMOV DL,ALINT 21HMOV AL,DS:[SI]AND AL,0FHCMP AL,0AHJB A2ADD AL,07HA2:OR AL,30HMOV AH,02HMOV DL,ALINT 21HINC SILOOP AMOV AX,DATAMOV DS,AXMOV DX,OFFSET NUMBERMOV AH,09HINT 21HMOV DX,OFFSET MSG1 MOV AH,09H INT 21HC1: MOV DX,OFFSET MSG2 MOV AH,09H INT 21HMOV AH,01HINT 21HCMP AL,'Q'JZ EXITCMP AL,'q'JZ EXITMOV SD,ALMOV DX,OFFSET RESULTMOV AH,09HINT 21HMOV SI,OFFSET SDMOV AL,DS:[SI]AND AL,0F0HMOV CL,4SHR AL,CLCMP AL,0AHJB C2ADD AL,07HC2: ADD AL,30HMOV DL,ALMOV AH,02HINT 21HMOV AL,DS:[SI]AND AL,0FHCMP AL,0AHJB C3ADD AL,07HC3: ADD AL,30HMOV DL,ALMOV AH,02HINT 21Hloop C1EXIT: MOV AX,4C00HINT 21HCODE ENDSEND START实验⼆数码转换实验1.实验⽬的(1)掌握不同进制数及编码相互转换的程序设计⽅法。
北京理工大学微机原理硬件三次实验综合报告
Vcc
DD0 DD1 DD2 DD3 DD4 DD5 DD6 DD7 A1 3 Vcc 7 4LS3 2 Vcc IOR D IOWR INT INTA
11 10 9 8 7 6 5 4 27 1 3 2 16 17 26
D0 D1 D2 D3 D4 D5 D6 D7 A0 CS RD WR SP/EN INT INTA 8 25 9
IR0 IR1 IR2 IR3 IR4 IR5 IR6 IR7
18 19 20 21 22 23 24 25
IR0 IR1 IR2 IR3 IR4 IR5 IR6 IR7
CS8 25 9
1 2
CAS0 CAS1 CAS2
12 13 14
(2)编辑程序,编译链接后,单步运行,调试程序。 (3)调试通过后,在中断服务程序的 NOP 处设置断点,运行程序,当接收到中 断请求后,程序停在中断服务程序内的断点处,观察寄存器 AX 的值。 四,实验源程序如下 CODE SEGMENT PUBLIC ASSUME CS:CODE ORG 100H
OUT DX,AX MOV DX,4A2H ;写 ICW2 MOV AX,81H ;IR1 的中断向量码为 81H OUT DX,AX MOV AX,01 OUT DX,AX ;一般嵌套,非缓冲方式,非自动 EOI MOV AX,0 ;写 OCW1 OUT DX,AX;允许中断 ;中断向量存放在(0000H:0204H)开始的四个单元里 MOV AX,0 MOV DS,AX MOV SI,204H ;中断类型号为 81H MOV AX,OFFSET HINT ;中断服务程序的入口地址 MOV DS:[SI],AX ADD SI,2 MOV AX,CS MOV DS:[SI],AX STI ;开中断,设置 IF=1 JMP $ ;原地跳转 HINT: ;中断服务程序 XOR CX,0FFH;CX 取反 MOV DX,4B0H;CS273 的地址 MOV AX,CX;输出高低电平控制 LED 灯的亮灭 OUT DX,AX MOV DX,4A0H ;OCW2 的地址 MOV AX,20H ;一般 EOI 命令,全嵌套方式 OUT DX,AX IRET ;中断返回 CODE ENDS END START 实验现象:运行程序,触发脉冲发生器产生中断请求,相应二极管点亮。 设置 OCW1,屏蔽某个中断请求,运行程序观察现象。 将 IR0 重新接入 LED0,设置 OCW1 为 01H,屏蔽中断 IR0,则 IR0 的中断无法得 到响应。程序如下: CODE SEGMENT PUBLIC ASSUME CS:CODE ORG 100H START: MOV DX,4A0H ;ICW1 的地址,写初始化命令字 ICW1 MOV AX,13H ;上升沿触发,单片 8259,要写 ICW4 OUT DX,AX MOV DX,4A2H ;ICW2 的地址,写中断向量码 ICW2 MOV AX,80H ;IR0 的中断向量码为 80H
微机原理实验指导书
微机原理实验指导书实验一数据传送实验目的 :1. 熟悉 8086 指令系统的数据传送指令及 8086 的寻址方式。
2. 利用 Turbo Debugger 调试工具来调试汇编语言程序。
实验任务 :1.通过下述程序段的输入和执行来熟悉Turbo Debugger 的使用,并通过显示器屏幕观察程序的执行情况。
练习程序段如下:MOV BL , 08HMOV CL , BLMOV AX , 03FFHMOV BX , AXMOV DS : [0020H] , BX2.用以下程序段将一组数据压入( PUSH )堆栈区,然后通过不同的出栈顺序出栈,观察出栈后数据的变化情况。
压栈程序段如下:MOV AX , 0102HMOV BX , 0304HMOV CX , 0506HMOV DX , 0708HPUSH AXPUSH BXPUSH CXPUSH DX出栈程序段请自行编写(用不同的出栈顺序)。
.3. 指出下列指令的错误并加以改正,上机验证之。
(1) MOV [BX] , [SI](2) MOV AH , BX(3) MOV AX , [SI][DI](4) MOV BYTE PTR[BX] , 2000H(5) MOV CS , AX(6) MOV DS , 2000H4. 设置各寄存器及存储单元的内容如下:(BX) = 0010H , (SI) = 0001H(10010H) = 12H , (10011H) = 34H , (10012H) = 56H ,(10013H) =78H (10120H) =0ABH ,(10121H) =0CDH ,(10122H) = 0EFH说明下列各条指令执行完后 AX 寄存器中的内容,并上机验证。
(1) MOV AX , 1200H(2) MOV AX , BX(3) MOV AX , [0120H](4) MOV AX , [BX](5) MOV AX , 0110H[BX](6) MOV AX , [BX][SI](7) MOV AX , 0110H[BX][SI]5. 将 DS : 1000H 字节存储单元中的内容送到 DS : 2020H 单元中存放。
西安交大微机原理实验三循环程序的设计
实验三循环程序的设计一、实验目的1.掌握提示信息的使用方法和从键盘键入信息的用法2.掌握循环程序的设计方法二、实验内容编写程序,从键盘分别键入两个字符串,进行比较,若相同,则显示“MATC”H,否则,显示“NOMATC”H 。
三、实验原理强迫cpu 重复执行一指令序列的程序结构是循环程序。
循环程序结构分四部分:1、初始化部分2、循环处理部分3、循环控制部分4、结束部分。
四、程序代码CRLF MACROMOV AH,02HMOV DL,0DHINT 21HMOV AH,02HMOV DL,0AHINT 21HENDMDATA SEGMENTMESS1 DB'INPUT STRING1:',0DH,0AH,'$'MESS2 DB'INPUT STRING2:',0DH,0AH,'$'MESS3 DB'NO MATCH',0DH,0AH,'$'MESS4 DB'MATCH',0DH,0AH,'$'MAXLEN1 DB 81 ACTLEN1 DB ?STRING1 DB 81 DUP(?)MAXLEN2 DB 81ACTLEN2 DB ?STRING2 DB 81 DUP(?)DATA ENDSSTACK SEGMENT PARA STACK 'STACK'STA DB 50 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACKSTART:MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXMOV SP,TOPMOV DX,OFFSET MESS1 MOV AH,09HINT 21HMOV AH,0AHMOV DX,OFFSET MAXLEN1 INT 21HCRLFMOV DX,OFFSET MESS2 MOV AH,09HINT 21HMOV AH,0AHMOV DX,OFFSET MAXLEN2 INT 21HCRLFMOV SI,OFFSET ACTLEN1 MOV BX,OFFSET ACTLEN2 MOV AL,[SI]CMP AL,[BX]JNE NOMA NOMATCH: MOV CX,[SI] AND CX,0FHNEXT:INC SIINC BXMOV AL,[SI]CMP AL,[BX]JNE NOMADEC CXCMP CX,0JNE NEXTMOV AH,09HMOV DX,OFFSET MESS4 INT 21HJMP DENDNOMA:MOV AH,09HMOV DX,OFFSET MESS3 INT 21HDEND:MOV AX,4C00HINT 21HEND START五、头验调试过程 1•调试字符串输入功能在edit 中输入代码,编译、链接后,用debug 的-u 命令反汇编生成的可执行文件 shiyan3.exa 首先调试字符串输入是否正确,设置断点如下所示:110778:0000 B06AG? MOU AX P G?6A U778:00G8 BED8 MOU DS, AX 077G :0GQ5 8EC0 ruu ES.AXGT?78:0OGV B88O07 MOU AX P 6?B00778: 0O0A BED0 rou SS,AX 0778:0OGC BC3Z0O MOU SF,G0QZ 0778:0OGF BAO0GG MOU DX.0000 Qf?78:001Z B409 MQU AH.09 0778:0614 CDZ1 IHT Z1 0778:0016 B4GA MOU AH (0A O7?a :O0ia BA35O0 MOU DX R6035 0778:001® CDZ1 IHT 21 O77O :0O1D B402 MOU AH 题 Q7?0: Q01T B20D MOU DLpOD -g43INPUT STHING1: xjtuINPUT 31H1INGZ : bjtuAX=0£GA BX=0OGG CX=0158 DX=O0GA SF=003ZBF=0O0G SI=0000 DI=0000DS=076A ES=G76A SS=O70e CS=Q776 IF=0GH3MU UP El PL HZ NA FO NC阴76:0643 EE3606MOUSI ,0036用-d 命令查看如下以上说明字符串输入部分工作正常。
微机原理第三次实验报告
实验三串口通信实验一、实验目的与要求利用开发板的串口仿真功能,掌握串口通信的编程方法。
实验要求:(1)利用串行口向PC机发送字符“0x55”,利用串口调试软件在计算机端观察接收到的数据是否与预期一致。
(2)利用串行口向PC机发送字符串,利用串口调试软件在计算机端观察接收到的数据是否与预期一致(3)观察分析参考程序3,利用开发板接收PC机发送过来的16进制数据并用数码管显示。
(4)掌握实验基础内容后根据参考源程序进行修改和拓展,自行设计程序目标并编程验证,比如修改发送程序的内容,实现由上位机控制数码管显示内容等。
二、实验注意事项1、启动KEIL软件,选择菜单“工程\新建工程”以建立工程(扩展名为.uv2,如T2a.uv2)。
2、选择菜单“文件\新文件”以建立一个新的文本编辑窗口,在窗口中输入参考源程序1并保存(扩展名为.asm),如test2a.asm,然后将其加入到源程序组1中。
3、在工程菜单的选项“目标1属性”中设置相应的选项,包括“输出\产生hex 文件”选项以便汇编生成HEX代码供编程器使用,在“调试\使用KeilMonitor-51 Driver”的设置中选择相应的串口号。
4、使用“工程”中的“编译全部文件”完成相应的文件编译,如果程序格式正确将生成相应HEX代码文件,如T2a.hex。
如果提示有编译错误请自行修改源程序然后再重新编译。
5、用单根连线将P1.0(JP44)连接到8路指示灯部分(JP32)的LED0,将P1.6、P1.7(JP44)分别连接到JP37的K01、K02。
6、完成仿真器与计算机之间的连线并通电。
7、在KEIL软件中启动“调试\开启仿真模式”,然后用“运行”命令实现全速运行的仿真。
8、观察实验现象并分别依次按下K01、K02,观察并记录实验现象然后在KEIL 软件中启动“中断运行-调试(debug)\关闭仿真模式”退出仿真,选择“工程\关闭工程”可关闭当前工程。
9、参考步骤1-4完成参考源程序2的建立与输入,如新项目T2b.uv2和新的源程序test2b.asm,完成编译与仿真设置。
《微机原理实验报告》word版
班级自动化学号姓名实验一系统认识实验一实验目的掌握教学系统的基本操作二实验设备PC机一台masm软件三实验内容及步骤(1)输入程序并检查无误,经汇编连接后装入系统(2)输入E3500后回车,在3500-3510单元中分别送入00~09十个数据(3)按“T“键运行以上程序直至程序运行完(4)输入D3600后回车,查看3600单元后面的数据四程序及其显示的结果(1)程序(2)显示的结果实验三运算类编程实验一实验目的(1)掌握使用运算类指令编程及调试方法(2)掌握运算类指令对各状态标志位的影响及其测试方法二实验设备PC一台masm软件三实验内容及步骤(1)二进制双精度加法运算(2)输入程序并检查无误,经汇编连接后装入系统(3)用U0000:2000查看MOV AX,DA TA的语句,即得到数据段段位置CS:1412用E命令E1412:0000回车,给XL,YL,YH赋值存入二进制数A0,65,15,00和9E,B7,21,00(4)用G=0000:2000,运行以上程序(5)输入D1412:0008,检验显示的结果是否为:3E,1D,17,00四实验程序五程序显示的结果实验四分支程序设计实验一实验目的:(1)掌握分支程序的结构(2)掌握分支程序的设计,调试方法二实验设备:PC机一台masm软件三实验内容设计一数据块间的搬移程序。
设计思想:程序要求把内存中一数据区传送到另一存储区。
源数据块和目的数据块在存储中可能有三种情况,对于两个分离的情况,数据的传送从数据块的首位置开始,或者从数据块的末位置开始。
但对于有部分重叠的情况,则要加以分析,否则重叠部分会因搬移而遭到破坏,可以得到以下结论:(1)当源数据块首址大于目的块首址时,从数据块首址开始传送数据。
(2)当源数据块首址小于目的块首址时,从数据块末址开始传送数据。
四实验步骤(1)按实验流程图设计编写实验程序(2)输入程序并检查无误后,经汇编,连接后装入系统(3)用E命令在以SI为起址的单元中填入十六个数(4)用G=0000:2000运行实验程序(5)用D命令查看DI为起址的单元中的数据是否与SI单元中数据相同五实验程序及结果显示(1)实验程序(1)实验结果显示实验五循环程序设计一实验目的(1)加深对循环结构的理解(2)掌握循环结构程序设计的方法(3)熟练掌握调试循环程序的方法二实验设备:PC机一台masm软件三实验内容求数据区内负数的个数:设数据区的第一单元存放区内单元数据的个数,从第二单元开始开始存放数据,在区内最后一个单元存放结果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5. 实验成绩由实验预习、实验表现、 实验报告三部分组成。其中前两项各占总成绩的30%。实验报告成绩依据报告的科学性、全面性、规范性及书写态度综合考核。 实验报告采用百分制, 占实验总成绩的40%, 教师请阅本报告后需签字并给出实验报告百分制成绩。
2.本实验报告各项内容的具体格式、字数可由指导教师根据实验具体情况提出具体要求。各项内容可另附页,为便于归档,附页尺寸不得大于本实验报告尺寸,并注意粘牢于附页粘贴处。
3. 实验报告封面中的 “实验名称” 应为实验教学大纲上所列的规范名称, “实验地点”应写出实验室的具体名称。请确认无误后再填写。
4. 实验报告的建议格式为:
一、实验目的和要求;
二、主要实验仪器和设备;
三、本次实验内容
(一)实验项目名称(按本次实验各项目填写)
1、原理或接线图
2、实验步骤及注意事项
3、实验预习过程中所遇到问题
……Байду номын сангаас
四、实验记录及数据处理(主要内容包括实验具体实施步骤、实验原始数据、 计算过程与结果、 数据曲线、 图表等。 具体格式按指导教师要求)
6. 实验报告需按要求时间以班级为单位交给指导教师,最长时间不得超过两周,实验报告如有明显抄袭者或不交者,实验总评成绩按 0 分记。
南京工程学院
电力工程学院
2011/2012学年第2学期
实验报告
课程名称微机原理及应用A
实验项目名称顺序程序设计
实验学生班级电力093
实验学生姓名武晨晨
同组学生姓名
实验时间2012.3.29
实验地点9-229
实验报告成绩:评阅教师签字:
年 月 日
电力工程学院二OO七年制
说 明
1. 验报告为实验的重要考核依据之一, 每个实验必须定一份实验报告. 本实验报告原则上要求手写。