微机原理实验指导书

合集下载

微机原理实验指导书

微机原理实验指导书

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

微机原理实验学生实验指导书

微机原理实验学生实验指导书

微型计算机原理实验指导书河北大学电子信息工程学院2017年10月目录实验一系统认识及编程初步实验 (1)实验二输入输出程序设计实验 (7)实验三8255并行接口实验 (9)实验四8259中断控制实验 (13)实验五8254定时/计数器应用实验 (19)实验六综合实验 (24)实验一系统认识及编程初步实验一、实验目的1. 掌握TD系列微机原理及接口技术教学实验系统的操作,熟悉Wmd86联机集成开发调试软件的操作环境。

2. 掌握使用运算类指令编程及调试方法。

3. 学习使用软件监视变量的方法。

二、实验设备PC机一台,TD-PITE实验装置一套。

三、实验内容(一)基础实验1. 系统认识实验编写实验程序,将00H~0FH共16个数写入内存3000H开始的连续16个存储单元中。

2. 运算编程实验80X86指令系统提供了实现加、减、乘、除运算的基本指令,可对表1-1所示的数据类型进行算术运算。

本实验以二进制双精度加法运算为例,计算X+Y=Z,将结果Z存入某存储单元。

表1-1 数据类型算术运算表(二)提高实验1. 在系统认识实验中,编写程序,将内存3500H单元开始的8个数据复制到3600H单元开始的数据区中。

通过调试验证程序功能,使用E命令修改3500H单元开始的数据,运行程序后使用D命令查看3600H单元开始的数据。

2. 在运算编程实验中,求累加和程序设计,在偏移地址为1000H开始依顺序填入16个字(16个16位数),利用程序求和,存放在偏移地址2000H。

四、实验步骤(一)系统认识实验1. 运行Wmd86软件,进入Wmd86集成开发环境。

2. 根据程序设计使用语言的不同,通过在“设置”下拉列表来选择需要使用的语言和寄存器类型,这里我们设置成“汇编语言”和“16位寄存器”,如图1-1、图1-2所示。

设置选择后,下次再启动软件,语言环境保持这次的修改不变。

图1-1 语言环境设置界面图1-2 寄存器设置界面3. 语言和寄存器选择后,点击新建或按Ctrl+N组合键来新建一个文档,如图1-3所示。

微机原理实验指导书(新版)

微机原理实验指导书(新版)

