南昌航空大学_微机原理与接口技术实验报告
《微机原理及接口技术》实验报告2

5
FFF0H FFF2H FFF4H FFF6H FFF8H FFFAH FFFCH FFFEH 0000H (1)CALL MAX 执行之前
FFF0H FFF2H FFF4H FFF6H FFF8H FFFAH FFFCH FFFEH 0000H (2)CALL MAX 执行之后
FFF0H FFF2H FFF4H FFF6H FFF8H FFFAH FFFCH FFFEH 0000H (3)保护现场之后
《微机原理与接口技术》实验报告 2
学号: 姓名: 班级:
实验地点:
成绩:
实验名称:选择结构程序、循环结构程序及子程序设计 所使用的工具软件及环境:TASM、TLINK、TD
一、 实验目的: 1. 学习转移指令、比较指令及测试指令; 2. 掌握利用转移指令、 比较指令和测试指令设计单分支、 双分支和多分支选择汇编程序的方法; 3. 学习 LOOP、LOOPZ、LOOPNZ 循环指令的功能; 4. 掌握循环程序的设计方法,了解多重循环程序的设计要点。 5. 掌握带重复前缀的串处理指令的应用。 6. 掌握子程序的定义、调用及返回方法; 7. 熟悉主程序与子程序间几种参数传递方法; 8. 深刻理解子程序的调用与返回对堆栈的影响; 二、实验内容:
1
2、编写程序,从键盘输入一个字符串,统计其中数字字符、小写字母、大写字母和空格的个数。
2
3、编写程序实现:有一个带符号字数组 ARRAY,采用冒泡排序算法将 ARRAY 中的数据按照从小 到大的次序进行排序。
3
4、编写程序实现:比较长度相同的两个字符串 STR1 和 STR2,若两个字符串不相同则将第一个不同 字符的下标送变量 INDEX(设字符串中第 1 个字符的下标为 0) ,否则 INDEX 置为-1。 要求: 用带重复前缀的字符串处理指令实现上述功能。
微机原理及接口技术实验报告

微机原理及接口技术实验报告实验一实验日期实验时间1 实验名称:系统认知实验2 实验目的:了解汇编语言的设计、编写和调试程序的方法,掌握DEBUG的使用。
3 实验内容/原理:编程实现字符串“Hello World!”,用DEBUG调试程序。
实验要求:1、上机前做好充分准备,包括源程序清单、调试步骤等;2、用DEBUG来调试程序,熟悉DEBUG的使用。
实验步骤:1、编写程序并输入,检查无误后,经汇编、连接后运行,用DEBUG装入。
2、用U命令反汇编程序,应用R、G等命令,观看运行情况。
3、用D、E、A等命令查看、修改源数据,用G命令查看运行结果。
4、用Q命令退出DEBUG。
4 调试过程及结果DSEG SEGMENTSTRING DB 'HELLO,World!',0DH,0AH,'$'DSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXLEA DX,STRINGMOV AH,09HINT 21HMOV AH,4CHINT 21HCSEG ENDSEND START实验显示结果:-u13CB:0100 7403 JZ 010513CB:0102 E99700 JMP 019C13CB:0105 B80500 MOV AX,000513CB:0108 50 PUSH AX13CB:0109 FF363C21 PUSH [213C]13CB:010D FF363A21 PUSH [213A]13CB:0111 E84C14 CALL 156013CB:0114 83C406 ADD SP,+0613CB:0117 8946F8 MOV [BP-08],AX13CB:011A 895634 MOV [BP+34],DX13CB:011D 00BA130B ADD [BP+SI+0B13],BH-d13CB:0100 74 03 E9 97 00 B8 05 00-50 FF 36 3C 21 FF 36 3A t.......P.6<!.6:13CB:0110 21 E8 4C 14 83 C4 06 89-46 F8 89 56 34 00 BA 13 !.L.....F..V4...13CB:0120 0B 06 BA 17 75 1C 83 7E-0A FF 74 08 8B 46 06 0B ....u..~..t..F..13CB:0130 46 08 75 0E A1 3A 21 8B-16 3C 21 A3 B8 17 89 16 F.u..:!..<!.....13CB:0140 BA 17 C4 5E F8 2B C0 26-89 47 10 26 89 47 0E 8B ...^.+.&.G.&.G..13CB:0150 46 06 8B 56 08 26 89 47-0A 26 89 57 0C 8A 46 0A F..V.&.G.&.W..F.13CB:0160 26 88 47 22 8A 46 0C 26-88 47 05 A1 32 21 8B 16 &.G".F.&.G..2!..13CB:0170 34 21 89 46 FC 89 56 FE-A1 5E 27 8B 16 60 27 A3 4!.F..V..^'..`'.-tAX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=13CB ES=13CB SS=13CB CS=13CB IP=0102 NV UP EI PL NZ NA PO NC 13CB:0102 E99700 JMP 019C-rAX=6789 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=13CB ES=13CB SS=13CB CS=13CB IP=0102 NV UP EI PL NZ NA PO NC 13CB:0102 E99700 JMP 019C实验二实验日期实验时间1 实验名称:系统认知实验2 实验目的:了解汇编语言的设计、编写和调试程序的方法,掌握DEBUG的使用。
民航大学微机原理实验报告及试验程序

微机原理与接口技术实验报告实验环境: Windows XP SP3实验软件:masm, link, debug, edit。
Test 1: debug命令及汇编指令和寻址的应用。
NO.1设堆栈指针SP=2000H, AX=3000H, BX=5000H;请编一程序段将AX和BX的内容进行交换。
要求:用3种方法实现。
方法一CODE SEGMENT ASSUME CS:CODE START: MOV AX,3000HMOV BX,5000H MOV CX,AX MOV AX,BX MOV BX,CX CODE ENDS END START 方法二CODE SEGMENTASSUME CS:CODESTART: MOVAX,3000HMOV BX,5000HXCHG AX,BXCODE ENDSEND START方法三CODE SEGMENTASSUME CS:CODESTART: MOVAX,3000HMOV BX,5000HPUSH AXPUSH BXPOP AXPOP BXCODE ENDSEND STARTNO.2分别执行以下指令, 比较寄存器寻址,寄存器间接寻址和相对寄存器寻址间的区别。
MOV AX,BX 寄存器寻址, 将BX内容送AXMOV AX,[BX] 寄存器间接寻址, 将DS:BX内存单元内容送AXMOV AX,10[BX] 寄存器相对寻址, 将DS:BX+10内存单元内容送AXNO.3已知有如下程序段:MOV AX, 1234HMOV CL, 4在以上程序段的基础上, 分别执行以下指令:ROL AX, CL AX=4123HROR AX, CL AX=3412HSHL AX, CL AX=4120HSHR AX, CL AX=0412HSAR AX, CL AX=0041HRCL AX, CL AX=0410HRCR AX, CL AX=0041HNO.4设有以下部分程序段:TABLE DW 10H,20H,30H,40H,50HENTRY DW 3┇LEA BX,TABLEADD BX,ENTRYMOV AX,[BX]┇要求: (1)将以上程序段补充成为一个完整的汇编程序。
微机原理及接口技术实验

