微机原理实验实验指导书2013

合集下载

微机原理实验指导书

微机原理实验指导书

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

2013微机原理实验指导书

2013微机原理实验指导书

微机原理实验报指导书实验一数据传送实验1.实验名称实验一数据传送实验2.实验目的1、掌握微型计算机汇编软件调试汇编源程序的基本操作;2、熟悉传送指令、简单运算类指令来编写汇编语言源程序;3、掌握调试过程及实验结果分析;3.实验仪器微型计算机一台4.实验原理或内容1.数据段从3500H单元开始建立0---15共16个数据区,程序中见此段存入数据00H,01H,02H---0AH---0FH,运行之,检查并记录结果。

2.将内存3500H开始的共10个单元内容传送到3600H单元开始的数据区中,运行之,记录结果。

5.实验步骤1.启动Masm for Windows 集成实验环境2009.6。

显示如下:2.输入源程序在模板处将程序完成,其中模板中段名可以自己修改定义,没有涉及的段可省略不写。

输入汇编语言源程序后,保存程序(规定扩展名为.asm)3.汇编编译/汇编成目标文件,单击运行菜单下“编译成目标文件(obj)”,等待系统汇编,若有错误,修改再编译,直至无错误为止。

4.连接生成可执行文件。

单击运行菜单下“生成可执行文件(exe)”,等待系统对汇编生成的.obj文件进行连接,生成相应的可执行文件。

若有错误,修改错误重复3和4操作,直至无错误为止。

5.在DEBUG调试环境下进行程序的调试1、反汇编。

u回车-u0000回车2、单步运行。

-T=0000回车-T回车3、连续运行。

G=起始偏移地址结束偏移地址4、内存单元内容显示。

-Dds:3500回车5、内存单元内容的修改。

-EDS:3500回车.键入修改后内容再空格完成后回车6、查看修改寄存器。

-R回车-R跟寄存器名,显示寄存器内容:后可跟修改内容 -R IP 可查看修改IP值7、退出debuf。

Q命令6.数据与结果将运行结果记录于此处7.讨论可写实验过程中遇到的问题及解决办法8.回答问题注明:实验报告要求1、写出实验内容、实验要求。

2、画出程序流程图,给出实验源程序。

微机原理与接口技术实验指导书(汇编)2013

微机原理与接口技术实验指导书(汇编)2013

《微机原理与接口技术》实验指导书电气与自动化工程学院常熟理工学院二零一三年八月单片机实验设备开发环境的建立和开发软件使用介绍一、PL2303 USB转串口驱动程序的安装单片机电路下载方式采用PL2303硬件驱动方式,需要安装PL2303驱动软件,安装步骤如下:1、打开“PL2303_Prolific_DriverInstaller_v110.exe”文件,双击安装,安装界面如图1-1所示:图1-1 PL2303驱动安装界面2、点击“下一步”,系统自动设置路径安装驱动图1-2 PL2303驱动安装完成界面3、点击“完成”,即完成了PL2303驱动的安装。

4、安装不成功的解决办法如果发现设备管理器中的串口驱动是感叹号或者是问号,则表示没有安装成功或者没有安装,如图1-3所示,右键点击更新驱动程序,如图1-4,按照提示完成驱动程序的更新,更新过程如图1-5、图1-6和图1-7所示。

图1-3 PL2303安装不成功图1-4 更新驱动程序软件图1-5 浏览查找驱动程序软件图1-6 浏览PL203驱动文件夹目录图1-7 安装完成5、查看设备管理器中USB串口驱动,成功检测到串口号,驱动安装成功,如图1-8所示。

图1-8 安装成功效果图二、KEIL C 软件的安装与使用该单片机实验设备使用的软件开发环境为KEIL 3 ,则需安装三个软件:Keil uVision3.exe(keil 3开发环境)、Keil_lic_v2.exe(keil3破解注册机)和cckeilvxx.exe(keil 3汉字补丁)三个软件。

具体安装步骤如下:1、开发环境Keil uVision3的安装。