微机原理与接口技术实验指导书主编:王青岳陈超波张晓倩许韫韬西安工业大学电信学院软件实验部分 (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)硬件实验部分 (21)1 微机实验系统简介 (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 程序,可直接运行的程序,汇编源程序,汇编程序程序以文件的形式存在,它是由若干条“指令”顺序排列存储构成的。

指令是对符合CPU指令集的所有信息的统称,“指令”在程序中以两种形式存在,一种是以“指令代码”的形式(在可直接运行的程序文件中),另一种是以“助记符”的形式(在汇编源程序文件中)。

无论“可直接运行的程序”还是“汇编源程序”,其中的指令都是以顺序排列的方式存储的,只是指令存在的方式不同。

可直接运行的程序当程序中的指令是以可执行的“指令代码”的形式存在时,该程序即为可直接运行的程序,该程序所在的文件即为“可执行程序文件”。

微机原理实验指导书

微机原理实验指导书

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

微机原理实验指导书

微机原理实验指导书

实验一数据传送一、实验目的1、熟悉SH51仿真器的使用方法。

2、练习设计简单的程序。

3、掌握8031片内RAM和片外RAM的数据传送的方法,从而了解这两部分存储器的特点二、实验设备和器件PC一台、DP-51PROC单片机实验仪一台、仿真器一台。

三、实验内容将8031内容RAM40H—4FH置初值00H—0FH,然后将40H—4FH 的内容传送到外RAM4800H—480FH,再将4800H—480FH传回到内部RAM50H—5FH。

设置断点B1、B2、B3,每运行到断点时检查相应的CPU现场和存储单元的内容。

四、实验步骤1、向机器输入程序2、运行程序至第一个断点B1,检查内容RAM40H—4FH单元的内容及累加器A 的内容;3、运行程序至第二个断点B2,检查RAM4800H—480FH单元的内容及累加器A、数据指针DPTR的内容;4、运行程序至第三个断点B3,检查内容RAM50H—5FH单元的内容及累加器A、数据指针DPTR的内容;五、实验程序ORG 0000HSTART: LJMP MAINORG 0040HMAIN: MOV R0, #40HMOV R2, #10HCLR AA1: MOV @R0, AINC R0INC ADJNZ R2, A1 B1: MOV R0, #40HMOV DPTR, #4800HMOV R2, #10HA2: MOV A, @R0MOVX @DPTR, AINC R0INC DPTRDJNZ R2, A2B2: MOV R0, #50HMOV DPTR, #4800HMOV R2, #10HA3: MOVX A, @DPTRMOV @R0, AINC R0INC DPTRDJNZ R2, A3B3: SJMP $END实验二并行口一、实验目的:通过实验了解8031并口输入方式和输出方式的工作原理和编程方法。

二、实验设备及器件:PC一台、DP-51PROC单片机实验仪一台、仿真器一台。

微机原理实验指导书(修改1023)

微机原理实验指导书(修改1023)

微机原理实验指导书华中科技大学计算机学院武汉豪申光电新技术有限公司目录微机原理实验 (3)第一章16位汇编语言编程验 (3)实验一系统认识实验 (3)实验二分支程序设计实验 (6)实验三循环程序设计实验 (9)实验四排序程序设计实验 (12)实验五子程序设计实验 (15)微机接口实验 (19)第一节并行接口实验(8255芯片实验) (19)实验一8255并行接口实验 (19)第二节定时/计数实验(8253芯片实验) (26)实验二音乐发声器接口实验 (26)第三节串行通信接口实验(8251芯片实验) (33)实验三 RS-232标准全双工查询方式异步串行通信实验 (34)第四节A/D D/A转换器接口实验 (42)实验四查询方式A/D转换器接口实验(ADC0809) (42)实验五 D/A函数波形发生器接口实验(DAC0832) (49)微机原理实验第一章16位汇编语言编程验实验一系统认识实验⑴实验目的掌握在MF平台中汇编程序的编写、调试方法。

⑵实验内容基本实验将存储区BUF1中的内容复制到BUF2中。

⑶实验步骤(一)方式1(Debug方式)1.在MF2KP环境下输入汇编程序,编译、连接,生成.exe文件。

2.启动调试程序(Debug)。

3.在程序的退出处设置断点,利用Add Watch命令查看BUF2中的内容是否正确。

(二)方式2(人-机交互方式)1.在MF2KP环境下输入汇编程序,编译、连接、运行。

2.按提示输入数据,在屏幕显示的结果中查看BUF1,2中的内容是否正确。

3.输入不同的字符串,可得到不同的结果。

⑷实验资源配置IBMPC微机,Win2000操作系统,MF2KP微机原理实验集成开发环境。

⑸实验软件的编程◇实验流程图如图1.1.1所示将存储区BUF1中的内容复制到BUF2中的程序主功能模块如图1.1.1中的虚线框中所示。

◇实验参考程序如下所示;*--------------------------------------------------* ;* Aexp1.asm(汇编语言编程认识实验) * ;* Copyright (c) 2002 by HUST * ;* 程序调试:在EXIT处设置断点,利用Add Watch命令 * ;* 查看BUF1和BUF2的内容是否正确 * ;*-------------------------------------------------* DATA SEGMENTBUF1 DB 'MASM HELLO WORLD'COUNT EQU $-BUF1BUF2 DB20DUP(?)DATA ENDSSTACK1 SEGMENT STACKDB20DUP(?)STACK1 ENDSCODE SEGMENTASSUME DS:DATA,SS:STACK1,CS:CODESTART:MOV AX,DATAMOV DS,AXMOV SI,OFFSET BUF1 ;建立源地址指针MOV DI,OFFSET BUF2 ;建立目标地址指针MOV CX,COUNT ;字节数送入CX寄存器L1: MOV AL,[SI] ; 取源数据一个字节送入AL中MOV [DI],AL;将源数据送入目标地址单元中INC SIINC DIDEC CXJNZ L1 ;判断是否传送完毕EXIT: MOV AH,4CHINT21HCODE ENDSEND START⑹实验要求◇按要求完成实验得出正确结果.◇试着自己写出人机对话方式的汇编程序.◇完成实验报告实验二分支程序设计实验⑴实验目的掌握分支程序的结构。

微机原理实验指导书1_2_4_5

微机原理实验指导书1_2_4_5

微机原理实验指导书郑州大学电气工程学院目录实验一比较字符串实验 (1)实验二两个多位十进制数相加的实验 (14)实验三两个数相乘的实验 (18)实验四键盘输入并显示实验 (21)实验五统计学生成绩 (25)实验六 8259A 中断控制器实验 (29)实验七 8253计数器/定时器实验 (34)实验八 8255并行接口实验 (37)实验九 8251A 串行接口实验 (43)实验十 A/D 实验 (51)附录一调试程序DEBUG (51)附录二汇编程序出错信息 (59)实验一比较字符串实验一.实验目的1.掌握分支程序的设计方法。

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

二.实验内容1.比较两个字符串STRING1和STRING2所含的字符是否相同,若相同则显示‘Match’,否则显示‘No Match’。

2.修改程序,显示所比较字符的个数。

三.程序清单DATAREA SEGMENTSTRING1 DB 'Move the cursor backward.'STRING2 DB 'Move the cursor backward.'MESS1 DB 'Match.',13,10,'$'MESS2 DB 'No match.',13,10,'$'DATAREA ENDSPROGNAM SEGMENTMAIN PROC FARASSUME CS:PROGNAM,DS:DATAREA,ES:DATAREASTART: PUSH DSSUB AX,AXPUSH AXMOV AX,DATAREAMOV DS,AXMOV ES,AXLEA SI,STRING1LEA DI,STRING2CLDMOV CX,STRING2-STRING1REPZ CMPSB?LEA DX,MESS2?MATCH: LEA DX,MESS1DISP: MOV AH,09HINT 21HRETMAIN ENDPPROGNAM ENDSEND START四.实验方法1.用编辑程序EDIT.EXE建立源文件EDIT D101-1.ASM↙在编辑状态下输入源程序,存盘后退出编辑状态。

2023年微机原理实验指导书

2023年微机原理实验指导书

2.1系统生疏试验【试验目的】把握TD 系列微机原理及接口技术教学试验系统的操作,生疏Wmd86 联机集成开发调试软件的调试环境。

【试验设备】PC 机一台,TD-PITE 试验装置一套。

【试验内容】编写试验程序,将00H~0FH 共16 个数写入到内存3000H 开头的连续16 个存储单元中。

【试验步骤】1.运行Wmd86 软件,进入Wmd86 集成开发环境。

2.在设置菜单中选择“汇编语言”和“16 位存放器”。

3.单击文集菜单的建命令,建一个文档,默认文件名为Wmd861。

4.编写试验程序,并保存,此时系统会提示输入的文件名,输完后点击保存。

5.单击编译文件,假设程序编译无误,则科技连续单击进展链接,链接无误前方可以加载程序。

6.连接PC 与试验系统的通讯电缆,翻开试验系统电源。

7.编译、链接都正确并且上下机通讯成功后,就可以下载程序,联机调试了。

可以通过端口列表中的“端口测试”来检查通讯是否正常。

点击下载程序。

为编译、链接、下载组合按钮,通过该按钮可以将编译、链接、下载一次完成。

下载成功后,在输出区的结果窗中会显示“加载成功!”,表示程序已正确下载。

起始运行语句下会有一条绿色的背景。

8.将输出区切换到调试窗口,试验命令D0000:3000 查看内存3000H 起始地址的数据。

9.点击按钮运行程序,等待程序运行停顿后,通过命令来观看程序结果。

10.也可以设置端点,要修改内存中的数据可以使用命令E,如E0000:3000 可以修改地址0000:3000 处的数据,修改完一个后,可按“空格”键连续输入下一个数。

输入完成后按“回车”键退出。

2.2数制转换试验【试验目的】1 把握不同进制数及编码相互转换的程序设计方法,加深对数值转换的理解。

2.生疏程序调试的方法。

【试验设备】PC 机一台,TD-PITE 试验装置一套。

【试验内容】编写程序,将ASCII 码表示的十进制数转换为二进制数。

【试验步骤】1.依据程序流程图编写程序。

微机原理实验指导书_智能

微机原理实验指导书_智能

实验一系统认识、数码转换、运算编程实验一、实验目的1.掌握TDN86/88教学系统的基本操作。

2.学习数码转换的程序设计方法;3.学习运算编程方法。

二、实验设备1.PC机一台;2.TDN86/88教学实验系统一台。

三、实验内容及步骤1.系统认识实验从3500H内存单元开始建立0-15共16个数据。

实验程序如下:STACK1 SEGMENT STACK ;8088 宏汇编程序DW 64 DUP(?) ;定义堆栈段STACK1 ENDSCODE SEGMENT ;定义代码段ASSUME CS:CODESTART: MOV DI,3500H ;程序开始设数据区首址MOV CX,0010H ;字节数送入CX中MOV AX,0000HA1: MOV [DI],AL ;写入一字节INC DI ;修改地址指针INC AX ;修改数据DAA ;十进制调整LOOP A1 ;未填完转移A2: JMP A2CODE ENDS ;代码段结束END START ;程序结束实验步骤(1)启动Wmd86联机软件Wmd86联机软件的启动方式有两种,可以在【开始】/【程序】/【TangDu】菜单中单击“Wmd86”的程序组启动,也可以直接双击桌面上的“Wmd86”快捷键启动该程序组。

启动应用程序进入主界面窗口后,应显示“串口通讯成功”小窗口,若显示“串口通讯不成功”,说明上位机和下位机的连接不正常或下位机死机,请确认下位机电源已经打开,串口线两端接触良好。

(2)输入源程序,检查无误后存盘。

(3)对源程序进行编译、链接和加载,可以使用编译菜单项,也可以使用编译工具栏。

(4)运行程序,观察结果。

连续运行程序,在输出区中的调试区用DEBUG命令观察运行结果,即键入D0000:3500 ↙,可查看3500H-350FH单元中的内容是否为0-15共16个数。

注意,因本程序的结尾为死循环,应在程序运行后停止运行再观察结果。

(5)熟悉系统提供的单步运行、断点运行等功能,可以使用调试菜单项,也可以使用调试工具栏。

微机原理实验指导书.

微机原理实验指导书.

微机原理与接口实验指导书皖西学院机械与电子工程学院2012.10实验一 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”键选择各区。

微机原理实验指导书

微机原理实验指导书

微机原理实验指导书第一章DEBUG调试系统的使用。

1一、DEBUG的作用。

1二、DEBUG的使用。

1第二章 Intel 80x86 指令系统及寻址方式和基本程序设计。

18一、数据传送指令。

18二、算术运算类指令及线性程序设计。

20三、逻辑及移位类指令与线性程序设计。

22四、转移类指令与分支型程序设计。

24五、循环控制类指令与循环程序设计。

25第三章 DOS 功能调用。

28一、源程序的编辑和可执行文件的形成。

28二、输入输出程序设计。

29第四章循环和分支结构汇编语言程序设计。

30一、循环程序结构。

30二、分支程序结构。

31三、综合程序练习。

32第五章子程序结构汇编语言程序设计。

32一、子程序之一___原程序结构的编辑和可执行文件的形成。

32二、子程序之二___子程序的设计。

38第六章高级汇编语言程序设计。

39一、宏汇编语言程序的结构。

39二、宏汇编语言程序设计。

40三、重复汇编技术。

40第七章键盘程序设计。

40一、键盘输入程序。

40第八章音乐程序设计。

42一、发音程序。

42二、音乐程序。

42第九章活动图形显示程序。

44一、活动字符图形显示。

44二、静止复合图形显示。

45第十章磁盘文件操作程序。

47一、文本文件内容显示。

47二、磁盘文件拷贝。

50 第十一章绝对磁盘读写程序。

53一、误删除文件的恢复。

53二、磁盘目录显示程序。

53第一章DEBUG调试系统的使用一、DEBUG的作用DEBUG是DOS提供的用于程序调试的系统,作为DOS的外部命令随DOS的其它外部命令一起由DOS的提供产商向用户提供。

因此用户在使用DEBUG系统时一定要注意当前用户所使用的DOS 的外部命令中是否提供该命令(若DOS命令不全,有可能没有此命令)。

二、DEBUG的使用1、DEBUG的调用由于DEBUG是DOS的外部命令,因此必须在DOS的提示符状态下进行调用。

调用的方法如下:C:\>DEBUG [FILENAME]此处FILENAME应是文件的全名,即应包括文件的主名和扩展名(若文件有扩展名),如文件不在当前目录,则还因包括文件所存放的目录名。

微机原理试验指导书

微机原理试验指导书

《微型计算机原理》实验指导书上海行知学院计算机系二零零六年五月实验一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)