微机原理及接口技术实验一、实验目的本实验旨在通过学习微机原理和接口技术,了解和掌握微机系统的基本原理和接口技术的应用,培养学生对微机系统的认识和实践操作能力。
二、实验内容1. 微型计算机系统设计与搭建2. 微机输入输出接口技术应用实验3. 微机总线技术应用实验4. 微机存储器技术应用实验5. 微型计算机中断和DMA技术应用实验三、实验原理1. 微型计算机系统设计与搭建微型计算机主要由中央处理器、存储器、输入输出设备和总线组成。
本实验通过选择适当的芯片、电路连接和控制程序设计,实现一个基本的微型计算机系统。
2. 微机输入输出接口技术应用实验输入输出是微型计算机的重要组成部分,通过实验学习各种输入输出接口的原理和使用方法,并进行实际应用。
3. 微机总线技术应用实验总线是微型计算机各个部件之间传送数据和控制信息的公共通信路径。
通过实验学习总线的分类、结构和时序要求,掌握总线的实际应用。
4. 微机存储器技术应用实验存储器是微型计算机中存储数据和程序的重要设备。
通过实验学习不同类型存储器的原理和应用,掌握存储器的选择和使用。
5. 微型计算机中断和DMA技术应用实验中断和直接存储器访问(DMA)是微型计算机连接外部设备的重要技术。
通过实验学习中断和DMA的工作原理,掌握中断和DMA的应用方法。
四、实验步骤1. 根据实验要求,设计并搭建微型计算机系统;2. 连接输入输出设备,并编写控制程序;3. 进行输入输出接口技术应用实验,如串行通信、并行通信等;4. 进行总线技术应用实验,如总线传输数据测试等;5. 进行存储器技术应用实验,如读写存储器数据等;6. 进行中断和DMA技术应用实验,如中断服务程序编写等;7. 完成相关实验报告并进行总结。
五、实验设备和材料1. 微型计算机实验箱、电源适配器;2. 8051单片机、存储器芯片、输入输出芯片,如74HC164等;3. LED数码管、LCD液晶显示器、键盘、计算器等输入输出设备;4. 可编程芯片编程器、逻辑分析仪等实验设备。
微机原理与接口技术实验报告一

微机原理与接口技术实验报告(一)实验内容一:1、实验目的: 考察对内存寻址方式、8086指令的理解内存中的数据排列如上表所示,各寄存器内容如下DS=2100H ES=2111H SS=2000H BX=106H CX=3H SI=106H DI=12H BP=1100H SP=1100HFR=3402H (FR 标志寄存器,FR 中的DF -字符串操作方向位为1)在执行下列指令后,写出寄存器AX中的内容 0) pop ax; AX= 1) mov ax,bx; AX= 2) mov ax,[bx];AX= 3) mov ax,102H;AX= 4) mov ax,[102H];AX= 5) mov ax,6[SI];AX= 6) lea ax,6[BX][DI];AX= 7) mov ax,[BP+DI];AX= 8) rep lodsw;AX= , 还需写出SI=2、实验内容: (1)开始菜单下选择运行,输入cmd 回车,在开启的窗口中输入debug 后回车,进入程序输入环境(2)利用r 指令显示当前各寄存器储值并按照上文中的寄存器值进行修改 结果如下:物理地址 内容(字节) 物理地址 内容(字节)21100H BEH 21110H 99H 21101H 02H 21111H 00H 21102H 01H 21112H E8H 21103H 8BH 21113H 7EH 21104H 44H 21114H E0H 21105H 02H 21115H 74H 21106H 29H 21116H 06H 21107H 44H 21117H E8H 21108H 04H 21118H 17H 21109H 9CH 21119H 01H 2110AH 50H 2111AH ACH 2110BH E6H 2111BH EBH 2110CH 99H 2111CH 34H 2110DH C6H 2111DH 00H 2110EH 06H 2111EH 30H 2110FHE8H2111FH0BH(3)d指令查看21100H——2111FH内存单元的内容(4)e指令对该段内存单元进行赋值(5)a指令按顺序输入要求中列出的指令(6)u指令进行反汇编(7)t指令(跟踪命令)逐条运行指令,观察记录指令运行结果3、实验结果0) pop ax; AX=02be1) mov ax,bx; AX=01062) mov ax,[bx];AX=44293) mov ax,102H;AX=01024) mov ax,[102H];AX=8b015) mov ax,6[SI];AX=c6996) lea ax,6[BX][DI];AX=011e7) mov ax,[BP+DI];AX=7ee88) rep lodsw;AX=4429, SI=0108实验内容二:1、实验目的:熟悉masm for windows 软件的应用,体会汇编程序的编写、编译、执行及调试等各个环节。
微机原理与接口技术实验报告

微机原理与接口技术实验报告
本次实验是关于微机原理与接口技术的实验报告,通过本次实验,我们将深入
了解微机原理与接口技术的相关知识,并通过实际操作来加深对这些知识的理解和掌握。
实验一,微机原理。
在本次实验中,我们首先学习了微机的基本原理,包括微机的组成结构、工作
原理和基本功能。
通过实际操作,我们了解了微机的主要组成部分,如中央处理器(CPU)、内存、输入输出设备等,并学习了它们之间的工作原理和相互配合关系。
同时,我们还学习了微机的基本指令系统和数据传输方式,加深了对微机工作原理的理解。
实验二,接口技术。
在接口技术的实验中,我们学习了微机与外部设备之间的接口技术,包括并行
接口、串行接口和通用接口等。
我们通过实际操作,了解了这些接口技术的工作原理和应用场景,学会了如何通过接口技术实现微机与外部设备的数据交换和通信。
实验三,实验综合。
在本次实验的最后,我们进行了一个综合实验,通过实际操作来综合运用微机
原理和接口技术的知识,实现一个具体的功能。
通过这个实验,我们加深了对微机原理与接口技术的理解,掌握了如何将理论知识应用到实际操作中。
总结。
通过本次实验,我们深入学习了微机原理与接口技术的相关知识,并通过实际
操作加深了对这些知识的理解和掌握。
微机原理与接口技术作为计算机科学与技术的基础知识,对我们今后的学习和工作都具有重要意义。
希望通过这次实验,能够对大家的学习和工作有所帮助,并为今后的学习打下坚实的基础。
以上就是本次实验的实验报告,希望对大家有所帮助。
感谢大家的阅读!。
微机原理与接口技术实验报告