(1)双击Keil uVision3.exe软件,弹出如图2-1所示的提示框,点击Next进行下一步安装;图2-1 Keil3安装步骤一(2)同意协议,打上勾,点击Next,如图2-2所示;图2-2 Keil3安装步骤二(3)设置软件路径,可使用默认安装路径,设置完路径以后,点击Next,如图2-3所示;图2-3 Keil3安装步骤三(4)完善注册信息,此处需要对E-mail进行填写,否则无法进行下一步的安装,填写信息结束后,点击Next,如图2-4所示;图2-4 Keil3安装步骤四(5)开始安装,等待安装结束,如图2-5所示;图2-5 Keil3安装步骤五(6)安装结束,去掉第一个选项的勾,点击Finish,完成软件的安装,如图2-6所示。

微机原理实验指导书

微机原理实验指导书

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

微机原理实验指导书

微机原理实验指导书

前言《微型计算机原理及应用》是一门实践性很强的专业技术基础课,因此,必须在课堂教学的基础上配以足够的实验或实践性教学环节,以便理论联系实际,使学生能深入理解课堂教学内容,加强学生动手能力,以加深对理论学习的理解和掌握,提高学生分析问题﹑解决问题的能力。

本实验指导书是《微型计算机原理及应用》一书的配套教材。

该实验指导书紧密结合教材内容,使用复旦大学科教仪器厂生产的FD-SJ8088A微机实验系统,合理安排了微机实验。

全书共分二部分。

第一部分汇编语言上机操作及程序调试方法及软件部分实验第二部分FD-SJ8088A微机实验系统介绍及硬件部分实验对于每一个实验都给出了实验目的﹑实验内容﹑预习要求﹑报告要求﹑实验提示﹑思考题。

实验提示部分我们仅给出部分文字提示和参考流程图,以作为学生自己编程时的参考。

我们主张学生在做实验前,必须要充分预习,充分准备,要依靠自己在实验前编出的程序,经过实验调试改正程序,得出正确的结果。

这样做实验,才能真正有收获,才能真正提高分析问题和解决问题的能力。

本实验指导书在编写的过程中,得到了本系的领导和老师的支持﹑指导和帮助,在此表示衷心的谢意。

由于编者水平有限,书中不妥或错误之处在所难免,欢迎大家在使用中提出宝贵意见。

编者2005年8月目录实验须知 (3)第一部分汇编语言上机操作及软件部分实验实验一汇编语言上机环境的熟悉和命令使用 (4)实验二利用D E B U G命令调试程序 (7)实验三利用中断指令进行输入输出程序设计 (9)实验四汇编语言综合编程实验 (11)第二部分硬件部分实验FD88调试软件 (12)实验五简单I/O接口控制实验 (21)实验六 8255 接口控制实验 (21)实验须知一、预习要求1.实验前认真阅读实验教程中有关内容,明确实验目的、内容和实验任务。

2.每次实验前做好充分的预习,对所需预备知识做到心中有数。

3.实验前应编好源程序,并对调试过程、实验结果进行预测。

微机原理实验实验指导书2013

微机原理实验实验指导书2013

微型计算机原理与应用实验指导书上海大学通信学院2013 年 4 月微机原理实验一一、实验目的:掌握PC机DEBUG调试程序有关命令的操作及8086各类指令的功能。

二、实验要求:在PC机上完成下列程序的调试运行,并写出运行结果。

三、实验内容1.DEBUG的基本操作:(1)从WINDOWS进入DOS之后,输入命令启动DEBUG:C:>DEBUG 回车(2)输入R命令,查看和记录CPU各个寄存器的内容:-R回车看到什么?(3)输入A命令,汇编下面的字符“WINDOWS”显示程序(DEBUG调试环境中,默认为十六进制,因此源程序中十六进制数后面不写H):-A100 ;从偏移地址是0100H处开始写指令MOV AH,2MOV DL, 57 ;57H 是“W”的ASCII码INT 21 ;INT 21是DOS 功能调用,AH=2代表2号功;能。

