微机原理实验指导书09级

合集下载

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

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

微型计算机原理实验指导书河北大学电子信息工程学院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所示。

微机原理实验指导书定稿

微机原理实验指导书定稿

实验一二进制码转换为BCD码一、实验目的1、掌握数码转换基本方法,加深对数码的理解。

2、用于十进制BCD码显示。

二、实验内容将AX的内容转换为十进制BCD码。

三、实验程序框图四、实验步骤联机模式:(1)在PC机和实验系统联机状态下,运行该实验程序,可用鼠标左键单击菜单栏“文件”或工具栏“打开图标”,弹出“打开文件”的对话框,然后打开8KASM文件夹,点击S2.ASM文件,单击“确定”即可装入源文件,再单击工具栏中编译,即可完成源文件自动编译、装载目标代码功能,再单击“调试”中“连续运行”或工具图标运行,即开始运行程序。

⑵复位RST键,由于AX中给定数为0FFFF,查看BCD码结果保留在4100H~4104H单元中,故其值应为06、05、05、03、05。

脱机模式:⑴在P.态,按SCAL键,输入2CE0,按EXEC键。

⑵复位RST键,由于AX中给定数为0FFFF,查看BCD码结果保留在4100H~4104H 单元中,故其值应为06、05、05、03、05。

五、实验程序清单;将AX拆为5个BCD码,并存入RESULT开始的5个单元DA TA SEGMENT A T 0ORG 4000HRESULT DB 5 DUP(?)DA TA ENDSCODE SEGMENTASSUME CS:CODE, DS:DATA ORG 2CE0HSTART PROC NEARMOV AX, DATAMOV DS, AXMOV DX,0000HMOV AX, 65535MOV CX, 10000DIV CXMOV RESULT, AL ;除以10000, 得WAN位数MOV AX,DXMOV DX,0000H MOV CX, 1000DIV CXMOV RESULT+1, AL ; 除以1000, 得QIAN位数MOV AX,DXMOV DX,0000HMOV CX, 100DIV CXMOV RESULT+2, AL ; 除以100, 得BAI位数MOV AX,DXMOV DX,0000HMOV CX, 10DIV CXMOV RESULT+3, AL ; 除以10, 得SHI位数MOV RESULT+4, DL ; 得GE位数JMP $CODE ENDSEND START实验二 BCD 码转换为二进制码一、实验目的1、掌握BCD 码到二进制码的转换方法。

电气2009微机原理实验指导书

电气2009微机原理实验指导书

-E地址 内容表
例如:-E 2000:0100 F3 “XYZ” 8D
其中F3,“X”“Y”“Z”和8D各占一个字节,用这五个字节代替原内存
单元2000:0100到0104的内容,“X”“Y”“Z”将分别按它们的ASCII码值
代入。
逐个单元相继地修改:
-E地址
例如:-E 100
18E4:0100 89.78
1.在数据段中定义以上的字符串; 2.利用DOS功能调用输出字符串 四.实验报告 编写实验内容1的实验程序并记录实验结果。
实验二 分支程序的设计
一、实验目的 1.熟练掌握编写汇编语言源程序的基本方法和基本框架; 2.学会编写分支程序设计的方法;
3.学会使用DOS中断方式输出字符串;
二、实验内容 1.假设有一组数据:5,-4,0,3,100,-51,请编一程序,判
3.熟悉汇编过程中一些常见出错信息。 二.实验内容
1.定义字符串‘Welcome To our SCHOOL’,将其中的英文的大写 字母转换为小写字母,并统计其中转换了的字母个数。
2.将转换后的字符串在屏幕上显示出来,并分行显示字母的个数。 三.实验提示
1.在数据段中定义以上字符串; 2.根据大小写字母之间的ASCII码差值,进行转换; 3.利用DOS功能调用输出字符串和字母个数; 四.实验报告: 1.画出程序流程图, 2.写出实验内容正确的源程序清单和执行结果。
四、实验报告要求 写出实验内容正确的源程序清单和执行结果。
实验五 混合程序的设计
一、实验目的 1.掌握多种程序设计的方法;
2.熟悉输入输出的调用过程; 3.灵活的实现方法和数据处理技术。
二、实验内容 在屏幕上输入一个小于65535的数值,按“+”后,再输入一个数