实验一系统操作及程序调试举例1.实验目的学习并掌握实验系统的基本操作,为以后的实验打下基础。

2.实验设备DICE-8086B实验系统一台3.实验准备工作系统一经连好,检查无误后,就可以通电运行。

系统提供两种启动方式,即:系统自动完成后,显示器上会显示“>”提示符,等待键入操作命令。

4.实验内容及步骤(1)系统操作练习(一)要求:从3500内存单元开始建立0~15共16个数据。

程序流程图如下:实验步骤①输入与修改:在“﹥”提示符下键入A2000,此时显示器上将会显示程序的段地址CS和偏移地址IP(=2000H),接着就可以在光标处输入程序。

注:在输入过程中,若发现本行有错误,则可以按“ ”键删除并重新输入;若回车后系统提示“ERROR!”,则要在原地址指针处重新正确输入。

输入程序后可通过反汇编查看程序。

(U操作)②程序运行:在DICE-8086B实验系统上,程序的运行方式有单步、连续和断点运行几种方式。

可参考(T操作,G操作,GB操作等)③内存单元的修改与显示:用(D操作)可显示内存单元的内容,用(E操作)可修改内存单元的内容。

(分别参考前)。

④运行程序观察从3500H单元开始连续存放的16个数据为多少?任意修改AX的值,再运行程序,显示运行结果是否正确?流程图及参考程序如下:地址机器码助记符注释2000 BF 3500 MOV DI,3500 ;设数据区首址2003 B9 0010 MOV CX,0010 ;字节数送CX2006 B8 0000 MOV AX,00002009 9E SAHF200A 88 05 MOV B[DI],AL ;写入一字节200C 47 INC DI ;修改地址指针200D 40 INC AX ;修改数据200E 27 DAA ;十进制调整200F E2 F9 LOOP 200A ;未填完转移2011 CD 00 INT(2)系统操作练习(二)要求:将内存3500单元开始的0~15共16个数传递到3600单元开始的数据区中。