微机原理与接口技术实验报告实验目的:本次实验旨在通过实际操作,加深对微机原理与接口技术的理解,掌握接口技术的基本原理和应用方法,提高学生的动手能力和实际应用能力。
实验内容:1. 学习并掌握微机原理与接口技术的基本知识;2. 了解并熟悉常见的接口技术及其应用;3. 进行实际操作,设计并完成一个简单的接口电路。
实验仪器与设备:1. 个人电脑;2. 电子元件,电阻、电容、集成电路等;3. 实验板、示波器、示教电脑等。
实验步骤:1. 阅读相关的微机原理与接口技术的教材,了解基本原理;2. 学习常见的接口技术,例如并行接口、串行接口等;3. 进行实际操作,设计一个简单的接口电路,包括硬件设计和软件编程;4. 调试电路,确保接口电路能够正常工作;5. 编写实验报告,总结实验过程和实验结果。
实验结果与分析:经过实际操作,我们成功设计并完成了一个简单的接口电路。
在实验过程中,我们深入理解了微机原理与接口技术的相关知识,掌握了接口技术的基本原理和应用方法。
通过调试电路,我们验证了接口电路的正常工作,加深了对接口技术的理解。
结论:本次实验使我们更加深入地了解了微机原理与接口技术,提高了我们的动手能力和实际应用能力。
通过设计和完成接口电路,我们对接口技术有了更加直观的认识,为今后的学习和工作打下了坚实的基础。
总结:微机原理与接口技术是计算机专业的重要课程,通过实验学习,我们不仅加深了对知识的理解,还提高了动手能力和实际应用能力。
希望同学们能够认真对待每一次实验,不断提升自己的能力,为未来的发展打下坚实的基础。
至此,本次微机原理与接口技术实验报告完毕。
《微机原理与及接口技术》课程硬件实验报告

图3-4双色LED结构原理图
4.基础型实验
如图 3-5 所示是采用 P1 口控制 4 个双色 LED 的接口电路。在 Keil 环境运行并调程程序,观察结果。
图3-5交通灯显示接口电路
分析:设4个双色LED为东南西北四个方向的交通指示灯,从上到下4个分别代表东南西北方向;设双色LED的1脚控制红色LED,3脚控制绿色LED
延时一段时间后(0.5s),再切换到东西路口的绿灯亮,南北路口的红灯亮;
不断重复以上过程,实现模拟交通灯控制。
硬件实验6八段数码管显示实验
1.实验目的
1)了解数码管实现显示字符的7段码编制方法;
2)掌握查表法获得0-F的7段码的方法;
3)掌握静态显示和动态显示的原理,硬件连接方式和程序编写方法。
2.预习要求
设流经每个LED的电流为3mA,则P0中每条口线上拉出的最大电流是3mA;而灌入P1口线的最大电流是一个数码管的8个LED全部显示的情况,即有24mA。
因此应该在P1口与数码管之间加入驱动芯片(该芯片要求至少能够灌入24mA电流,本图中未画出,实验箱设计图中是加了一个74573)。
5.设计型实验
(1)一个静态数码管的电路如3-14所示,编写程序,在该数码管上依次显示0-9数字,每个数字显示时间为1s。
当红色 LED 点亮、绿色 LED 不点亮时,发光二极管显示红色; 当绿色 LED 点亮、红色 LED 不点亮时,发光二极管显示绿色; 当红色 LED、绿色 LED 同时点亮时,发光二极管呈现的是黄色。
另外,当控制双色 LED 红、绿两个 PN 结流过不同比例的电流时,可以使其发出粉红、淡绿、淡黄、黄色等不同的色彩,达到简单的“彩色”显示效果。
微机原理与接口技术实验报告

微机原理与接口技术实验报告实验目的:本次实验旨在熟悉并掌握微机原理与接口技术的相关知识,通过实例操作和分析实验数据,加深对微机原理与接口技术的理解。
一、实验器材与软件1. 硬件器材:计算机主机、外设设备2. 软件工具:操作系统、编程软件二、实验步骤及结果分析1. 实验1:计算机开机自检在实验中,通过开机启动计算机,观察计算机进行自检的过程。
根据显示屏上的自检信息,可以判断计算机硬件的工作状态。
2. 实验2:串口通信测试在本实验中,通过串口通信实现计算机与外设设备之间的数据传输。
首先,将串口接口连接到计算机主机,然后进行相应的设置,包括波特率、数据位、停止位和校验位等。
在实验中,通过编写相应的程序,实现计算机与外设设备之间的数据交互。
通过观察实验结果,判断串口通信是否正常。
3. 实验3:并口通信测试本实验旨在通过并行口通信实现计算机与外设设备之间的数据传输。
首先,将并行口接口连接到计算机主机。
然后,根据实验要求进行相应的设置,包括数据总线的宽度、传输模式等。
通过编写程序,实现计算机与外设设备之间的数据交互。
观察实验结果,判断并口通信是否正常。
4. 实验4:USB接口测试在本实验中,通过USB接口实现计算机与外设设备之间的数据传输。
首先,将USB接口连接到计算机主机。
然后,在计算机中安装相应的驱动程序。
通过编写程序,实现计算机与外设设备之间的数据交互。
观察实验结果,判断USB接口是否正常工作。
5. 实验5:网络接口测试本实验旨在通过网络接口实现计算机之间的数据传输。
首先,将计算机连接到局域网中的其他计算机。
然后,进行相应的设置,包括IP地址、子网掩码等。
通过编写程序,实现计算机之间的数据交互。
观察实验结果,判断网络接口是否正常工作。
三、实验总结通过本次实验,我对微机原理与接口技术有了更深入的了解,掌握了串口、并口、USB接口和网络接口等常用接口的使用方法。
通过实验的操作和分析,我对接口通信的原理和实现方式有了更详细的了解,对计算机与外设设备之间的数据传输有了更清楚的认识。
微机原理与接口技术实验报告_5