《微机原理与接口技术》实验指导书

《微机原理与接口技术》实验指导书

微机原理与接口技术实验指导书实验一:微处理器概述及数据传输实验一、实验目的•了解微处理器的基本概念和工作原理;•学习数据传输的基本知识;•掌握使用微处理器进行数据传输的方法。

二、实验器材•1个微处理器开发板;•1个串行通信模块;•相应的连接线。

三、实验内容在该实验中,你将学习如何使用微处理器进行数据传输,具体实验步骤如下:1.将开发板和串行通信模块连接起来;2.将数据发送器连接到串行通信模块的发送端口,将数据接收器连接到串行通信模块的接收端口;3.通过开发板上的开关设置要发送的数据;4.通过串行通信模块将数据发送到计算机;5.在计算机上使用相应的软件接收数据,并验证接收到的数据是否正确。

四、实验步骤1.将开发板和串行通信模块连接起来,确保连接正确并稳定;2.将数据发送器插入串行通信模块的发送端口,将数据接收器插入串行通信模块的接收端口;3.在开发板上的开关上设置要发送的数据;4.打开计算机上的串行通信软件,配置正确的串口号和波特率;5.点击软件的接收按钮,准备接收数据;6.在开发板上的开关上切换到发送模式,并观察串行通信模块的指示灯是否正常闪烁;7.在串行通信软件上观察接收到的数据是否与设置的数据一致;8.如果数据传输正常,则实验完成。

五、实验注意事项1.连接线务必稳固连接,确保数据传输正常;2.阅读并理解实验器材的使用说明书;3.注意保持实验环境的整洁,避免影响实验结果;4.在进行数据传输时,确保计算机已正确安装了相应的驱动程序。

六、实验总结通过这次实验,我们初步了解了微处理器的基本概念和工作原理,学习了数据传输的基本知识,并掌握了使用微处理器进行数据传输的方法。

我们在实验中成功地连接了开发板和串行通信模块,并成功地进行了数据传输。

通过实验,我们发现数据传输过程中需要注意连接线的稳固连接,以及计算机是否安装了相应的驱动程序。

实验的结果验证了我们的操作方法的正确性,同时也为后续实验奠定了基础。

注意:本指导书旨在引导实验过程,实验过程中如有任何危险情况,请立即停止实验并寻求实验室管理员的帮助。

《微机原理与接口技术》实验指导书2005-9

《微机原理与接口技术》实验指导书2005-9

《微机原理与接口技术》实验指导书2005-9微机原理与接口技术实验指导书方义秋编著计算机综合实验中心2005年8月实验要求 (3)第一部分微机原理及汇编程序设计 (4)实验一、认识Tddebug集成操作软件 (4)实验二、I/O程序设计 (9)实验三、分支程序设计 (11)实验四、循环程序设计 (13)实验五、运算类程序设计 (15)实验六、代码转换程序设计 (19)实验七、宏指令应用 (24)实验八、字符串处理 (26)实验九、数据表格处理 (28)实验十、子程序及软中断程序设计 (29)第二部分接口部分实验 (33)实验十一、PC机内部8259中断应用 (33)实验十二、PCI总线中断应用 (39)实验十三、8254定时/计数器应用 (45)实验十四、8255并行接口应用 (53)实验十五、交通灯控制 (58)附录一TD-PIT-B实验系统的硬件环境 (60)2预习实验内容1.明确本次实验目的及任务,了解和掌握实验所需的理论知识及相关接口芯片的工作原理。

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

3.对每次实验,选择其中一个项题目自己设计编写程序。

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

2.若为接口电路,请关闭电源搭接线路,检查无误后,再开电源。

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

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

编写实验报告1.实验题目。

2.分析设计思想,绘制实验原理图、流程图。

3.程序清单及相关注释。

4.分析实验结果。

5.说明在实验过程中遇到了哪些问题,是如何处理的。

6.收获体会,不足之处和今后应注意的问题等。

注意事项1.实验以前,应确保PCI总线扩展卡与实验箱间扁平电缆连接的正确性。

2.实验前后应仔细检查实验箱,防止导线、元件等物品落入装置内,导致线路短路、元件损坏。