这3句合起来的功能是:显示DL中的字符MOV DL, 49INT 21MOV DL, 4EINT 21MOV DL, 44INT 21MOV DL, 4FINT 21MOV DL, 57INT 21MOV DL, 53INT 21INT 3 ;功能是产生一个断点,不要省略(4)输入U命令反汇编上面的程序:-U 100问:这里100代表什么?(5)输入G命令连续运行上面的程序,记录运行结果:-G=100(6)输入E命令把上面程序中的数据57,49,4E,44,4F,57,53依次分别改为57,45,4C,43,4F,4D,45:-E 103 回车(以下同)-E 107-E 10B-E 10F-E 113-E 117-E 11B(7)输入D命令查看程序机器码的存放情况:-D 100 11E ;看从100开始到11E的机器码(8)输入G命令再连续运行程序,并记录运行结果:-G=100(9)依次输入下面的T命令(单步执行)和G命令(设置断点并启动运行),记录各命令的运行结果:-T=100 回车-G=100 106 回车-G=100 10A 回车-G=100 10E 回车-G=100 11E 回车注意:若不小心打错指令,可以这样修改:例如:CS:0100 B300 MOV BL,00102 53 PUSH BX0103 B220 LP1: MOV DL,20要修改“PUSH BX”,因为这条指令的偏移地址是0102H,所以按以下操作:-A 0102 回车,然后把正确的指令打入,“-A ”是汇编指令。

微机原理实验指导书 ( 1 )

微机原理实验指导书 ( 1 )

实验一基本程序编程和程序调试一、实验目的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↵,就把错误的程序改正了。

微机原理实验指导书

微机原理实验指导书

实验一数据传送实验目的: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的直接寻址、寄存器间接寻址、变址寻址、寄存器相对寻址传送指令编写程序段,并上机验证结果。

【最新推荐】微机原理实验指导书-实用word文档 (18页)

【最新推荐】微机原理实验指导书-实用word文档 (18页)

本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为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)