实验二初级程序的编写与调试实验一、实验目的1、熟练掌握DEBUG的常用命令,学会用DEBUG调试程序.2、深入了解数据在存储器中的存取方法,及堆栈中数据的压入与弹出.3、掌握各种寻址方法以及简单指令的执行过程.二、实验内容1.设堆栈指针SP=2000H,AX=3000H,BX=5000H,请编一程序段将AX的内容和BX的内容进行交换.请用堆栈作为两寄存器交换内容的中间存储单元,用DEBUG调试程序进行汇编与调试.程序:MOV AX,3000MOV BX,5000MOV SP,2000PUSH AXPUSH BXPOP AXPOP BXHLT2.设DS=当前段地址,BX=0300H,SI=0002H请用DEBUG的命令将存储器偏移地址300H~304H连续单元顺序装入OAH,OBH,OCH,ODH,OEH.在DEBUG状态下送入下面程序,并用单步执行的方法,分析每条指令源地址的形成过程?当数据传送完毕时,AX中的内容是什么?-E 300 0A,0B,0C,0D,0E-AMOV BX,0300MOV SI,0002MOV AX,BXMOV AX,0304MOV AX,[0304]MOV AX,[BX]MOV AX,0001[BX]MOV AX,[BX][SI]MOV AX,0001[BX][SI] HLT3.设AX=0002H,编一个程序段将AX的内容乘10,要求用移位的方法完成. 程序:MOV AX,0002MOV BX,AXMOV CL,2SHL AX,CLADD AX,BXMOV CL,1SHL AX,CLHLT实验四加法及判断程序的编写与调试一、实验目的1.熟练掌握编写汇编语言源程序的基本方法和基本框架.2.学会编写顺序结构,分支结构和循环结构的汇编程序3.掌握程序中数据的产生与输入输出的方法.二、实验内容1.用汇编语言编写一个加法程序:1325+9839请用ASCII码的形式将加数与被加数存放在数据区DATA1和DATA2中,并将相加结果显示输出.程序:DATA SEGMENTDATA1 DB '5','2','3','1'DATA2 DB '9','3','8','9'DATA ENDSSTACK SEGMENT PARA STACK 'STACK'DB 200 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXLEA SI,DATA1LEA DI,DATA2MOV CX,4MOV AH,0 NEXT:MOV AL,[SI]ADC AL,[DI]ADC AL,AHMOV AH,0AAAADD AL,30HMOV [DI],ALINC DIINC SILOOP NEXTMOV CX,5ADD AH,30HMOV [DI],AH NEXT1:MOV DL,[DI]MOV AH,02INT 21HDEC DILOOP NEXT1MOV AH,4CHINT 21H CODE ENDSEND START2.假设有一组数据:5,-4,0,3,100,-51,请编写一程序,判断:每个数是否大于0?等于0?还是小于0?并输出其判断结果,即即:1当X>0Y=0当X=0-1 当X<0程序:DATA SEGMENTDATA1 DB 5, -4, 0 ,3,100,-51STRING1 DB'Y=1','$'STRING2 DB'Y=0','$'STRING3 DB'Y=-1','$'DATA ENDSSTACK SEGMENT PARA STACK 'STACK'DB 200 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXLEA SI,DATA1MOV CX,6NEXT: MOV AL,[SI]CMP AL,0JZ NEXT1JNS NEXT2JS NEXT3NEXT1: MOV DX,OFFSET STRING2MOV AH,09HINT 21HJMP NEXT4NEXT2: MOV DX,OFFSET STRING1MOV AH,09HINT 21HJMP NEXT4NEXT3: MOV DX,OFFSET STRING3MOV AH,09HINT 21HNEXT4: INC SILOOP NEXTMOV AH,4CHINT 21HCODE ENDSEND START实验五大小写字母互换程序的编写与调试一、实验目的进一步熟悉汇编语言源程序的编写方法及宏汇编程序的使用方法二、实验内容设内存数据区有大小写混合英文ASCII码字母: ‘AbCdEfGChinaAgriculturalUniversity’。
微机原理与接口技术实验报告二