3.爱护实验设施,插接、拔取排线时,手握白色插头,不得从线中间拉取。

4.实验箱电源关闭后,不能立即重新开启。

微机原理实验指导书(东华,带源程序与流程图)

微机原理实验指导书(东华,带源程序与流程图)

实验一基本程序编程和程序调试一、实验目的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.进入实验室前完成的部分1)认真阅读实验指导书,弄懂实验原理和实验内容。

分析实验内容A程序的结构、实现方法。

2)编写实验所要用到的程序,将其放在U盘上。

3)写出预习报告(其中应有实验内容A、B的程序清单)。

2. 进入实验室后完成的部分1)对实验内容A对其进行汇编、链接获得可执行文件。

运行可执行文件,实现实验内容A的要求。

2)对实验内容B的程序进行调试,修改错误,获得要求的结果。

3)保存调试后的程序。

3.实验结束后的部分对实验结果进行分析、总结,写出实验报告。

实验报告内容及格式1.实验目的2.实验设备3.实验内容只做文字叙述,程序部分放在程序清单中。

4.程序清单实验内容B的完整程序。

如果使用了本实验或前面实验中完全相同的子程序,可不列写,只做注明即可。

实验内容A的程序清单放在预习报告中,不再列写。

5.实验步骤6.实验总结主要包括对实验结果、调试过程、错误及产生的原因的分析,以及本次实验的重要收获等。

此项为实验成绩评定的重要依据。

汇编语言程序的上机过程本章内容在实验一~实验六中使用。

1.实验环境在计算机的C盘(也可以是其他盘符)下,有一个MASM50(也可能是其他文件名)文件夹,在这个文件夹下存放着对汇编语言源程序进行汇编、调试所需要的各种文件。

2.建立源程序可以用你熟悉的文本编辑器,如记事本、写字板等来建立一个源程序文件。

但需要注意以下几点:(1)在“我的电脑\工具\文件夹选项\查看\”中将“隐藏已知文件类型的扩展名”上的“√”去掉。

(2)源程序文件的文件名应该是*.asm,如果不是应进行修改。

(3)源程序文件中的字符必须是西文半角字符,不能使用中文全角字符。

(4)不要把数字“0”错写成字符“O”,或者把字符“O”错写成数字“0”。

3. 进入DOS系统在Windows XP的“附件”中有一个“命令提示符”,运行它即可进入DOS系统。

4. 在DOS系统中进入文件夹E:\>CD 文件夹名↙。

微机原理实验指导书

微机原理实验指导书

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

昆明理工大学微机原理及程序设计实验指导书鄢大鹏付丽霞编昆明理工大学信息工程与自动化学院自动化系2007年5月汇编语言的建立和执行要建立和执行汇编语言程序,系统盘上应该首先有如下文件: 编辑程序ASM.EXE 汇编程序(或MASM.EXE) 宏汇编程序LINK.EXE 链接程序 调试程序其中ASM.EXE是普通汇编程序,它不支持宏汇编,如果要用宏汇编,则必须用MASM.EXE。

下面,以建立和执行用户程序NEW.EXE为例来说明上机过程。

1.用EDIT命令建立汇编语言源程序(ASM文件)源程序就是用汇编语言编写的程序,它不能被机器识别。

源程序必须以ASM为附加文件名。

例如键入命令:C:\ EDIT NEW.ASM (如果是建立新程序就不跟文件名)2.用ASM(或MASM)命令产生目标文件(OBJ文件)源程序建立以后,就可以用汇编程序ASM.EXE(或MASM.EXE)进行汇编。

所谓汇编,实际上就是把以ASM为附加文件名的源文件转换成用二进制代码表示的目标文件,目标文件以OBJ为附加名。

汇编过程中,汇编程序对源文件进行二次扫描,如果源程序中与语法错误,则汇编过程结束后,汇编程序会指出源程序中的错误,这时,用户可以再用编辑程序来修改源程序中的错误,最后,得到没有语法错误的OBJ文件。