微机原理实验指导书 (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单元开始的数据区中。

微机原理实验指导书

微机原理实验指导书

微机原理实验指导书课程类型:考查课专业班级:信息工程与自动化学院通信2013级学年学期:2014—2015 学年上学期课程总学时:16 学时主讲教师:杨青青说明:1. 本次实验为16个学时,以微机原理课程为依托,每两个学时完成一个实验,原理上应该有8份实验报告。

2. 实验报告可采取打印的方式,分析、填写程序等部分应该手写。

实验一汇编程序上机训练-熟悉指令格式一、上机环境:Window7系统,MasmEditor软件二、实验目的:1、学习使用在MasmEditor环境下完成汇编语言的编译、连接、运行、调试等。

2、熟悉80X86的指令系统及汇编语言指令格式。

三、实验步骤:1、编译源程序,生成可执行文件(.exe);2、用DeBug的各个调试指令,观察寄存器窗口的变化。

四、实验内容:参照微机原理课程第三章内容,进行课本例题的上机练习,完成程序的调试,例如单步步入、断点设置等,并在寄存器窗口察看各个寄存器的变化,从而也加深对80X86寻址方式的理解。

上机题目:微机原理教材第三章,例3.1,例3.3,例3.4,例3.6,例3.7,例3.8,例3.11,例3.23,例3.52,例3.64,例3.68,例3.71,例3.73思考题:试编程实现:(1)AL寄存器的第四位清0;(2)BL寄存器的第四位置1;(3)CL寄存器的第四位取反;(4)测试DL寄存器的最低两位是否为0,若是将0送入AL寄存器;否则将1送入AL寄存器。

五、实验报告要求:1.实验报告符合要求格式2.完成思考题的编程实现。

实验例题实验四汇编程序上机训练-多重循环程序设计一、上机环境:Window7系统,MasmEditor软件二、实验目的:1. 学习并熟悉汇编的多重循环程序的设计。

2. 进一步熟悉在MasmEditor环境下完成汇编语言的编译、连接、运行、调试等操作。

三、实验内容:例1:有十位同学的成绩分别是80,100,78,56,79,90,96,88,82,75;编程分别统计低于60分,60-69,70-79,80-89,90-99,100分的人数,并分别存入a100,b90,c80,d70,e60,f50单元中。

《微机原理与接口技术》2012-2013(1)计系Z11实验指导书(打印版)

《微机原理与接口技术》2012-2013(1)计系Z11实验指导书(打印版)

《微机原理与接口技术》课程实验指导书课程名称:微机原理与接口技术英文名称:Principle of Microcomputer课程类别:专业基础课实验学时:实验16学时适应对象:计算机Z111-2,软件Z111-2,网络Z111-2任课教师:李艳萍于丽梅实验列表实验1 PC机中断实验实验2 定时器/计数器8253实验实验3 并行接口8255A实验(一)实验4 并行接口8255A实验(二)实验5 串行接口8251实验实验6 数/模转换器DAC 0832实验实验7 模/数转换器ADC 0809实验(一)实验8 模/数转换器ADC 0809实验(二)实验要求预习实验内容1、明确实验目的及任务,了解和掌握实验所需的理论知识及相关接口芯片的工作原理。

2、通过阅读示例程序,掌握编程方法及相关技巧。

3、对每次实验,应根据要求设计接口电路并编写程序。

实验过程1、带上理论课教材、实验指导书及准备的实验程序。

2、连接接口电路前,请关闭电源再搭接线路,检查无误后,再开电源。

3、调试程序,记录结果。

4、实验结束后,请关闭电源,将各实验器材归位,清洁自己的桌面。

编写实验报告实验报告格式实验XX 实验项目名称一、实验目的二、实验内容描述本次实验任务及要求三、实验原理分析设计思想,绘制实验原理图、流程图。

四、实验程序程序清单及相关注释。

五、实验结果描述实验现象及结果并给予分析。

六、问题解决及收获体会说明在实验过程中遇到了哪些问题,是如何处理的;收获体会,不足之处和今后应注意的问题等。

注意事项1、实验前,应确保实验箱与微机通过USB串口正确连接。

2、爱护实验设施,插接、拔取排线时,应旋转插头,不得从线中间拉取。

3、实验完毕后,先关闭实验箱电源,后拔下实验箱与微机的串行连接接口,以免造成串口损坏。

主要设备仪器配置实验仪器:清华大学科教仪器厂:TPC-ZK教学实验系统,包括配套的软件系统。

第1章 TPC-ZK-USB实验系统介绍在各种计算机外围接口不断推陈出新的今天,USB接口已经成为个人计算机最重要的接口方式之一,USB接口设备的应用也以惊人的速度发展,几乎新型的PC都100%支持USB技术。

微机原理实验指导书

微机原理实验指导书

目录目录 (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.冒泡算法简介冒泡算法的基本思想:将待排序的元素(数据)看作是竖着排列的“气泡”,较小的元素比较轻,从而要往上浮。

微机原理实验指导书

微机原理实验指导书

微机原理及程序设计实验指导书班级:姓名:学号:指导老师:完成日期:微机原理实验实验要求及运行环境交打印版实验报告,实验要求:实验成绩百分制(总分100分)实验预习(30分)实验过程(40分)提前预习,标好程序注释,修改好程序;10分个人按要求独立完成,填好实验结果,按时交实验报告20分不做与本实验无关的事(如玩游戏、聊天、打电话、听音乐等)10分不得缺席,实验签名,不代他人签名10分带走自己的垃圾,保持实验室卫生,电脑设备桌椅摆设整齐,保管好个人物品5分按秩序进出实验室,不拥挤,注意安全,爱护设备,保证设备完好5分实验结果,实验中经老师检查过10分实验报告(30分)报告按统一格式要求填写,包括:课程名称、姓名、学号、班级任课老师等5分实验报告包括实验目的、实验内容、程序框图、程序清单、实验要求5分读懂程序加注释(每句注释10+分段注释5)(手写)15分程序修改,实验要求的完成及结果5分2、实验运行环境在电脑中装ASM Masm for windows 集成实验环境2008。

双击图标打开ASM MasM for windows 集成实验环境运行工作界面,输入实验程序代码,调试、改错、保存、运行、查看结果,进行记录。

运行结果显示:实验一两个多位十进制数相加的实验一、实验目的1、学习数据传送和算术运算指令的用法。

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

二、实验内容将两个多位十进制数相加。

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

三、程序框图四、程序清单CRLF MACRO ;宏定义,宏名:CRLFMOV DL, 0DH ;把0DH给DLMOV AH, 02H ; 把02H给AHINT 21H ;系统功能调用——实现回车功能MOV DL, 0AH ;把0AH给DLMOV AH, 02H ; 把02H给AHINT 21H ;系统功能调用——实现换行功能ENDM ;宏定义结束——本段实现回车换行功能DATA SEGMENT;数据段定义,段名DA TADATA1 DB 33H, 39H, 31H, 37H, 34H(, 3);变量DA TA1中装入加数DATA2 DB 36H, 35H, 30H, 38H, 32H;变量DATA2中装入被加数DATA ENDS;数据段定义结束——本段实现了两个数据的定义STACK SEGMENTSTA DB 20 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE, DS:DATA, SS:STACK, ES:DATASTART: MOV AX, DATAMOV DS, AXMOV AX, STACKMOV SS, AXMOV AX, TOPMOV SP, AXMOV SI, OFFSET DA TA2MOV BX, 05 ;06CALL DISPLCRLFMOV SI, OFFSET DA TA1MOV BX, 05 ;06CALL DISPLCRLFMOV DI, OFFSET DATA2CALL ADDAMOV SI, OFFSET DA TA1MOV BX , 05 ;06 |CALL DISPLCRLFMOV AX, 4C00HINT 21HDISPL PROC NEARDS1: MOV AH, 02MOV DL, [SI+BX-1]INT 21HDEC BX ;BX-1JNZ DS1 ;相等则转移RETDISPL ENDPADDA PROC NEARMOV DX, SIMOV BP, DIMOV BX, 05 ;06 | 07AD1: SUB BYTE PTR [SI+BX-1] , 30HSUB BYTE PTR [DI+BX-1] , 30HDEC BXJNZ AD1MOV SI, DXMOV DI, BPMOV CX, 05 ;06CLCAD2: MOV AL, [SI]MOV BL, [DI]ADC AL, BLAAAMOV [SI] , ALINC SIINC DILOOP AD2MOV SI, DXMOV DI, BPMOV BX, 05AD3: ADD BYTE PTR [SI+BX-1], 30HADD BYTE PTR [DI+BX-1], 30HDEC BXJNZ AD3RETADDA ENDPCODE ENDSEND START五、实验要求1.读懂源程序,写出源程序注释。

微机原理实验指导书(注释版修正版)-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系统概述 (2)实验一、系统认识……………………………………………………………7实验二、熟悉51指令(多字节十进制加法)……………………………11实验三、熟悉51指令(双字节乘法)……………………………………13实验四、熟悉51指令(数据排序)………………………………………16实验五、熟悉51指令(双字节除法)……………………………………18实验六、熟悉51指令(布尔操作)………………………………………21实验七、定时器/计数器……………………………………………………23实验八、ADC0809(模/数转换)…………………………………27 实验九、DAC0832(数/模转换)…………………………………29 实验十、8155接口扩展及其应用………………………………………32 实验十一、串行口扩展并行I/O…………………………………………371实验总目的及要求学习单片机原理及应用这门课程,必须重视实践环节。

即要独立编写程序,独立连接线路,独立上机调试程序。

上机的目的:绝不是为了验证教材和讲课内容或者验证自己所编的程序正确与否。

应该说,学习单片机程序设计及硬件开发,其上机实验目的为:(1)加深对讲授内容的理解。

一些重要的语法规定,只靠课堂讲授,既枯燥无味又难以记住,而通过多次实验,就能自然地、熟练地掌握。

所以通过上机来掌握语法规则是行之有效的方法。

(2)熟悉所用的计算机系统的操作方法,也就是了解和熟悉MCS-51系统的开发环境。

一个程序必须在一定的外部环境下才能运行,所谓“环境”,就是指系统的硬件条件和软件条件。

使用者应该了解为了运行一个程序,需要哪些必要的外部条件,可以利用哪些系统的功能来帮助自己开发程序。

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

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

实验一一、实验名称:常用DEBUG命令的功能及使用举例二、实验目的:掌握汇编语言基本运行环境和熟悉DEBUG调试程序的命令。

包括:学习使用指令,掌握常用的指令功能和简单程序设计;掌握DEBUG调试程序的命令,熟悉程序输入、存储器和CPU寄存器及标志位的检查方法,单步、断点、连续等运行程序的调试方法。

三、实验内容:DEBUG的主要命令功能与格式DEBUG命令是在DEBUG提示符“-”下,由键盘键入的。

每条命令以单个字母的命令符开头,然后是命令的操作参数,操作参数与操作参数之间,用空格或逗号隔开,操作参数与命令符之间用空格隔开,命令的结束符是回车键Enter。

命令及参数的输入可以是大小写的结合。

Ctrl+Break键可中止命令的执行。

Ctrl+Num Lock键可暂停屏幕卷动,按任一键继续。

所用数均为十六进制数,且不必写H。

1. 汇编命令A格式:A [[<段寄存器名>/<段地址>:] <段内偏移>]上式等价于:(1) A <段寄存器名>:<段内偏移>(2) A <段地址>:<段内偏移>(3) A <段内偏移>(4) A功能:键入该命令后显示段地址和段内偏移并等待用户从键盘逐条键入汇编命令,逐条汇编成代码指令,顺序存放到段地址和段内偏移所指定的内存区域,直到显示下一地址时用户直接键入回车键返回到提示符“-”。

注:其中(1)用指定段寄存器的内容作段地址,(3)用CS的内容作段地址,(4)以CS:100作地址。

以后命令中提及的各种‘地址’形式,均指(1)、(2)、(3)中A后的地址形式。

2. 显示内存命令D格式:D [<地址>/<范围>]上式等价于:(1) D <地址>(2) D <范围>(3) D功能:以两种形式显示指定范围的内存内容。

一种形式为十六进制内容,一种形式为以相应字节的内容作为ASCII码的字符,对不可见字符以‘.’代替。

微机原理实验指导书

微机原理实验指导书

微机原理实验指导书实验一数据传送实验目的: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的直接寻址、寄存器间接寻址、变址寻址、寄存器相对寻址传送指令编写程序段,并上机验证结果。

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

微型计算机原理与应用实验指导书上海大学通信学院2013 年 4 月微机原理实验一一、实验目的:掌握PC机DEBUG调试程序有关命令的操作及8086各类指令的功能。

二、实验要求:在PC机上完成下列程序的调试运行,并写出运行结果。

三、实验内容1.DEBUG的基本操作:(1)从WINDOWS进入DOS之后,输入命令启动DEBUG:C:>DEBUG 回车(2)输入R命令,查看和记录CPU各个寄存器的内容:-R回车看到什么?(3)输入A命令,汇编下面的字符“WINDOWS”显示程序(DEBUG调试环境中,默认为十六进制,因此源程序中十六进制数后面不写H):-A100 ;从偏移地址是0100H处开始写指令MOV AH,2MOV DL, 57 ;57H 是“W”的ASCII码INT 21 ;INT 21是DOS 功能调用,AH=2代表2号功;能。

这3句合起来的功能是:显示DL中的字符MOV DL, 49INT 21MOV DL, 4EINT 21MOV DL, 44INT 21MOV DL, 4FINT 21MOV DL, 57INT 21MOV DL, 53INT 21INT 3 ;功能是产生一个断点,不要省略(4)输入U命令反汇编上面的程序:-U 100问:这里100代表什么?(5)输入G命令连续运行上面的程序,记录运行结果:-G=100(6)输入E命令把上面程序中的数据57,49,4E,44,4F,57,53依次分别改为57,45,4C,43,4F,4D,45:-E 103 回车(以下同)-E 107-E 10B-E 10F-E 113-E 117-E 11B(7)输入D命令查看程序机器码的存放情况:-D 100 11E ;看从100开始到11E的机器码(8)输入G命令再连续运行程序,并记录运行结果:-G=100(9)依次输入下面的T命令(单步执行)和G命令(设置断点并启动运行),记录各命令的运行结果:-T=100 回车-G=100 106 回车-G=100 10A 回车-G=100 10E 回车-G=100 11E 回车注意:若不小心打错指令,可以这样修改:例如:CS:0100 B300 MOV BL,00102 53 PUSH BX0103 B220 LP1: MOV DL,20要修改“PUSH BX”,因为这条指令的偏移地址是0102H,所以按以下操作:-A 0102 回车,然后把正确的指令打入,“-A ”是汇编指令。

如果要查看0100H以后的指令及相应的机器代码,可以-U 0100 回车,能够看到CS:0100开始的指令及相应的机器代码。

“-U ”是反汇编若发现有误用,用“-A XXXX 回车”,重打这条指令即可2.一字节十六进制数转换为ASCII码(只考虑大写字母)用E命令在DS:1000单元中存放十六进制数5A,用A命令从CS:0100单元开始存放下面程序的机器码,并调试运行(DEBUG调试环境中,源程序中十六进制数后面不写H):CS:0100 8D360010 LEA SI,[1000]0104 8D3E2010 LEA DI,[1020]0108 8A04 MOV AL,[SI]010A 240F MOV BL,AL010C 240F AND AL,0F010E E80E00 CALL 011F0111 80E30 AND BL,F00114 B90400 MOV CX,40117 D2EB SHR BL,CL0119 88D8 MOV AL,BL011B E80100 CALL 011F011E F4 RET011F 3C09 CMP AL,090121 7602 JBE 01250123 0407 ADD AL,070125 0430 ADD AL,300127 8805 MOV [DI],AL0129 47 INC DI012A C3 RET运行结果:1)写出执行上述程序的命令行________________________2)程序执行后,[1020]=__________,[1021]=__________。