微机原理实验指导书

微机原理实验指导书

微机原理实验指导书实验一数据传送实验目的 :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-二进制多位加法运算

微机原理实验指导书1-二进制多位加法运算

微机原理实验指导书1-二进制多位加法运算实验一二进制多位加法运算一、实验目的1.熟悉实验系统键盘显示的使用。

2.掌握使用加法类运算指令编程及调试方法。

3.掌握加法类指令对状态标志位的影响。

二、实验设备与工具1.微机原理与接口技术实验箱。

2.微型计算机。

三、实验原理及方法实验内容:计算X+Y+Z=?(X、Y、Z为16位二制数)本实验是三个十六位二制数相加运算,因此,当X+Y时要考虑用ADC指令,把进位C加到结果的高16位中,当(X+Y)+Z时,再把进位C加到结果的高16位中,本实验如设定三个加数0FFFFH,计算结果应为2FFFDH。

四、实验步骤1.打开实验箱前盖。

检查:(1)JK(开关)置‘系统’:键盘/显示接口选择系统配置的8255接口芯片,进入监控状态。

(2)KB6:通讯选择开关,KB6开关拨向88一侧(单8086实验仪无KB6),选择PC机和8086系统通讯。

(3)不插或卸掉已装的CPU卡(单8086实验仪无CPU卡安装、插座)。