微机原理与接口技术实验报告(二)1、实验内容一:实验目的:(1) 阅读《实验操作.ppt》, 学习汇编工具的使用(2) 学习附录的程序代码, 理解并输入、编译和查错3) 学习利用编译错误信息进行附录的程序修改;(程序包含一个语法错误和一个逻辑错误)4)学习程序流程控制: (条件跳转指令ja jb (call指令, 观察程序执行时堆栈的变化(学会用debug –g命令设置断点);5 )学习程序中有限的寄存器的使用。
2.实验内容:(1)打开masm for windows软件, 在其中输入实验要求附给的程序, 保存后运行, 程序报错:(2)经分析发现, “noneeded”没有定义, 改为“notneeded”后正常运行(3)运行过程中发现当字母或数字个数达到两位数时, 统计结果的各位与十位对调了。
如下图, 字母数应为13, 但显示为31(4)经检查, 发现第80行程序有误, inc指令应改为dec指令。
运行后程序正常, 调试完毕。
如下图程序框图如下:实验内容二:1.实验目的及内容:编写完整程序, 实现功能:统计以下字符串STR中空格的数目, 结果保存在COUNT中, 并把个数在屏幕上显示出来。
STR DB ' AB CDE FG H I J K L MNOPQ RST UV W XYZ 12 34 56 78 9'L EQU $-STRCOUNT DB ?(字符串STR可以从这里直接拷贝到程序中)实验结果:程序如下:dispmsg macro messgemov ah,9lea dx,messgeint 21hendmDATA segmenttishi db 0dh,0ah,'the original string is:' string db ' AB CDE FG H I J K L MNOPQ RST UV W XYZ 12 34 56 78 9' STRINGLEN= $-stringnewline db 0dh,0ahNspace db 0dH,0aH,'Number of char space is:',?,?Nsp db ?,'$'DATA endsSTACK segment stack 'stack'sta db 100 dup(?)stack endsCODE segmentASSUME CS:CODE,DS:DATA,SS:STACK START:MOV AX,seg DATAMOV DS,AXxor cx,cxxor dl,dlmov cl,stringlenlea bx,stringcnt:mov al,[bx]cmp al,' 'jz yesspinc blloop cnt jmp shijinzhiyessp:inc dlinc blloop cntjmp shijinzhishijinzhi:lea bx,Nspmov ah,02hint 21hcall char2asc dispmsg tishiMOV AH,4CHINT 21Hchar2asc procmov dl,10 next: xor ah,ahdiv dladd ah,'0'mov [bx],ahdec bxor al,aljnz nextretchar2asc endpcode endsend startEND START运行结果如下:程序流程图如下:实验中遇到的问题及解决方法:1.汇编语言中寄存器有限, 在使用时注意是否保存寄存器中原有的值, 防止在使用寄存器时将原值改变。
微机原理与接口技术实验报告

微机原理与接口技术实验报告实验一,微机原理实验。
1. 实验目的。
本实验旨在通过对微机原理的实验,加深学生对微机原理相关知识的理解,提高学生的动手能力和实验技能。
2. 实验内容。
本实验主要包括微机原理的基本知识、微处理器的结构和功能、微机系统的总线结构、存储器与I/O接口。
3. 实验步骤。
(1)了解微机原理的基本知识,包括微处理器的分类、功能和工作原理。
(2)学习微机系统的总线结构,掌握总线的分类、功能和工作原理。
(3)了解存储器与I/O接口的基本概念和工作原理。
(4)进行实际操作,通过实验板进行微机原理实验,加深对微机原理知识的理解。
4. 实验结果。
通过本次实验,我深刻理解了微机原理的基本知识,掌握了微处理器的结构和功能,了解了微机系统的总线结构,以及存储器与I/O接口的工作原理。
通过实际操作,我对微机原理有了更深入的认识,提高了自己的动手能力和实验技能。
实验二,接口技术实验。
1. 实验目的。
本实验旨在通过对接口技术的实验,加深学生对接口技术相关知识的理解,提高学生的动手能力和实验技能。
2. 实验内容。
本实验主要包括接口技术的基本知识、接口电路的设计与调试、接口技术在实际应用中的作用。
3. 实验步骤。
(1)了解接口技术的基本知识,包括接口的分类、功能和设计原则。
(2)学习接口电路的设计与调试,掌握接口电路设计的基本方法和调试技巧。
(3)了解接口技术在实际应用中的作用,包括各种接口的应用场景和实际案例。
(4)进行实际操作,通过实验板进行接口技术实验,加深对接口技术知识的理解。
4. 实验结果。
通过本次实验,我深刻理解了接口技术的基本知识,掌握了接口电路的设计与调试方法,了解了接口技术在实际应用中的作用。
通过实际操作,我对接口技术有了更深入的认识,提高了自己的动手能力和实验技能。
总结。
通过微机原理与接口技术的实验,我对微机原理和接口技术有了更深入的理解,提高了自己的动手能力和实验技能。
希望通过今后的学习和实践,能够更加深入地掌握微机原理与接口技术的知识,为将来的工作和研究打下坚实的基础。
《微机原理及接口技术》实验报告3

3、掌握8259中断控制器的应用编程。
实验内容:
利用8259实现对外部中断的响应和处理,要求程序对每次中断进行计数,并将计数结果送数码显示。
实验要求:
本实验属于验证型实验,要求学生完成以下内容:
1、学习并掌握硬件连接步骤与方法后,连接好硬件线路。
2、阅读并理解实验程序H8259.ASM后,运行实验程序。
3、观察实验结果,理解并分析实验原理和方法。
4、完成实验报告。
一、实验原理与方法(分析综述相关主要技术的原理与方法)
二、实验硬件连接(给出实验硬件线路图及连接说明)
三、实验程序流程图
四、实验代码分析(按要求给出程序代码并对每一条指令进行注释)
1、8259初始化的程序代码
2、IR3中断服务程序的代码
五、学生自我小结(所遇问题和个人体会等方面总结)
《微机原理与接口技术》实ຫໍສະໝຸດ 报告3学号:姓名:班级:成绩:
实验名称:使用8259的单级中断控制器
实验类型:验证型实验
实验地点:信息楼418微机原理实验室
所使用的工具实验设备及器材配置:DJ86PCI实验箱、配套微机、DJ-8086系列实验指导书
实验目的:
1、掌握8259中断控制器与微机接口的硬件设计原理和要求。
南昌航空大学实验报告汇编原理

南昌航空大学实验报告课程名称:微机原理实验名称:中断控制器8259A应用班级:100451 姓名:张冲学号:10045127教师评定:签名:一、实验目的:1、掌握中断控制器8259A与微机接口的原理和方法。
2、掌握中断控制器8259A的应用编程。
二、实验内容:本系统中已设计有一片8259A中断控制芯片,工作于主片方式,8个中断请求输入端IR0~IR7对应的中断型号为8~F。
8259A和8088系统总线直接相连,8259A上连有一系统地址线A0,故8259A有两个端口地址,本系统中为60H、61H.60H用来写ICW1,61H用来写ICW2、ICW3、ICW4,初始化命令字写好后,再写操作命令字。
OCW2、OCW3用口地址60H,OCW1用口地址61H。
使用了3号中断源,IR3插孔和SP插孔相连,中断方式为边沿触发方式,每按一次AN按钮产生一次中断信号,向8259A发出中断请求信号。
如果中断源电平信号不符合规定要求则自动转到7号中断,显示"Err".CPU响应中断后,在中断服务中,对中断次数进行计数并显示,计满5次结束,显示器显示"Good".2、实验线路连接(1)8259模块上的INT连8088的INTR.(2)8259模块上的INTA连8088的INTA。
(3)MP区SP插孔和8259的3号中断IR3插孔相连,SP端初始为低电平。
(4)8259的D0~D7连到BUS2区的XD0~XD7.(5)8259模块上的CS端接Y6。
(6)8259模块上的A0连到BUS区的XA0。
(7)8259模块上的RD、WR信号线分别连到BUS区的XRD、XWR上。
三、实验步骤:运行实验程序:单机时,实验程序起始地址为F000:91A0。
在系统显示监控提示符“P."时:输入F000按F1键输入91A0按EXEC键在系统上显示"8259-1".按AN按钮,按满5次显示"Good".四、实验参考程序:CODE SEGMENT MOV AL,08HASSUME CS:CODE MOV DX,INTPORT2INTPORT1 EQU 0060H OUT DX,ALINTPORT2 EQU 0061H MOV AL,09HINTQ3 EQU INTREEUP3 OUT DX,ALINTQ7 EQU INTREEUP7 MOV AL,0F7HORG 11A0H OUT DX,ALSTART:CLD MOV BYTE PTR[0701H],01HCALL WBUF1 TIME=1WRITE INTRRUPT STIMOV AL,13H WATING:CALL DISPMOV DX,INTPORT1 DISP 8259-1OUT DX,AL JMP WA TINGMOV ES,AX WRINTVER:MOV AX,0HMOV DI,002CH OUT DX,ALLEA AX,INTQ3 STISTOSW IRETMOV AX,0000H INTREEUP7:CLISTOSW MOV AL,20HMOV AX,INTQ7 MOV DX,INTPORT1STOSW OUT DX,ALRET MOV DS:[077AH],1C1CHINTREEUP3:CLI MOV DS:[077CH],101BHMOV AL,DS:[0701H] MOV DS:[077EH],1010HCALL CONVERS INTRE3:CALL DISPMOV BX,077BH JMP INTRE3MOV AL,10H DISP:MOV DX,077FHMOV CX,05H MOV AH,20HINTRE0:MOV BYTE PTR[BX],AL DISP0:MOV CX,00FFHINC BX MOV BX,DXLOOP INTRE0 MOV BL,DS:[BX]MOV AL,20H MOV BH,0HMOV DX,INTPORT1 PUSH DXOUT DX,AL MOV DX,0FF22HADD BYTE PTR:[0701H],01H MOV AL,CS:[BX+127BH]CMP BYTE PTR:[0701H],06H OUT DX,ALJNA INTRE2 MOV DX,0FF21HMOV DS:[077AH],191AH MOV AL,AHMOV DS:[077CH],1819H OUT DX,ALMOV DS:[077EH],1010H DISP1:LOOP DISP1INTRE1:CALL DISP POP DXJMP INTRE1 DEC DXCONVERS:ADD AL,OFH SHR AH,01HMOV BX,077AH JNZ DISP0MOV DS:[BX],AL MOV DX,0FF22HINC BX MOV AL,0FFHRET OUT DX,ALINTRE2:MOV AL,20H RETMOV DX,INTPORT1 DA TA1:DBDB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H 0FFH,0CH,0DEH,0C7H,8CH,0F3H,0BFH DBDB 90H,0A3,0A1H,86H,8FH 80H,90H,88H,83H,0C6H,0A1H,86H,8EH WBUF1:MOV BX,0 MOV WORD PTR:[BX+077AH],0509H MOV WORD PTR:[BX+077AH],1701H ADD BX,2ADD BX,2 MOV WORD PTR :[BX+077AH],0802HRETCODE ENDSEND START五、实验体会:本次实验中只出来了"8259-1"结果,没有出现"Good"结果。
大学微机原理实验报告(3篇)

第1篇实验名称:微机原理实验实验日期:2023年10月25日实验地点:计算机实验室实验教师:[教师姓名]实验学生:[学生姓名]班级:[班级名称]一、实验目的1. 理解微机原理的基本概念和组成结构。
2. 掌握微机硬件的基本操作和调试方法。
3. 熟悉汇编语言编程和程序调试技巧。
4. 通过实验加深对微机原理课程的理解,提高动手能力。
二、实验内容本次实验主要分为以下几个部分:1. 微机硬件系统结构认识:了解微机硬件系统的组成,包括CPU、内存、I/O接口等,熟悉各部件的功能和相互关系。
2. 汇编语言编程:学习汇编语言的基本语法和指令系统,编写简单的汇编程序,实现特定功能。
3. 程序调试:使用调试工具(如DEBUG)对汇编程序进行调试,查找并修正错误。
4. 微机原理实验:完成以下实验任务:1. 编写程序实现两个多位十进制数的相加。
2. 编写程序实现字符串比较功能。
3. 编写程序实现乘除法运算。
三、实验步骤1. 微机硬件系统结构认识:- 观察实验室中的微机硬件系统,了解各部件的连接方式和功能。
- 使用示波器检测实验装置的信号是否正常。
2. 汇编语言编程:- 学习汇编语言的基本语法和指令系统。
- 编写程序实现两个多位十进制数的相加,程序如下:```;加数DATA1 DB 3,4,5,6,7;被加数DATA2 DB 2,3,4,5,6;结果SUM DB 5 DUP(0);程序开始MOV CX, 5 ;循环次数MOV AL, 0 ;结果初始化为0MOV SI, OFFSET DATA1 ;加数地址MOV DI, OFFSET DATA2 ;被加数地址ADD_LOOP:ADD AL, [SI] ;加数加到AL寄存器ADC AL, [DI] ;进位加到AL寄存器MOV [DI], AL ;结果存回DI寄存器ADD SI, 1 ;加数地址加1ADD DI, 1 ;被加数地址加1LOOP ADD_LOOP ;循环;程序结束```- 编写程序实现字符串比较功能,程序如下:```;字符串1STRING1 DB 'Hello';字符串2STRING2 DB 'World';比较结果RESULT DB 0;程序开始MOV SI, OFFSET STRING1 ;字符串1地址MOV DI, OFFSET STRING2 ;字符串2地址CMP_LOOP:MOV AL, [SI] ;读取字符串1的当前字符CMP AL, [DI] ;与字符串2的当前字符比较 JNE NOT_EQUAL ;不相等则跳转到NOT_EQUAL INC SI ;字符串1地址加1INC DI ;字符串2地址加1LOOP CMP_LOOP ;循环MOV RESULT, 1 ;相等则将结果设置为1JMP END ;跳转到ENDNOT_EQUAL:MOV RESULT, 0 ;不相等则将结果设置为0END:;程序结束```- 编写程序实现乘除法运算,程序如下:```;被乘数DATA1 DB 10;乘数DATA2 DB 5;结果PRODUCT DB 0;程序开始MOV AL, [DATA1] ;被乘数加载到AL寄存器MUL [DATA2] ;乘数乘到AL寄存器MOV [PRODUCT], AL ;结果存回PRODUCT;程序结束```3. 程序调试:- 使用DEBUG工具对汇编程序进行调试,查找并修正错误。
微机原理及接口技术实验报告

微机原理及接口技术实验报告一、实验目的本实验旨在通过掌握微机原理和接口技术的实验操作,实践相关理论知识,加深对微机原理和接口技术的理解。
二、实验设备和材料1.计算机主机2.操作系统3.接口卡4.编程软件三、实验原理微机原理是指通过学习微机的结构、功能和工作原理,从硬件层面掌握微机的基本知识。
接口技术是指连接不同设备之间的通信和数据交换技术,通过学习接口技术可以实现设备的互联和数据的传输。
四、实验步骤1.将接口卡插入计算机主机的扩展槽中。
2.启动计算机,并加载操作系统。
3.打开编程软件,编写实验程序。
4.将编写好的程序烧录到接口卡中。
5.连接外部设备和接口卡,并确认连接正确无误。
6.运行程序,并观察外部设备和接口卡之间的数据交互情况。
7.分析实验结果,并记录实验数据。
8.关闭程序和计算机。
五、实验结果及分析通过实验我们成功连接了外部设备和接口卡,并实现了数据的传输和交互。
在程序运行过程中,我们观察到外部设备正常工作,并且与接口卡之间的通信稳定可靠。
根据实验数据分析,我们可以得出接口卡的性能良好,并且能够满足实际应用需求。
六、实验心得通过这次实验,我对微机原理和接口技术有了更深入的理解。
实践操作让我加深了对硬件设备和软件编程的认识,掌握了实现设备互联和数据传输的基本方法。
在实验过程中,我遇到了一些问题,如接口卡的插入和连接问题,但通过查阅资料和请教老师同学,最终成功解决了这些问题。
我发现实验不仅帮助我巩固了理论知识,也提高了我的实践能力和解决问题的能力。
总结起来,微机原理和接口技术是计算机相关专业的基础课程之一,通过实验的方式学习可以更好地将理论知识与实际应用相结合。
我相信通过不断的实践和学习,我会在微机原理和接口技术方面有进一步的提高和发展。
微机原理与接口技术实验报告

微机原理与接口技术实验报告实验目的,通过本次实验,掌握微机原理与接口技术的基本知识,了解并掌握微机接口技术的应用方法。
实验仪器与设备,微机实验箱、接口卡、示波器、电源等。
实验原理,微机接口技术是指微机与外部设备进行数据交换的技术。
它是微机与外部设备之间的桥梁,通过接口技术可以实现微机与外部设备之间的数据传输和通信。
实验内容与步骤:1. 实验一,串行通信接口实验。
a. 将串行通信接口卡插入微机实验箱的接口槽中;b. 连接示波器和外部设备,并进行数据传输测试;c. 观察并记录数据传输的波形和数据传输情况。
2. 实验二,并行通信接口实验。
a. 将并行通信接口卡插入微机实验箱的接口槽中;b. 连接外部设备,并进行数据传输测试;c. 观察并记录数据传输的情况。
3. 实验三,AD转换接口实验。
a. 将AD转换接口卡插入微机实验箱的接口槽中;b. 连接外部模拟信号源,并进行模拟信号转换测试;c. 观察并记录模拟信号转换的波形和数据传输情况。
实验结果与分析:1. 串行通信接口实验结果分析:通过实验发现,在串行通信接口实验中,数据传输的波形稳定,数据传输速度较快,适用于对数据传输速度要求较高的应用场景。
2. 并行通信接口实验结果分析:在并行通信接口实验中,数据传输稳定,但数据传输速度相对较慢,适用于对数据传输速度要求不高的应用场景。
3. AD转换接口实验结果分析:经过实验发现,AD转换接口可以将模拟信号转换为数字信号,并且转换精度较高,适用于对信号转换精度要求较高的应用场景。
实验总结与展望:通过本次实验,我们深入了解了微机原理与接口技术的基本知识,掌握了串行通信接口、并行通信接口和AD转换接口的应用方法。
同时,也发现不同接口技术在数据传输速度、稳定性和精度方面各有优劣,需要根据实际应用场景进行选择。
未来,我们将继续深入学习和探索微机接口技术的应用,为实际工程项目提供更好的技术支持。
结语:通过本次实验,我们对微机原理与接口技术有了更深入的了解,实验结果也验证了接口技术在数据传输和信号转换方面的重要作用。
微机原理与接口技术实验报告.

实验一、认识Tddebug集成操作软件一.实验内容(一)实验题目:数据传送实验1. 编程将数据段中的一个字符串传送到附加段中,并输出附加段中的目标字符串到屏幕上。
2. 修改此程序,采用字符串传送指令完成。
(二)实验目的:通过对该程序进行调试,查看程序段、数据段、附加段装入内存后的分配情况。
单步执行数据传送指令后,观察各个寄存器及数据区的内容。
(三)实验步骤:1. 运行Tddebug软件,选择Edit菜单编写实验程序2.使用Compile菜单中的Compile和Link对实验程序进行汇编、连接,生成执行文件。
3.使用Rmrun菜单中的Run运行程序,观察运行结果。
4.使用Rmrun菜单中的Debug调试程序,查看程序段、数据段、附加段装入内存后的分配情况。
单步执行数据传送指令后,观察各寄存器及数据区的内容。
过程如下:1)按F7单步执行,在代码区中有一个三角,表示正在执行的指令。
每一条指令的执行一定会使目标寄存器和状态寄存器发生变化,从相关窗口看结果。
2)检查内存数据区的内容,关键是找出用户程序的数据段和附加段:●方法1:在CPU窗口按Tab键使内存数据显示区成为活动区,按Ctrl+G键,输入:“DS或ES寄存器的值:偏移地址”,即可显示用户指定的数据区●方法2:选择菜单View| Dump,弹出内存数据显示窗口。
3) 查看执行结果:按Alt+F5,切换到用户窗口。
5.更改数据区中的数据,考察、调试程序的正确性。
二.分析设计思想,绘制实验原理图、流程图。
汇编语言程序的开发过程如图1.1所示,这个过程主要有编辑、编译、链接几个步骤构成。
三.程序清单及相关注释。
DDATA SEGMENT ;定义源数据段MSR DB "HELLO,WORLD!$"LEN EQU $- MSRDDATA ENDSEXDA SEGMENT ;定义附加数据段MSD D B LEN DUP(?)EXDA ENDSMYSTACK SEGMENT ;定义堆栈段STACK DW 20 DUP(?)MYSTACK ENDSCODE SEGMENT ;定义代码段ASSUME CS:CODE,DS:DDATA,ES:EXDASTART: MOV AX,DDATAMOV DS,AX ;装载数据段寄存器MOV AX,EXDAMOV ES,AX ;装载附加数据段寄存器MOV SI,OFFSET MSRMOV DI,OFFSET MSDMOV CX,LENMOV BX,0NEXT: MOV AL,MSR[BX] ;开始传输数据MOV ES:MSD[BX],ALINC BXLOOP NEXTPUSH ESPOP DS ;将附加段寄存器指向的段值赋给数据段寄存器MOV DX,OFFSET MSDMOV AH,9INT 21H ;显示字符串MOV AH,4CHINT 21H ;返回DOS状态CODE ENDSEND START四.实验结果并分析。
南昌航空大学_微机原理与接口技术实验报告(8次)