3)思考:NOP 是空操作指令,若在ADD AL,07后面,加一条NOP,结果会如何?3、搜索字符串结束标志,统计搜索的字符个数用E命令在DS:1000开始的单元中存放若干个ASCII字符,例如:30,31,32……39,0D。

(0D作为字符串结束标志,实验中请输入与示例不同的字符组合)。

用A命令从CS:0200单元开始存放程序的机器码,并调试运行。

参考程序如下:LEA DI, [1000]MOV DL, 0MOV AL, 0DAGAIN: CMP AL, [DI]JE DONE (debug环境下,写标号DONE语句的偏移地址)INC DLINC DIJMP AGAIN (AGAIN语句的偏移地址)DONE: LEA BX, [1020]MOV [BX],DLRET运行结果:1)在DS:1000开始的单元中存放的字符串是______________________2)程序执行后,搜索的字符个数存放在___________单元,该单元的值是___________。

3)程序执行后,(AL)=__________ ,(BX)=__________,(DL)=__________。

4.编制一个能在CRT上连续显示A,B,C,D······Z大写英文字符的源程序,并在源程序下汇编调试运行。

用A命令从CS:0300单元开始存放程序的机器码,并调试运行:参考源程序:CS:0300 B300 MOV BL,00302 53 PUSH BX0303 B220 MOV DL,200305 B402 MOV AH,020307 CD21 INT 210309 5B POP BX030A 88D8 MOV AL,BL030C FEC0 INC AL030E 3C1B CMP AL,1B0310 7502 JNZ 01140312 B001 MOV AL,010314 88C3 MOV BL,AL0316 53 PUSH BX ;0317 0440 ADD AL,400319 88C2 MOV DL,AL031B B402 MOV AH,02031D CD21 INT 21031F B9FFFF MOV CX,FFFF0322 49 DEC CX0323 75FD JNZ 03220325 EBDC JMP 0303按CTRL+C,可中止程序运行。