2.将随机配送的串行通讯线,一端与实验仪的RS232D型插座CZ1相连,另一端与PC机COM1或COM2串行口相连。

3.接通实验系统电源,+5V LED指示灯应正常发光,实验仪数码管应显示闪动P.,说明实验仪初始化成功,处于待命状态。

(否则应及时关闭电源,待修正常后使用)4.打开PC机电源,执行DJ8086K的集成调试软件,关于该软件的详细说明请参阅《DJ8086K实验系统与PC机联机操作部分》。

5.编写程序,在PC机和实验系统联机状态下,运行该实验程序。

如可用鼠标左键单击菜单栏“文件”或工具栏“打开图标”,弹出“打开文件”的对话框,然后打开598k8Asm文件夹,点击S1.ASM 文件,单击“确定”即可装入源文件,再单击工具栏中编译装载,即可完成源文件自动编译、装载目标代码功能,再单击“调试”中“连续运行”或“单步运行”,即开始运行程序。

6.运行完后,运算结果保留在内存4100H~4102H单元中,点击DJ-8086K软件中存贮器RAM窗口,输入RAM的起始地址4100、4101、4102,当三个被加数为0FFFFH,三个单元内容应为FD、FF、02。

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

微机原理实验指导书汕头大学机电系摘录实验一P1口实验及延时子程序设计1.实验目的利用单片机的P1口作为I/O口进行实验验证,掌握利用P1口作为输入口和输出口的编程方法,理解并掌握延时子程序的设计方法。