南昌航空大学信息工程学院实验报告课程名称:微机原理与接口技术 _ 学号: _____________ _ 姓名:__________ ____ 指导教师:_周卫民_________________ 成绩:________________________南昌航空大学实验报告课程名称:微机原理实验名称:调试程序DEBUG的使用班级:学生姓名:学号:教师评定:签名:一、实验要求:调试程序DEBUG的使用。
二、实验内容:DEBUG.EXE是DOS提供的用于调试可执行程序的工具软件,是汇编语言程序设计中常用的调试工具。
在DEBUG环境下,不但可以调试经汇编、连接后生成的可执行程序,也可以编写简单的程序。
①在DOS提示符下键入:DEBUG ↙(表示回车)Debug执行,屏幕显示提示符“-”,说明计算机当前处于DEBUG的管理之下,可接受、并执行DEBUG命令。
②在DOS提示符下键入:DEBUG [路径\]文件名↙DEBUG执行,并将指定文件装入内存,供调试。
如不指定被调试程序,DEBUG设置所有段寄存器的值相同,并指向最低的、可用的段地址;SP指向本段的尾部;IP指向本段的0100H单元;其它通用寄存器和所有状态标志清0。
如带入的被调试程序扩展名不是.EXE,则BX、CX包含被调试文件长度(字节数,BX为高位),其他同上。
(带入.COM程序同此)如带入的被调试程序扩展名是.EXE,则需要重新定位。
DS=ES指向当前最低的、可用的段地址(PSP的首字节);CS:IP和SS:SP根据被调试程序确定,分别指向代码段和堆栈段;BX.CX为文件长度,其它通用寄存器和状态标志清0。
演示:DEBUG的两种启动方法1.命令格式命令字母[参数]字母不分大小写;只使用16进制数,不加H;分割符只在两个数值之间是必须的,命令和参数之间可有可无;键入回车键执行命令,Ctrl+Break或Ctrl+C中止命令的执行;如命令不符合DEBUG的规则,则提示“error”并使用“^”指示错误位置。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DF:DN/UP减/增
IF:EI/DI允许/禁止
SF:NG/PL负/正
ZF:ZR/NZ零/非零
AF:AC/NA有/无
PF:PE/PO偶/奇
CF:CY/NC有/无
9.单步执行命令T
格式:
T地址
T地址条数
功能:单步执行指令
10.反汇编命令U
格式:
U地址
U地址范围
功能:将指定内存的内容显示成汇编语言形式。
运行命令的格式如下:
[盘符][路径]程序基本名[.EXE]
例如:
P:\(language\MASM50) AA
调试运行的格式如下:
[盘符][路径]DEBUG[盘符][路径]程序基本名.EXE
如执行DEBUG AA.EXE
3.5其他用到的DOS命令
DIR [盘符][路径] [文件名]
MD [盘符][路径]新目录名
MOV DX,IOCONPT;8255控制口
MOV AL,80H
OUT DX,AL;写命令字, PA,PB,PC输出
MOV DX,IOBPT;
MOV AL,DS:[0601H]
OR AL,0F0H
OUT DX,AL
MOV DX,IOCPT
MOV AL,0F0H
OUT DX,AL;四路口红灯全亮
CALL DELAY1;延时
南昌航空大学实验报告
课程名称:微机原理实验名称:完整汇编源程序的上机过程
班级:学号:姓名:
教师评定:签名:
一、实验要求:
学会完整汇编源程序的上机过程和常用的DOS命令。
二、实验内容:
编写一段汇编源程序,在MASM中运行。同时学会对MASM的灵活运用。
三、实验步骤:
3.1编辑录入源程序
EDIT [[盘符][路径]程序基本名。ASM]
二、实验内容
1.编写一个完整的一位数加法运算程序,并生成EXE文件;
2.利用DEBUG调试EXE文件的执行过程,并与源程序进行对比。
三、DEBUG常用命令
1.汇编命令A
格式:
A段寄存器名:偏移地址
A段地址:偏移地址
A偏移地址
A
功能:用该命令可以将汇编语言程序直接写入内存。
2.显示内存命令D
格式:
D段寄存器名:偏移地址
Copyright (C) Microsoft Crop 1983-1988. All rights reserved.
Run Flie [AA.EXE]
List File [NUL.MAP]
Libraries[.LIB]
LINK:warning L4021:no stack segment;
3.4运行
CD [盘符][路径]
四、实验体会
通过本次实验,理解了用汇编语言编写的指令在MASM中的运行情况。对它的步骤有了一定的了解以及使用。同时也对汇编语言有了更加深入的了解。
南昌航空大学实验报告
课程名称:微机原理实验名称:两个多位十进制数相加
班级:学号:姓名:
教师评定:签名:
四、实验目的:
熟悉对DVCC实验系统的使用。
五、实验内容:
本程序将两个多位十进制数相加,其中加数与被加数均以ASCII码形式存放在以DATA1和DATA2为首的5个内存单元中,相加结果被送回DATA1处。程序中先要把加数与被加数由十进制ASCII码转化为十六进制的数字串,然后将他们进行带进位相加并做AAA调整,然后将结果保存。
六、程序清单:
定义堆栈段:
49510+411821 Bytes symbol space free
1 Warning Errors
2 Severe Errors
3.3连接
连接命令格式如下:
LINK [[盘符][路径]程序基本名[.OBJ]]
例如:
D:\language\MASM50>link aa
连接显示信息如下:
Microsoft (R) Overlay Linker Version 3.64
11.命名命令N
格式:
N路径和文件名
功能:对读命令或写命令要操作的文件进行指定。
12.读盘命令L
格式:
L地址驱动器号起始扇区号扇区数
L地址
L
功能:将N命令指定的文件或磁盘扇区内容读到内存。
13.写盘命令W
格式:
W地址驱动器号起始扇区号扇区数
W地址
W
功能:将内存内容写到N命令指定的文件或磁盘扇区中。
14.输入命令I
IOAPTEQU 0FF28H;PA口
IOBPTEQU 0FF29H;PB口
IOCPTEQU 0FF2AH;PC口
ORG 11e0H
START:MOV AL,82H;PB输入,PA,PC输出
MOV DX,IOCONPT
OUT DX,AL;写命令字
MOV DX,IOBPT;读PB口
IN AL,DX
MOV BYTE PTR DS:[0601H],AL;保存PB口数据
Copyright (C) Microsoft Corp 1981,1988,All rights reserved.
Object filename [aa.OBJ]:
Sourse listing[NUL.LST]:
Cross-reference [NUL.CRF]:
49576+420869 Bytes symbol space free
6.比较命令C
格式:
C源地址范围目标起始地址
功能:比较两个内存区域的内容是否相同,相同时不显示任何信息,不相同时显示不相同的内容。
7.搜索指定内容命令S
格式:
S地址范围内容表
功能:在指定地址范围内搜索内容表中的内容。
8.查看修改寄存器内容命令R
格式:
R
R寄存器名
功能:查看或修改寄存器内容
关于标志位:
南昌航空大学实验报告
课程名称:微机原理与接口技术
班 级:
学 号:
姓 名:
指导教师:
成 绩:_______________________
2013年12月2号
南昌航空大学实验报告
课程名称:微机原理实验名称:调试程序DEBUG的使用
班级:学号:姓名:
教师评定:签名:
一、实验目的
掌握DEBUG调试程序的常用命令,熟悉用DEBUG调试程序对EXE文件的调试过程,并具有一定的分析运行结果的能力。
格式:
P
功能:在下一条指令执行之前停止
19.退出命令Q
格式:
Q
功能:退出DEBUG调试环境。
三、实验体会:
通过本次实验初步了解了DEBUG命令及其使用方法,并且在老师的指导下编写了两个简单的输出字符小程序,第一次感受到了汇编语言的魅力和实际的应用。同时也发现指令中的值须全部转化为16进制的值,那样才能正常的运行。同时也加深了自己对指令的理解。
STACK_SEG SEGMENT PARA STACK
'STACK' DB 100 DUP(?)
STACK_SEG ENDS
;定义数据段
DATA_SEG SEGMENT PARA PUBLIC 'DATA'
;定义被加数与加数(DATA1\DATA2)的存放(低位在前):
DATA1 DB '4','A','5','9','C'
MOV AX,0
PUSH AX
MOV AX,DATA_SEG
MOV DS,AX
MOV SI,PFFEST DATA1
MOV DI,OFFEST DATA2
CALL ADDA
RET
MAIN ENDP
ADDA PROC NEAR
MOV DX,SI
MOV BP,DI
MOV BX,05H
AD1:SUB BYTE PTR[SI+BX-1]
0 Warning Errors
0 Severe Errors
若有错时则会显示出相应错误信息,如下:
AA.ASM (6): Warning A4001:Extra characters on line
AA.ASM (7):error A2062:Missing or unreachable CS
AA.ASM (8):error A2009:Symbol not defined: DI
⑶程序中设定好8255A的工作模式及三个端口均工作在方式0,并处于输出状态。
⑷各发光二极管共阳极,使其点亮应使8255A相应端口的位清0。
五、实验程序框图
六、实验步骤
⒈在系统显示监控提示符“P.”时,按SCAL键。
⒉按图6-4连好实验线路
8255A:PC0->L3,PC1->L6,PC2->L9,PC3->L12,PC4->L2,PC5->L5,PC6->L8,PC7->L11;
AD3:ADD BYTE PTR[SI+BX-1],30H
ADD BYTE PTR[DI+
ADDA ENDP
CODE_SEG ENDS
END START
七、实验体会:
通过本次实验学会了对DVCC实验系统的使用。同时编写了一个代码,在DVCC实验系统上编译,发现如果编译成功的话,出现的结果会是error not included.一旦出现错误就需要根据所在的行进行结果。至于实验的结果由于还没有连接硬件和以上程序没有显示的代码。所以在masm下演示出结果。
格式:
I端口地址
功能:将端口的内容传送到累加器AL中。
15.输出命令O