汇编第二次实验
- 格式:docx
- 大小:72.56 KB
- 文档页数:11
实验一 认识汇编语言1.1 实验目的(1)理解汇编语言的概念及其与高级语言的区别(2)了解MASM6.11和TASM软件包的安装及配置(3)了解常用汇编语言集成环境(4)掌握汇编语言程序的上机过程1.2 预备知识1.2.1 系统环境对汇编语言的初学者来说,DOS环境的优点是:DOS操作系统简单,程序员可以管理系统的所有资源,访问和修改系统中的所有内存(包括内存控制块、中断向量表),直接对I/O端口进行读写,便于对知识的学习和理解。
其缺点是:单任务的DOS操作系统只有一个运行级别,任何进程与DOS操作系统都是同等级别的,致使系统中各个进程会相互影响。
如果某个进程死机,整个系统就会瘫痪。
但是DOS系统已经退出历史舞台,目前的学生只熟悉Windows环境而对DOS知之甚少,继续要求学生在DOS系统的命令行界面下编写和调试程序,无疑存在巨大的困难。
目前,IBM PC及其兼容机配置的Intel系列微处理器可以工作在实模式、保护模式和虚拟86三种模式下。
实模式是汇编语言入门的基础,是汇编语言教学中无法跨越的阶段。
了解实模式是理解内存分段式管理和寻址方式的基础。
保护模式是Windows系统的工作模式,虚拟86模式则是在保护模式下提供的模拟8086处理器工作的模式,为学习汇编语言提供了便利。
DOS汇编程序在Win32环境中运行时,操作系统会模拟实模式运行16位进程。
对于一些可能会影响整个操作系统工作的指令,windows操作系统会拒绝执行。
64位的Windows 环境则不提供16位应用的虚拟环境。
因此,采用Win32环境进行汇编语言程序的编辑工作,在虚拟控制台环境中学习(汇编、连接和调试)汇编语言是最佳方案。
下面我们将逐步给大家讲解如何安装和配置汇编语言的编译调试环境,并选择适合的编辑软件来组建汇编语言的集成环境。
最后,叙述如何使用Visual Studio 2008 Express作为汇编语言的工作环境。
1.2.2 汇编语言上机过程汇编语言程序需要经过编辑、汇编、连接、调试与执行等过程才能实现其具体功能。
2010年中考试题汇编-实验与探究题100例(23. (乐山小明在家中探究食用白醋的性质,选用了家庭生活中的下列常见物品:200ml的软透明塑料瓶、食品干燥剂、白醋、鸡蛋壳、紫罗兰花、锈铁钉、蒸馏水、纯碱、玻璃小杯【问题】白醋是否具有酸类的性质?【查阅资料】(1白醋为无色透明液体,其主要成分是醋酸,化学式可表示为HAc, Ac —代表醋酸根;(2食品干燥剂的主要成分是氧化钙;(3紫罗兰花遇酸变为红色【反思与评价】(1小明将干燥剂袋口打开一段时间后,袋中的白色颗粒粘在了一起,请写出变化的化学方程式。
(2上面实验结论”中,错误的是(填实验序号。
(3上述实验三的现象还不足以得出表中所述的相应结论,为此还需要补充相应的实验,写出该实验发(1CaO+H2O = Ca(OH2(2 四(3C02+Ca(0H2=CaCO3+H2024. (眉山实验表明浓硫酸与焦炭在加热的条件下能发生反应。
经查阅资料得知①S02可使澄清石灰水变浑浊;②S02可使品红溶液的红色褪去,而C02不能;③S02可与酸性的KMn04溶液反应使其褪色,而C02不能;④CuS04为白色粉末,遇水可生成胆矶。
在对该反应的产物的探究中需用下列A、B、C装置:A B请根据提供的信息回答下列问题:(1浓硫酸与焦炭在加热的条件下发生如下反应:C + 2H2SO4(浓X T + 2SO2T + 2H2则生成物X的化学式为。
(2若要证明产物中有水,则要用装置(填装置的编号。
(3若按B、A、C的顺序组装,不能证明产物。
(4若按C、B、A的顺序组装,则能证明产物。
(5若要证明这三种产物,正确的组装顺序是装置B中的品红I的作用是,品红U的作用是。
(1CO2(2A (3H2O (4SO2(5ABC证明产物中的SO2检验SO2是否完全反应25. (兰州某校化学兴趣小组的同学们帮助实验老师整理化学药品室时,发现两个未贴标签的试剂瓶中分别存放银白色金属片。
到底它们是哪两种金属?请同学们设计实验方案对这两种金属X和丫的金属活动性顺序进行实验探究(2在进行上述实验之前,实验老师只知道X、丫可能是锌银中的各一种,则根据实验结果说明丫就(3小明同学提出,还可以用其它方法证明X、丫的活动性。
北京理工大学汇编语言实验报告实验三字符串操作实验实验三字符串操作实验一、实验目的1)熟悉串操作指令的功能与应用;2)掌握串操作指令的寻址方式及使用方法,编写常用的字符串处理程序;3)了解汇编语言字符串处理基本流程;二、实验软硬件环境1)硬件环境:惠普64位一体化计算机及局域网; 2)软件环境:windows 8,红蜘蛛管理系统,MASM for Win dows三、实验相关知识1)字符串操作流程SI寄存器保存源串首地址;DI寄存器保存目的串首地址;CX寄存器保存字符串长度;CLD或STD指令设置字符串处理方向;2)重复前缀指令重复次数由计数寄存器CX中存放的值决定,指令每重复执行一次,计数器CX中值减1,当CX 中值减至0时,停止重复执行,继续执行下一条指令。
寄存器的E内容条件为复前罡重复与操作直配合工作的字符串处理指令有MOVSSTOS^ LODS当REPE/REP判断计数寄存器的内容CX是否为0或ZF=O(即比较的两个操作数不等)亠只要满足一个则重复执行结束,否则继续执行。
可以与REPE/REP配合工作的串指令有CMP和SCAS0或體茴比较P判个操数数相等的内容要满足一个则重复执行结束,否则继续执行。
可以与REPE/REP配合工作的串指令有CMPS口SCAS3)字符串操作指令lodsb、lodsw :把DS:SI 指向的存储单元中的数据装入AL或AX然后根据DF标志增减SI ;stosb、stosw :把AL 或AX 中的数据装入ES:DI指向的存储单元,然后根据DF标志增减DI ;movsb movsw把DS:SI 指向的存储单元中的数据装入ES:DI指向的存储单元中,然后根据DF 标志分别增减SI和DI ;scasb、scasw:把AL或AX中的数据与ES:DI指向的存储单元中的数据相减,影响标志位,然后根据DF标志分别增减SI和DI ;cmpsb cmpsw把DS:SI指向的存储单元中的数据与ES:DI指向的存储单元中的数据相减,影响标志位,然后根据DF标志分别增减SI和DI ;rep :重复其后的串操作指令。
初中物理演示实验创新性实验汇编集团企业公司编码:(LL3698-KKI1269-TM2483-LUI12689-ITT289-初中物理演示实验创新性实验汇编明玻璃板一侧粘贴透明薄膜,减少透光。
4.用两个相同的透明小药瓶,其中一只内装上一个led小灯珠代替蜡烛。
数学知识解决物理问题,提高学生的学科综合能力,激发学生思维。
实验记录用的白纸学生在课后还可以重复进行观察分析,有利于实验结论的反复论证。
3.茶色玻璃减少透光性,成像更清晰。
4.用led灯珠代替蜡烛,排除烛焰易受气流影响不稳定的缺点,还增加了安全性。
5光的折射的如图所示,用眼睛可以观察到石块,但用竹签穿过细管却碰不到,改用激光笔通过细管照射,石块可以被照亮。
直观说明了光的折射。
调整细管角度,把石块改为容器壁上的记号,再次做实验,演示“池水变浅”现象。
1.直观性强,创造性的用呈直线状竹签比对沿直线传播的光路,学生易于观察和感受到光路发生了偏折的事实;2.器材简单,便于开展实验;3.实验过程加入学生参与,使其在探索中有“出乎意料”的情感体验过程,印象深刻。
6凸透镜 1.准备两张同样大小的硬纸板,在其中一个上按 1.灯珠的亮度14气体的体积随温度的变化原实验要求在室温下,吹鼓两个气球,分别把它们放在冰箱的冷藏室和炉火附近,过一会儿,观察出现的现象。
改进方法是把一个气球套在空的矿泉水瓶的瓶口上。
先把矿泉水瓶放在热水中,气球明显胀鼓起来,再放入冷水里,气球又明显瘪下去。
演示气体的热胀冷缩。
也可以用一个乒乓,先捏扁,再放进热水中,演示气体受热后体积膨胀。
原实验的问题是在课堂上操作不方便。
无法把电冰箱、火炉搬到教室当堂给学生演示。
改进后教师可以在课堂上当堂演示,学生也可回家操作,效果好,具有可行性。
15压缩点火取一根火柴,用小刀刮下药粉,倒入引火仪的玻璃管底部,先用力下压活塞一次(以便升高一些温度,起到预热作用),提升后换气并用力迅速压下活塞,火柴被压燃,效果很好,即使在冬天也同样能成功完成本实验。
新人教版小学三年级科学下册实验题专项
练习题汇编
本文档为新人教版小学三年级科学下册实验题专项练题的汇编。
实验一:测量物体的长度
1. 材料:尺子、不同长度的物体如铅笔、书、铅笔盒等
2. 实验步骤:使用尺子测量不同物体的长度,记录结果。
3. 实验问题:哪个物体最长?哪个物体最短?
实验二:观察花的不同部分
1. 材料:不同种类的花,放大镜
2. 实验步骤:观察不同种类的花的不同部分,如花瓣、花蕊、
叶子等。
3. 实验问题:不同花的花瓣形状有哪些不同?
实验三:观察摩擦力
1. 材料:不同材质的物体如木块、铁块、塑料块等
2. 实验步骤:将不同材质的物体分别放在光滑的台面上,用力
推动它们。
3. 实验问题:哪种物体推动起来最容易?为什么?
实验四:观察水的变化
1. 材料:水、锅、火源
2. 实验步骤:将水放在锅中,加热观察水的变化。
3. 实验问题:水加热后发生了什么变化?为什么?
实验五:观察风的存在
1. 材料:风景画、吹风机
2. 实验步骤:用吹风机吹风景画,观察画上的物体移动情况。
3. 实验问题:吹风机产生的风力可以使画上的物体移动吗?
以上是新人教版小学三年级科学下册实验题专项练习题的汇编。
希望这些实验题能帮助同学们更好地理解科学知识。
1.汇编语言程序设计实验篇1.1.汇编系统软件简介Emu8086-Microprocessor Emulator是集源代码编辑器、汇编/反汇编工具以及debug 的模拟器。
它能模拟一台"虚拟"的电脑运行程序,拥有独立的“硬件”,避免访问真实硬件。
该软件兼容Intel的下一代处理器,包括PentiumII、Pentium4。
利用该软件提供的调试工具,能够单步跟踪程序,观察程序执行过程中寄存器、标志位、堆栈和内存单元的内容。
1.1.1创建程序 TEMPLATE程序本章与指令相关的实验都是用COM TEMPLATE类型的程序完成的。
打开emu8086,在“welcome…”对话框中,单击按钮,创建文件。
在“choose code template”对话框中,选择“COM template-simple and tiny executable file format, pure machine code.”后,单击按钮。
在如所示的编辑界面中,在“;add your code here”部分输入相应的指令,第一条指令默认的偏移地址为100h。
输入全部指令后,单击按钮,保存相应的程序段。
2.EXE TEMPLATE程序本章与DOS功能调用和汇编源程序相关的实验都是用EXE TEMPLATE程序完成的。
打开emu8086,在“welcome…”对话框中,单击按钮,创建文件。
在“choose code template”对话框中,选择“EXE template-advanced executable file.header: relocation, checksum.”后,单击按钮。
在如图所示的编辑界面中,已经可以给出了源程序的框架,包含数据段、堆栈段和代码段的定义以及必要的功能调用等,在“add your data here”和“;add your code here”部分可以分别输入相应的变量定义和指令。
实验一:熟悉环境及DEBUG应用实验目的:1、复习C/C++的变量、地址、指针、内存空间等概念;2、熟悉基本的DOS命令;3、掌握DEBUG的启动及其使用方法与常用命令。
4、初步认识CPU的寄存器。
实验内容:一、C/C++语言回顾目的:通过C/C++的变量、地址、指针、内存空间等概念的回顾,了解计算机内数据的存放方式和访问方式。
1、编程定义一个整型int、一个双精度型double、一个字符型char的指针,并赋初值,然后显示各指针所指目标的值与地址,各指针的值与指针本身的地址及各指针所占字节数(其中地址用十六进制显示,注意字符指针输出是字符串,必须强制转换为无类型指针)。
要求运行结果如下所示:变量内容首地址长度(字节)cval ‘A’0x0012ff64 1类型:整型: int, short int, short, long int, long, unsigned int, unsigned short, unsigned long实型: float, double, long double字符型: char#include<iostream>using namespace std;int main(){int *ip,ival=100;double *dp,dval=99.9;char *cp,cval='A';ip=&ival;dp=&dval;cp=&cval;cout<<*ip<<'\t'<<&*ip<<'\t'<<sizeof(*ip)<<endl;cout<<*dp<<'\t'<<&*dp<<'\t'<<sizeof(*dp)<<endl;cout<<*cp<<'\t'<<(void*)&*cp<<'\t'<<sizeof(*cp)<<endl;//字符指针输出是字符串,必须强制转换为无类型指针cout<<*cp<<'\t'<<&*cp<<'\t'<<sizeof(*cp)<<endl;//输出A开头的字符串cout<<ip<<'\t'<<&ip<<'\t'<<sizeof(ip)<<endl;cout<<dp<<'\t'<<&dp<<'\t'<<sizeof(dp)<<endl;cout<<(void*)cp<<'\t'<<&cp<<'\t'<<sizeof(cp)<<endl;return 0;}2、编程定义一个一维数组、一个二维数组、一个字符串(字符数组)、一个结构体,并赋初值,然后显示各指针所指目标的值与地址,各指针的值与指针本身的地址及各指针所占字节数(长度)。
微机原理技术与接口实验报告学院:专业:班级:姓名:学号:汇编语言程序的上机过程实验目的通过简单地操作了解汇编语言程序的基本内容,体会汇编语言的运行,为以后的实验打下一定的基础。
实验原理及操作步骤一、上机环境❖要运行调试汇编语言程序,至少需要以下程序文件:▪编辑程序:或其他文本编辑工具软件,用于编辑源程序。
▪汇编程序:MASM.EXE,用于汇编源程序,得到目标程序。
▪连接程序:LINK.EXE,用于连接目标程序,得到可执行程序。
▪调试程序:DEBUG.EXE,用于调试可执行程序。
二、上机过程❖汇编语言程序上机操作包括:编辑、汇编、连接和调试几个阶段。
1.编辑源程序❖用文本编辑软件创建、编辑汇编源程序。
常用编辑工具有:、记事本、Word等。
❖无论采用何种编辑工具,生成的文件必须是纯文本文件,所有字符为半角,且文件扩展名为.asm(文件名不分大小写,由1~8个字符组成)。
2.汇编❖用汇编工具对上述源程序文件(.asm)进行汇编,产生目标文件(.obj)等文件。
❖汇编程序的主要功能是:检查源程序的语法,给出错误信息;产生目标程序文件;展开宏指令。
❖汇编过程如下:❖在DOS状态下,输入命令:MASM MYFILE.ASM(回车),即启动了汇编程序。
❖此命令执行后,会出现下面的3行信息,依次按回车键(即选择默认值)即可建立3个输出文件,其扩展名分别为:.OBJ(目标文件),.LST(列表文件)和.CRF(交叉引用文件)。
Object Filename [MYFILE.OBJ]:Source Listing [Nul.LST]:Cross Reference [Nul.CRF]:依次按回车键,进行选择后,汇编程序就对汇编源程序进行汇编。
如果汇编过程中发现有语法错误,则屏幕上会显示出错语言的位置和出错的类型。
此时,需要进行修改,然后再进行汇编。
❖如此进行,直至汇编无错误,得到目标文件为止。
3.连接❖汇编产生的目标文件(.obj)并不是可执行的程序,还要用连接程序把它转换为可执行的EXE文件。
2019中考物理真题分类汇编压强和浮力实验题2 浮力大小、阿基米德原理、物体浮沉条件(共23题,有答案)1.(2019•贵阳)小明运用浮力相关知识制作了可以用来测量物体质量的“浮力称”,其构造如图所示,在水平支架的左端固定刻度盘,支架横梁两端各固定个滑轮,将一根无弹性的细绳跨过两个滑轮,细线的一端悬挂秤盘,另一端连接装有适量细沙的圆柱形浮筒(浮筒自重不计),在线的适当位置固定一根大头针作为指针,把浮筒浸入装有适量水的水槽中,称量时,把待测物体放入秤盘后,指针下降浮筒上升,静止后,待测物体的质量就可以通过指针在刻度盘上的位置反映出来。
请你回答下列问题(不计细线、秤盘、指针的质量以及线与滑轮的摩擦)(1)为了制作量程为1kg的浮力称,向秤盘添加1kg的砝码,逐渐向空浮筒内加入细沙,当浮筒的(选填“上”或“下“)表面刚好与水面齐平并保持静止时,在刻度盘上将指针所指的位置标定为最大刻度线。
(2)取下砝码,当浮筒受到力和力是一对平衡力时,浮筒能直立地浮在水面上静止,此刻度所指的位置应标定为零刻度线,在均匀地标定其余刻度线。
(3)若将质量为m(m<1kg)的待测物体放在秤盘上,当浮筒静止时其下表面距离水面的距离是h,若细沙的质量是M,浮筒的横截面积是S,水的密度为ρ水,请待测物体质量的表达式m=。
(4)若将原来的浮筒更换为长度相同、横截面积更小的另一个浮筒,细沙的质量和细线的长度等不变,则重新标定的刻度线与原来刻度线相比发生变化的是(选填“零刻度线上升”或“最大刻度线下降“),请你分析带来这一变化的原因是:。
2.(2019•福建)如图,“验证阿基米德原理”的实验步骤如下:①用弹簧测力计测出物体所受的重力G(图甲);②将物体浸没在水面恰好与溢口相平的溢水杯中,用空的小桶接从溢水杯里被物体排开的水,读出这时测力计的示数F(图乙);③测出接水后小桶与水所受的总重力G1(图丙);④将小桶中的水倒出,测岀小桶所受的重力G2(图丁);⑤分别计算出物体受到的浮力和排开的水所受的重力,并比较它们的大小是否相同。
《汇编语言》 试验报告
班 级 计134 学 号 139074133 姓 名 颜飞翔 指导教师 刘恒 实验五 循环程序实验 一、实验目的: 1、掌握汇编语言的源程序结构 2、熟悉常用的汇编语言指令 3、掌握程序的循环结构 二、实验内容: 1、编程序将符号字数组ARRAYW中的正负数分别送入正数数组PLUS和负数数组MINUS中,同时把0元素的个数送入字变量ZERON. 2、利用记事本进行源程序编辑; 3、利用汇编语言MASM进行源程序汇编; 4、再使用连接程序LINK进行程序连接; 5、用debug调试程序。 三、实验源码: STACK SEGMENT STACK 'STACK' DW 32 DUP(0) STACK ENDS
DATA SEGMENT ARRAYW DW -5,-4,-3,-1,0,2,3,4,5,6 N EQU ($-ARRAYW)/2 PLUS DW N DUP(0) MINUS DW N DUP(0) ZERON DW 0 DATA ENDS CODE SEGMENT ASSUME SS: STACK, CS: CODE, DS: DATA START: MOV AX, DATA MOV DS, AX MOV CX, N MOV BX, 0 MOV SI, 0 MOV DI, 0 MOV ZERON, 0 AGAIN: MOV AX, ARRAYW[BX] ADD BX, 2 AND AX, AX JZ ZER JS MIN MOV PLUS[SI], AX ADD SI, 2 JMP COM MIN: MOV MINUS[DI], AX ADD DI, 2 JMP COM ZER: INC ZERON COM: LOOP AGAIN
MOV AH,4CH INT 21H CODE ENDS END START 运行结果:
四、实验总结: 通过本实验,熟悉了循环结构的基本框架,熟悉了LOOP指令的意义和操作。在实验过程中,对一些指令的操作要理解并运用,熟悉各代码所表示的意思和运行的结果。并且在DEBUG命令下调试查看结果。 实验六 分支程序实验 一、实验目的: 1、掌握分支程序的设计方法。 2、掌握汇编语言源程序的编辑、汇编、连接及调试过程。 二、实验内容: 1、编写一个程序,显示AL寄存器中的两位十六进制数。 2、编写一个程序,判断键盘上输入的字符;若是1-9字符,则显示之;若为A-Z或a-z字符,均显示“c”;若是回车字符(或其他ASCII码为0DH),则结束程序,若为其他字符则不显示,继续等待新的字符输入。 三、实验步骤: 1、用EDIT或其他编辑软件,编写.ASM源程序。 2、对其进行汇编及连接,产生.EXE文件。 3、对.EXE文件进行调试运行。 (1)用DEBUG调试运行,学会修改AL内容的方法。 (2)对第二个程序键入不同的字符,分别进行调试。 (3)在MS-DOS下运行这两个.EXE文件。 四、实验源码: 1、分支一 CODE SEGMENT ASSUME CS:CODE START: MOV AL,3EH PUSH AX MOV DL,AL MOV CL,4 SHR DL,CL CMP DL,9 JBE NEXT1 ADD DL,7 NEXT1: ADD DL,30H MOV AH,2 INT 21H POP AX MOV DL,AL AND DL,0FH CMP DL,9 JBE NEXT2 ADD DL,7 NEXT2: ADD DL,30H MOV AH,2 INT 21H MOV AH,4CH INT 21H CODE ENDS END START
2、分支二 CODE SEGMENT ASSUME CS:CODE START: MOV AH,1 INT 21H CMP AL,0DH JZ DONE CMP AL,'0' JB NEXT CMP AL,'9' JA CHARUP MOV DL,AL MOV AH,2 INT 21H JMP START CHARUP: CMP AL,41H JB NEXT CMP AL,5AH JA CHRDN DISPC: MOV DL,'c' MOV AH,2 INT 21H NEXT: JMP START CHRDN: CMP AL,61H JB NEXT CMP AL,7AH JA NEXT JMP DISPC DONE: MOV AH,4CH INT 21H CODE ENDS END START
实验七 统计不同成绩段学生的人数 一、实验目的: 1、掌握分支、循环、子程序调用、DOS功能调用等基本的程序结构。 2、掌握综合程序的编制及调试方法。 二、实验内容: 设有十个学生成绩分别是76,69,84,90,73,88,99,63,100和80分。试编制一个子程序,统计低于60分,60~69分,70~79分,80~89分,90~99分和100分的人数,并输出显示统计结果。 三、编程提示: 1、成绩分等部分采用分支结构,统计所有成绩则用循环结构完成,显示统计结果采用DOS功能调用。 2、统计学生成绩和显示统计结果两部分内容用子程序结构来完成。 四、实验报告: 源程序清单和执行结果。 DATAS SEGMENT ARRAY DB 76,69,84,90,73,88,99,63,100,80 STRING1 DB 'The number of 100: $' STRING2 DB 'The number of 90-99: $' STRING3 DB 'The number of 80-89: $' STRING4 DB 'The number of 70-79: $' STRING5 DB 'The number of 60-69: $' STRING6 DB 'The number below 60: $' DATAS ENDS STACKS SEGMENT STACKS ENDS
CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV AX,DATAS MOV DS,AX MOV AL,0 ;用于计数 MOV BX,0 MOV CX,0 MOV DH,0 MOV DL,10 ;循环次数 CALL COUNT CALL OUTPUT MOV AH,4CH INT 21H COUNT PROC NEAR ;子程序一,用来统计各分数段的人数 MOV SI,0 NEXT: CMP ARRAY[SI],100 ;将分数与100比较 JZ L1 JL NEXT1 NEXT1: CMP ARRAY[SI],90 ;与90比较 JAE L2 JL NEXT2 NEXT2: CMP ARRAY[SI],80 ;与80比较 JAE L3 JL NEXT3 NEXT3: CMP ARRAY[SI],70 ;与70比较 JAE L4 JL NEXT4 NEXT4: CMP ARRAY[SI],60 ;与60比较 JAE L5 INC DH INC SI DEC DL ;循环次数减1 JNZ NEXT ;若DL尚未减少到零则回到NEXT处执行 JMP EXIT ;若为零就转到EXIT处执行,退出 L1: INC AL ;对分数为100的学生的人进行计数 INC SI DEC DL JNZ NEXT JMP EXIT L2: INC BH ;对分数在90-99的学生的人进行计数 INC SI DEC DL JNZ NEXT JMP EXIT L3: INC BL ;对分数在80-89的学生的人进行计数 INC SI DEC DL JNZ NEXT JMP EXIT L4: INC CH ;对分数在70-79的学生的人进行计数 INC SI DEC DL JNZ NEXT JMP EXIT L5: INC CL ;对分数在60-69的学生的人进行计数 INC SI DEC DL JNZ NEXT EXIT: RET COUNT ENDP OUTPUT PROC NEAR ;子程序二,用来输出相关内容 MOV AH,0 PUSH DX PUSH CX PUSH BX PUSH AX LEA DX,STRING1 ;输出100分的人数 MOV AH,9 INT 21H POP BX MOV DL,BL ADD DL,30H MOV AH,2 INT 21H CALL ENTER LEA DX,STRING2 ;输出90至99分的人数 MOV AH,9 INT 21H POP BX MOV DL,BH ADD DL,30H MOV AH,2 INT 21H