2.实验设备及器件IBM PC机一台DP-51PRO单片机综合仿真实验仪一台3.实验内容(1)编写一段程序,用P1口作为控制端口,使D1区的LED轮流点亮。

(2)编写一段程序,用P1.0~P1.6口控制LED,P1.7控制LED的亮和灭(P1.7接按键,按下时LED 亮,不按时LED灭)。

图 14.实验要求学会使用单片机的P1口作I/O口。

如果时间充裕,也可以考虑利用P3口作I/O口来做该实验。

5.实验步骤①用导线把A2区的J61接口与D1区的J52接口相连。

原理如图1所示。

②先编写一个延时程序。

③将LED轮流点亮的程序编写完整并调试运行。

④使用导线把A2区J61接口的P1.0~P1.6与D1区J52接口的LED1~LED7相连,另外A2区J61接口的P1.7与D1区J53的KEY1相连。

原理如图3.2(b)所示。

⑤编写P1.7控制LED的程序,并调试运行(按下K1看是否全亮)。

⑥A2区J61接口P1.7与D1区J54的SW1相连,然后再运行程序,拨动开关SW1查看结果。

6.实验预习要求阅读附录内容,理解实验的硬件结构。

可以先把程序编好,然后在Keil C51环境下进行软件仿真。

7.实验参考程序程序1:ORG 8000H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0000HLJMP M ainORG 8100H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0100H Main: MOV A,#0FFHCLR CMainLoop:CALL DelayRLC AMOV P1,A ;把A的值输出到P1口SJMP MainLoopDelay: MOV R7, #0 ;延时Loop: MOV R6, #0DJNZ R6, $DJNZ R6, $DJNZ R6, $DJNZ R7, LoopRET;END程序2:ORG 8000H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0000HLJMP MainORG 8100H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0100H Main:JB P1.7,SETLED ;按键没有按下时,跳转到SETLEDCLRLED:CLR P1.0CLR P1.1CLR P1.2CLR P1.3CLR P1.4CLR P1.5CLR P1.6SJMP MainSETLED:SETB P1.0SETB P1.1SETB P1.2 SETB P1.3 SETB P1.4 SETB P1.5 SETB P1.6 SJMP Main ;END实验二定时器输出PWM实验1. 实验目的利用定时器控制产生占空比可变的PWM波,通过实验验证进一步加强对定时器功能的认识,掌握定时器的使用方法。