1)请画出程序的流程框图。

2)运行正确后,改写程序为0,1,2,3,4,5,7,8,9的循环显示。

3)思考:如果希望程序能够自动退出,应该如何实现?微机原理实验二汇编程序的基本语法及程序编制一、实验目的:1.熟悉各条伪指令的作用,了解完整源程序的结构2.掌握运算类程序设计的基本方法,编制简单汇编程序。

3.掌握masm、link的用法,熟悉汇编语言上机过程。

完整源程序结构STACK SEGMENT STACKDB 100 DUP(?)TOP LABEL WORDSTACK ENDSDATA SEGMENT;定义程序运行所需的数据DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART:MOV AX, DATAMOV DS, AX ; 取数据段段地址MOV AX, STACKMOV SS, AX ; 取堆栈段段地址MOV SP, OFFSET TOP ;;输入实现特定功能的程序段MOV AH, 4CHINT 21HCODE ENDSEND START二、实验步骤1.使用EDIT或WINDOWS下的记事本或写字板输入你的程序并保存到D:\masm目录下,并命名(假设为Test1.asm. 后缀必须是asm).2.汇编过程:D:\masm>masm Test1.asm(如果没有错误,将生成Test1.obj文件)3.连接过程:D:\masm>link Test1(如果没有连接错误,将生成Test1.exe文件)4.调试程序:D:\masm>debug Test1.exe,将该程序装入debug进行调试。