例如,对NEW.ASM的汇编过程如下:C:\ MASM NEW.ASM此时,汇编程序给出如下回答:Object filename [EX MOVS.OBJ]:Source listing [NUL.LST]: NEWCross reference [NUL.CRF]:NEW如果被汇编的程序没有语法错误,则屏幕上还会给出如下信息:Warning SeversErrors Errors00汇编程序的输出文件有三个,第一个是目标文件,它以OBJ为扩展名,产生OBJ文件是我们进行汇编操作的主要目的,所以这个文件是一定要产生的,操作时,这一步只要回车就行了;第二个是列表文件,它以LST为扩展名,如不需要,键入回车即可,如需要,则键入文件名然后回车;第三个是交叉符号表,同表文件一样一般只需键入回车。

3.用LINK命令产生执行文件(EXE文件)汇编过程根据源程序产生出二进制的目标文件,但OBJ文件用的是浮动地址,它不能直接上机执行。

所以还必须使用链接程序(LINK)将OBJ文件转换成可执行的EXE文件。

例如:C:\ LINK NEW4.程序的执行有了EXE文件后,就可以执行程序了,此时,只要键入文件名即可。

例如:C:\ NEW此时屏幕上就会显示用户所编写程序的运行结果了。

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

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

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

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

三、程序框图四、程序清单CRLF MACROMOV DL,0DHMOV AH,02HINT 21HMOV DL,0AHMOV AH,02HINT 21HENDMDATA SEGMENTDATA1 DB 33H,39H,31H,37H,34HDATA2 DB 36H,35H,30H,38H,32HDATA ENDSSTACK SEGMENTSTA DB 20 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATASTART:MOV AX,DA TAMOV DS,AXMOV AX,STACKMOV SS,AXMOV AX,TOPMOV SP,AXMOV SI,OFFSET DA TA2MOV BX,05CALL DISPLCRLFMOV SI,OFFSET DA TA1MOV BX,05CALL DISPLCRLFMOV DI,OFFSET DATA2CALL ADDAMOV SI,OFFSET DA TA1MOV BX,05CALL DISPLCRLFMOV AX,4C00HINT 21HDISPL PROC NEARDS1: MOV AH,02MOV DL,[SI+BX-1]INT 21HDEC BXJNZ DS1RETDISPL ENDPADDA PROC NEARMOV DX,SIMOV BP,DIMOV BX,05AD1: SUB BYTE PTR [SI+BX-1],30HSUB BYTE PTR [DI+BX-1],30HDEC BXJNZ AD1MOV SI,DXMOV DI,BPMOV CX,05CLCAD2: 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.读懂源程序,写出源程序注释。

2.把源程序修改为任意两个六位十进制相加。

并思考如果最高位有进位怎么办?实验二两个数相乘的实验一、实验目的掌握乘法指令和循环指令的用法。

二、实验内容实现十进制数的乘法。

被乘数和乘数均以ASCII码形式存放在内存中,乘积在屏幕上显示出来。

三、程序框图四、程序清单DA TA SEGMENTDA TA1 DB 32H,39H,30H,35H,34HDA TA2 DB 33HRESULT DB 6 DUP(00H)DA TA ENDSSTACK SEGMENTSTA DB 20 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TA,SS:STACK,ES:DATA START: MOV AX,DA TAMOV DS,AXMOV AX,STACKMOV SS,AXMOV AX,TOPMOV SP,AXMOV SI,OFFSET DATA2MOV BL,[SI]AND BL,00001111BMOV SI,OFFSET DATA1MOV DI,OFFEST RESULTMOV CX,05LOOP1: MOV AL,[SI]AND AL,00001111BINC SIMUL BLAAMADD AL,[DI]AAAMOV [DI],ALINC DIMOV [DI],AHLOOP LOOP1MOV CX,06MOV SI,OFFSET RESULTDISPL: MOV AH,02MOV DL,[SI+5]ADD DL,30HINT 21HDEC SILOOP DISPLMOV AX,4C00HINT 21HCODE ENDSEND START五、实验要求1.读懂程序,写出程序注释。

2.修改程序,实现6位数乘2位数的功能。

实验三 BCD码相乘的实验一、实验目的掌握用组合的BCD码表示数据,并熟悉怎样实现组合BCD码乘法运算。

二、实验内容实现BCD码的乘法,要求被乘数和乘数均以组合的BCD码形式存放,各占一个内存单元,乘积存放在另外两个内存单元中。