2. 实验设备及器件IBM PC机一台DP-51PRO单片机综合仿真实验仪一台示波器一台3. 实验内容编写一段程序,用P1.0口输出PWM波,用D1区的按键KEY1和KEY2实现占空比的增加和降低。

用示波器查看P1.0口的输出波形。

4. 实验要求学会使用单片机的定时器产生250Hz的PWM波。

5. 实验步骤①用导线连接A2区的J61接口P11与D1区J53接口的KEY1。

②用导线连接A2区的J61接口P12与D1区J53接口的KEY2。

③将示波器的探针连接到A2区的J61接口P10。

④用示波器观测P1.0口输出的PWM波形。

6. 实验预习要求认真阅读本节的实验内容,提前做好实验准备工作。

7. 实验参考程序PWMH DA TA 30H ;高电平脉冲的个数PWM DA TA 31H ;PWM周期COUNTER DA TA 32HTEMP DA TA 33HORG 8000HAJMP MAINORG 800BHAJMP INTT0ORG 8100HMAIN:MOV SP,#60H ;给堆栈指针赋初值MOV PWMH,#02H ;赋初值MOV COUNTER, #01H ;赋初值MOV PWM, #15H ;赋初值MOV TMOD, #02H ;定时器0在模式2下工作MOV TL0, #38H ;定时器每200μs产生一次溢出MOV TH0, #38H ;自动重装的值SETB ET0 ;使能定时器0中断SETB EA ;使能总中断SETB TR0 ;开始计时KSCAN:JNB P1.1,K1CHECK ;扫描KEY1JNB P1.2,K2CHECK ;扫描KEY2,如果按下KEY2,跳转到KEY2处理程序SJMP KSCANK1CHECK:JB P1.1,K1HANDLE ;去抖动,按下KEY1,跳转到KEY1处理程序SJMP K1CHECKK1HANDLE:MOV A,PWMHCJNE A,PWM,K1H0 ;判断是否到达上边界SJMP KSCAN ;是,则不进行任何操作K1H0:MOV A,PWMHINC ACJNE A,PWM,K1H1 ;如果在加1后到达最大值CLR TR0 ;定时器停止SETB P1.0 ;置P1.0为高电平SJMP K1H2K1H1:CJNE A,#02H,K1H2 ;如果加1后到达下边界SETB TR0 ;重开定时器K1H2:INC PWMH ;增加占空比SJMP KSCANK2CHECK:JB P1.2,K2HANDLE ;去抖动,按下KEY2,跳转到KEY2处理程序SJMP K2CHECKK2HANDLE:MOV A,PWMHCJNE A,#01H,K2H0 ;判断是否到达下边界SJMP KSCAN ;是,则不进行任何操作K2H0:MOV A,PWMHMOV TEMP,PWMDEC ACJNE A,#01H,K2H1 ;如果在减1后到达下边界CLR TR0 ;定时器停止CLR P1.0 ;置P1.0为低电平SJMP K2H2K2H1:DEC TEMPCJNE A,TEMP,K2H2 ;如果到达上边界SETB TR0 ;启动定时器K2H2:DEC PWMH ;降低占空比SJMP KSCANINTT0:PUSH PSW ;现场保护PUSH ACCINC COUNTER ;计数值加1MOV A,COUNTERCJNE A,PWMH,INTT01 ;如果等于高电平脉冲数CLR P1.0 ;P1.0变为低电平INTT01:CJNE A,PWM,INTT02 ;如果等于周期数MOV COUNTER,#01H ;计数器复位SETB P1.0 ;置P1.0为高电平INTT02:POP ACC ;出桟POP PSWRETI;END实验三 RS-232串口通信实验1. 实验目的利用单片机的TXD 、RXD 口,使用户学会单片机的串行口的使用。