三、实验内容1. 建立下列程序的可执行文件,并回答问题。

DATAS SEGMENTSTRING DB 'Hello World!',13,10,'$'DATAS ENDSCODES SEGMENTASSUME CS:CODES, DS:DATASSTART:MOV AX, DATASMOV DS, AXLEA DX, S TRINGMOV AH, 9INT 21HMOV AH, 4CHINT 21HCODES ENDSEND START1)在DEBUG中,如何观察数据段中的数据存储情况?数据存储的段地址和偏移地址如何察看?2)在DEBUG中,如何查看机器码所对应的源程序?代码的段地址和偏移地址如何确定?3)运行上述程序的命令行是:____________________,程序的运行结果是________________________________________。

4)代码段中的LEA DX, S TRING语句,翻译成机器指令后再反汇编,得到什么语句?为什么?5)如果代码段中有一条MOV BL, STRING语句,翻译成机器指令后再反汇编,得到什么语句?2. 从实验1的2-4三个参考程序中,任选一个改编成完整源程序,建立其可执行文件并运行。

(注意:需要定义标号,作为控制转移类指令中的操作数;直接寻址的存储器操作数,应通过变量表示)微机原理实验三一、实验目的1.进一步掌握8086汇编语言程序的编辑、宏汇编、连接及运行的操作步骤,进一步掌握编制源程序的格式,了解编辑程序EDIT、宏汇编MASM、联机程序LINK的功能,熟悉具有扩展名.ASM、.OBJ、.LST、.EXE等文件查询。

2.掌握分支、循环程序及子程序设计方法二、实验要求在DOS环境下,用EDIT文件编辑***.ASM源程序并存盘,用MASM文件汇编无误,用LINK文件连接无误,然后在DOS下运行***.EXE文件,用DEBUG 文件检查运行结果。

最后写出程序运行结果。

三、实验内容1、编制一个将10个带符号的正、负数分开的源程序,生成可执行文件后在debug 下调试运行。

1)设10个数为01H,02H,03H,04H,06H,0FFH,80H,81H,06H,07H。

2)将这些数据中的正、负数分开,正数放在变量V AR2对应的数据区中,负数放V AR3对应的数据区中。

2、编制源程序,并生成EXE可执行文件,然后调试运行(1)功能要求:找出无序的有符号数中的最小值和最大值(最少10个数,数据内容随意设定,数据类型:字节)。

相关文档
最新文档