由于没有组合BCD码乘法指令,所以程序中采用将乘数1作为计数器,累加另一个乘数的方法得到计算结果。

三、程序框图四、程序清单DISPL MACROADD DL,30HMOV AH,02INT 21HENDMCRLF MACROMOV DL,0DHMOV AH,02INT 21HMOV DL,0AHMOV AH,02INT 21HENDMDA TA SEGMENTDA TA1 DB 01001000BDA TA2 DB 01110101BRESULT DW ?DA TA ENDSSTACK SEGMENT STACKSTA DB 20 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK,ES:DA TA START: MOV AX,DA TAMOV DS,AXMOV AX,STACKMOV SS,AXMOV AX,TOPMOV SP,AXMOV DI,OFFSET RESULTMOV SI,OFFSET DA TA1MOV AH,[SI]MOV CL,04SHR AH,CLMOV DL,AHDISPLMOV AL,[SI]MOV BL,ALAND AL,00001111BMOV DL,ALCRLFMOV SI,OFFSET DA TA2MOV AH,[SI]MOV CL,04SHR AH,CLMOV DL,AHDISPLMOV AL,[SI]AND AL,00001111BMOV DL,ALDISPLCRLFXOR DX,DXS1: CMP BL,0JZ S2CLCMOV AL,[SI]ADC AL,DLDAAMOV DL,ALMOV AL,00HADC AL,DHDAAMOV DH,ALMOV AL,BLDEC ALDASMOV BL,ALJMP S1S2: MOV [RESULT],DXMOV SI,DXMOV CL,4SHR DH,CLMOV DL,DHDISPLMOV DX,SIAND DH,00001111BMOV DL,DHDISPLMOV DX,SIMOV CL,4SHR DL,CLMOV DX,SIAND DL,00001111BDISPLCRLFS3: MOV AX,4C00HINT 21HCODE ENDSEND START五、实验要求1.读懂源程序,写出程序注释。

2.修改程序使其不显示被乘数和乘数。

实验四字符匹配程序一、实验目的掌握提示信息的使用方法及键盘输入信息的用法。

二、实验内容编写程序,实现两个字符串比较。

如果两个字符串中有一个字符相同,显示“MATCH”,否则,显示“NO MATCH”。

三、程序框图四、程序清单CRLF MACROMOV AH,02HMOV DL,0DHINT 21HMOV AH,02HMOV DL,0AHINT 21HENDMDA TA SEGMENTMESS1 DB 'MATCH',0DH,0AH,'$'MESS2 DB 'NO MATCH',0DH,0AH,'$' MESS3 DB 'INPUT STRING1:',0DH,0AH,'$' MESS4 DB 'INPUT STRING2:',0DH,0AH,'$' MAXLEN1 DB 81ACTLEN1 DB ?STRING1 DB 81 DUP (?)MAXLEN2 DB 81ACTLEN2 DB ?STRING2 DB 81 DUP (?)DA TA ENDSSTACK SEGMENT STACKSTA DB 50 DUP (?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TA,ES:DATA,SS:STACK START: MOV AX,DATAMOV DS,AXMOV ES,AXMOV AX,STACKMOV SS,AXMOV SP,TOPMOV AH,09HMOV DX,OFFSET MESS3INT 21HMOV AH,0AHMOV DX,OFFSET MAXLEN1INT 21HCRLFMOV AH,09HMOV DX,OFFSET MESS4INT 21HMOV AH,0AHMOV DX,OFFSET MAXLEN2INT 21HCRLFCLDMOV SI,OFFSET STRING1MOV CL,[SI-1]MOV CH,00HKKK: MOV DI,OFFSET STRING2PUSH CXMOV CL,[DI-1]MOV CH,00HMOV AL,[SI]MOV DX,DIREPNZ SCASBJZ GGGINC SIPOP CXLOOP KKKMOV AH,09HMOV DX,OFFSET MESS2INT 21HJMP PPPGGG: MOV AH,09HMOV DX,OFFSET MESS1INT 21HPPP: MOV AX,4C00HINT 21HCODE ENDSEND START五、实验要求1.读懂源程序,写出程序注释。

相关文档
最新文档