2. 实验设备及器件IBM PC 机 一台 DP -51PRO 单片机综合仿真实验仪 一台3. 实验内容(1) 编写一段程序,利用单片机的串行口向PC 机发送0x55。

(2) 编写一段程序,接收PC 机串行口发送的0x55(ASCII 码为字母U ),在单片机接收到0x55时返回一个0x41(ASCII 码为字母A )。

在PC 机一端,以接收到0x41(ACDII 码为字母A )完成。

4. 实验要求深刻理解MAX232芯片的作用,学会使用单片机的串行口,如果有时间,用户可以做单片机之间的串行通信。

5. 实验步骤 ① 用串口线连接PC 机和DP -51PRO 单片机综合仿真实验仪。

如图3.18所示。

② 编写一段程序,利用单片机的创航空发送0x55,波特率为9600bps 。

(该程序不能在DP -51PRO 上进行仿真,所以只能下载。

) ③ 程序下载运行后,可以在PC 的接收软件上看见接收到UUUUUUU … ④ 编写一段程序,在单片机接收到0x55(U )时返回一个0x41(A )。

在PC 机一端,以接收到0x41(A )为完成,波特率为9600bps .(该程序不能在DP -51PRO 上进行仿真,所以只能下载。

)⑤下载程序运行后,先从PC机发送一个0x55(A),可以在PC的接收软件看见接收到A。

6.实验预习要求理解硬件结构,先把程序编好然后在Keil C51环境下进行仿真,还要学会PC机上的串行口调试软件的使用(DPFlash也内嵌一个串口调试器)。

7.实验参考程序程序1:ORG 0000HLJMP MainORG 00F0HMain:MOV SP, #60H ;给堆栈指针赋初值MOV TMOD, #20H ;设置T1为方式2MOV TH1, #0FDH ;设置波特率为9600bpsMOV TL1, #0FDHMOV SCON, #50H ;设置串口位方式1MOV PCON, #00HSETB TR1 ;定时器1开始计数Mainloop:MOV SBUF, #55H ;开始发送SENDWT:JBC TI, MainloopAJMP SENDWT;END程序2:ORG 0000HLJMP MainORG 00F0HMain:MOV SP, #60H ;给堆栈指针赋初值MOV TMOD, #20H ;设置T1为方式2MOV TH1, #0FDH ;设置波特率为9600bpsMOV TL1, #0FDHMOV SCON, #50H ;设置串口位方式1MOV PCON, #00HSETB TR1 ;定时器1开始计数REC:JBC RI, SENDWTAJMP RECSENDWT:MOV A, SBUFCLR RICJNE A, #55H, RECMOV SBUF, #41H ;开始发送JNB TI , $AJMP REC;END实验四 用8155扩展I/O 、RAM 及定时器实验1. 实验目的掌握单片机与8155的接口原理,熟悉对8155的初始化编程和输入、输出程序的设计方法,了解8155定时器的使用方法。

2. 实验设备及器件IBM PC 机 一台DP -51PRO 单片机综合仿真实验仪 一台示波器 一台3. 实验内容(1) 通过单片机的总线接口对8155芯片进行访问,编写程序分别实现对8155的I/O 口和内部RAM 、定时器进行操作。

(2) 连接线路验证8155的各项功能,熟悉它的应用方法。

4. 实验要求熟悉8155并行接口芯片的编程方法和应用,能够在设计电路时合理使用8155对端口资源进行扩展,从而掌握它的使用技巧。

5. 实验步骤① 8155引脚如图所示,连接线路,将A3区J89接口的RST 接地,将J89的CE 、I/O/M分别接到A2区J63接口的A15和A14上,完成总线操作的电路接线。

相关文档
最新文档