南昌大学汇编实验报告

合集下载

南昌大学汇编实验子程序与串处理

南昌大学汇编实验子程序与串处理

实验二串处理与子程序姓名:刘权班级:电III 111班学号:6100411011 日期:11.12 11.19字符处理程序实验一. 实验目的1.熟悉串操作指令的功能与应用;2.掌握串操作指令的寻址方式及使用方法,编写常用的字符串处理程序。

二.实验内容1.字符串统计。

从键盘最多输入80个字符存放在STR开始的存储区中,统计其中含有小写字母的个数,将统计结果以两位十进制数显示在屏幕上。

2.删除重复字符。

从键盘最多输入80个字符存放在STR开始的存储区中,删除其中重复的字符,输出删除处理后的字符串。

三. 实验要求1.认真预习有关串操作的指令极其寻址方式的特点,能够正确使用串操作指令,并准备好数据。

2.依题意分析给出程序设计算法。

四.实验环境PC微机DOS操作系统或Windows 操作系统MASM.EXE,LINK.EXE,或宏汇编集成环境RADASM五.实验步骤1.用1号系统调用从键盘键入一个字符串,然后统计其中小写字母的个数。

程序每次执行,都能得到不同的结果。

程序清单:DA TA SEGMENTMSG1 DB 'Input a string:',0AH,0DH,'$'MSG2 DB 'The number of lowercase letter is:$'STR DB 80 DUP(?)DA TA ENDSCODE SEGMENTASSUME CS:CODE, DS:DATASTART: MOV AX, DA TAMOV DS, AX;输出提示LEA DX,MSG1MOV AH,9INT 21HLEA DI, STRMOV CL, 0 ;CL用来记录输入字符数AGAIN: MOV AH, 1INT 21HCMP AL,0DHJZ DONE ; 输入回车键则转DONEMOV [DI],ALINC DIINC CLJMP AGAINDONE: LEA SI,STRMOV CH,0 ;CX保存输入字符数MOV BL,0 ;BL用来统计小写字符个数CLDCYCLE: LODSBCMP AL,'a'JB NEXTCMP AL,'z'JA NEXTINC BLNEXT: LOOP CYCLE;回车换行MOV AH,2MOV DL,0AHINT 21HMOV DL,0DHINT 21H;输出提示LEA DX,MSG2MOV AH,9INT 21H;以下显示输入小写字母个数的两位十进制数MOV AL,BL ;小写字符个数送ALMOV AH,0 ;AX存放小写字符个数MOV CL,10DIV CL ;十位数在AL中,个位数在AH中MOV BX,AX ;十位数在BL中,个位数在BH中MOV DL,BLMOV AH,2OR DL,30HINT 21H ;输出小写字母个数的十位数字MOV DL,BHOR DL,30HMOV AH,2INT 21H ;输出小写字母个数的个位数字MOV AH,4CHINT 21HCODE ENDSEND START2.要求编写一个在同一个字符串中删除字符,并将其余字符向前递补的程序。

南昌大学汇编语言实验报告

南昌大学汇编语言实验报告

.实验报告实验课程:IBM-PC 汇编语言程序设计学生姓名:刘兴隆学号:7101310013专业班级:电气信息类III101 班2021年12月15日...汇编语言实验指导前言汇编语言是计算机专业的一门重要的专业根基课,主要介绍汇编语言程序设计的根来源理和方法。

汇编语言是一门理论性和实践性较强的课程,协助讲堂教课的实验有助于帮助学生理解汇编语言的根来源理,锻炼学生的着手能力,提升学生的综合应用知识的能力。

本实验指导依照汇编语言程序设计的教课大纲领求编写。

依照顺序渐进、由浅入深的规律,经过实例复习牢固所学知识,借助实例展开汇编语言程序设计。

经过这类既拥有结构性又拥有创建性的学习活动,更便于初学者的理解和掌握,经过上机实验,并在实验后达成实验报告,又能进一步加深和拓宽所学知识。

为了帮助老师和学生展开实验,我们特编了这本实验指导,希望能对我校的?汇编语言?教课工作有所帮助。

本实验指导全部实例均在PC机上浮试经过。

..目录〔1〕利用DEBUG调试汇编语言程序段〔2〕初级程序的编写与调试实验〔一〕〔3〕初级程序的编写与调试实验〔二〕〔4〕汇编语言程序上机过程〔5〕分支程序实验〔6〕循环程序实验〔7〕子程序实验..实验1 利用DEBUG调试汇编语言程序段一.实验目的1.熟习DEBUG相关命令的使用方法;2.利用DEBUG掌握相关指令的功能;3.利用DEBUG运转简单的程序段。

二.实验内容1.进入和退出DEBUG程序;1)开始—运转,输入cmd,点确立进入命令窗口2)在命令窗口中输入dubug进入debug程序..3)进入debug窗口后,输入q命令退出debug2.学会DEBUG中的1〕D命令〔显示内存数据D段地点:偏移地点〕例1:-D100 ;显示DS段,0100开始的128个字节内容说明:指定要显示其内容的内存地区的开端和结束地点,或开端地点和长度。

① D SEGREG[开端地点][L 长度];显示SEGREG段中(缺省内默以为DS),以[开端地点](缺省内为目前的偏移地点),开始的[L长度](缺省内默以为128)个字节的内容.DSEGREG[段地点:偏移地点];显示SEGREG段中(缺省内默以为DS),[段地点:偏移地点]开始的[L长度](缺省内默以为128)个字节内容-D;默认段寄存器为DS,目前偏移地点(刚进入debug程序偏移地点为0100H) ......如要改正,可输入新数据;空格键显示下一个单元内容并可改正,减号键显示上一个单元内容并可改正;如不改正,可直接按空格键或减号键;回车键结束命令。

南昌大学实验报告1

南昌大学实验报告1

南昌大学实验报告学生姓名:王岩学号:6100308239 专业班级:自动化084班实验类型:□验证□综合■设计□创新实验日期:2011-11 实验成绩:实验一三容水箱专家控制一、实验目的1、熟悉三溶液位控制的组成原理2、通过实验进一步掌握专家控制原理及实现二、实验设备及条件计算机(装有MATLAB)三、实验原理图一所示为三容水箱液位控制系统,控制目的是使下水箱液位等于给定值,并能克服来自系统内部和玩不扰动的影响。

三容水箱的结构图如图二,该被控对象具有非线性和时滞性,要建立精确的数学模型比较困难,专家控制可以避开复杂的数学模型,通常还可以在非线性、大偏差下可靠的工作,具有灵活性、适应性和鲁棒性。

本实验采用直接型专家控制器,专家控制器的输入为偏差e和误差变化率ec,e=r-y,ec=de/dt.r和y分别是液位给定值和测量值。

四、实验设计过程及结果1、写出三容水箱各流量液位的数学表达式:2、用matlab 编写程序,调整各参数,使在程序执行数圈后,满足两个条件: 1)液位为0时,阀门开到最大,能使水箱流满 2)水箱满时,调节阀门小,能使水箱留空 最后各参数调整后源程序如下:clear all; close all; h1=00; h2=00;h3=00;%液位初始化 s=120;k=90; %阀门开度 for i=1:800Q1=2.2*k;Q2=13.8*sqrt(h1); h1=h1+(Q1-Q2)/s; Q3=13.4*sqrt(h2); h2=h2+(Q2-Q3)/s;Q4=170*abs(sin(2.58*pi*i+0.45)); h3=h3+(Q3-Q4)/s; end3)1(33433|sin |*43222321112*121h k h h sQ Q h x v Q SQ Q h h a Q SQ Q h h a Q k b Q ∆+-=-=∆=-=∆=-=∆==clear all;close all;h1=200;h2=200;h3=200;%液位初始化s=120;k=10; %阀门开度for i=1:800Q1=2.2*k;Q2=13.8*sqrt(h1);h1=h1+(Q1-Q2)/s;Q3=13.4*sqrt(h2);h2=h2+(Q2-Q3)/s;Q4=170*abs(sin(2.58*pi*i+0.45));h3=h3+(Q3-Q4)/s;end如上图所示,当水箱h1、h2、h3均为空时,将阀门调整到90,能使各水箱流满;当水箱h1、h2、h3均为满时,将阀门调整到10,能使各水箱流空;所以,该模型可以实现三容水箱液位控制。

南昌大学物理实验报告范文分光计调节与使用_分光计实验总结范文

南昌大学物理实验报告范文分光计调节与使用_分光计实验总结范文

南昌大学物理实验报告范文分光计调节与使用_分光计实验总结范文分光计的调整及光栅常数的测量一实验目的1了解分光计的结构,掌握调节分光计的方法。

2观察光栅的衍射光谱,理解光栅衍射基本规律。

3学会测定光栅的光栅常数.二实验仪器分光计、光栅、低压汞灯电源、平面镜等三实验原理衍射光栅、光栅常数图40-1中a为光栅刻痕(不透明)宽度,b为透明狭缝宽度。

d=a+b为相邻两狭缝上相应两点之间的距离,称为光栅常数。

它是光栅基本参数之一。

图40-1图40-2光栅衍射原理图图40-1中a为光栅刻痕(不透明)宽度,b为透明狭缝宽度。

d=a+b为相邻两狭缝上相应两点之间的距离,称为光栅常数。

它是光栅基本参数之一。

2.光栅方程、光栅光谱由图40-1得到相邻两缝对应点射出的光束的光程差为:式中光栅狭缝与刻痕宽度之和d=a+b为光栅常数,若在光栅片上每厘米刻有n条刻痕,则光栅常数cm。

为衍射角。

当衍射角满足光栅方程:(k=0,±1,±2…)(40-1)时,光会加强。

式中为单色光波长,k是明条纹级数。

图40-3如果光源中包含几种不同波长的复色光,除零级以外,同一级谱线将有不同的衍射角因此,在透镜焦平面上将出现按波长次序排列的谱线,称为光栅光谱。

相同k值谱线组成的光谱为同一级光谱,于是就有一级光谱、二级光谱……之分。

图40-3为低压汞灯的衍射光谱示意图,它每一级光谱中有4条特征谱线:紫色1=435.8nm,绿色2=546.1nm,黄色两条3=577.0nm和4=579.1nm。

图40-3四实验步骤1调节分光计调整望远镜:a目镜调焦:清楚的看到分划板刻度线。

b调整望远镜对平行光聚焦:分划板调到物镜焦平面上。

c调整望远镜光轴垂直主轴:当镜面与望远镜光轴垂直时,反射象落在上十字线中心,平面镜旋转180°后,另一镜面的反射象仍落在原处。

(2)调整平行光管发出平行光并垂直仪器主轴:将被照明的狭缝调到平行光管物镜焦面上,物镜将出射平行光。

南昌大学微机原理实验报告

南昌大学微机原理实验报告

实验报告实验课程:汇编原理与微机接口技术学生姓名:信念学号:520---1314专业班级:网络间谍***2***年 12 月 12 日目录一、实验一 (3)二、实验二 (5)三、实验三 (8)四、实验四 (10)五、实验五 (12)六、实验六 (18)南昌大学实验报告一学生姓名:信念学号:520---1314 专业班级:网络间谍***班实验类型:□验证□ 综合▥设计□ 创新实验日期: 2***.11.3 实验成绩:一、实验名称实验设备简介二、实验内容了解并熟悉SICElab『赛思』开放式综合实验/仿真系统及G2010+实验平台、实验设备。

三、实验目的了解实验设备、搭建实验平台四、实验器材(1)G2010+实验平台1台(2)G6W仿真器1台(3)连线若干根五、实验设备及说明1 仿真工具伟福公司所有的产品,包含一个项目管理器,一个功能强大的编辑器,汇编Make、build和调试工具并提供一个与第三方编译器的接口2 实验平台新型实用模块:(1)LCD液晶实验(2)点阵LED广告屏(3)DS12887 实时钟(4)红外线发送、接收(5)直流电机恒速(6)电子琴模拟实验(7)串行ROM/I2C ROM (8)步进电机变速传感器实验:(1)温度传感器(2)压力传感器(3)霍尔传感器(4)红外传感器传统实验模块:(1)模数转换A/D0809(2)数模转换D/A0832(3)8155控制键显(4)V/F转换LM331(5)串口通讯MAX232(6)音响实验LM386 7)EPROM27C256扩展(8)RAM6264扩展(9)微型打印机接口(10)PWM模块通用实验模块:(1)模拟信号发生器(2)开关量发生器(3)发光二极管组(4)信号发生器(5)74LS138译码器(6)分频器电路(7)LED6位数码管(8)20个键盘组(9)逻辑笔(10)常用门电路自由实验模块:由DIP40锁紧插座及240个插孔组成,CPU所有信号均以插孔方式引出,还设计了常用门电路、晶振源、电源插孔等,可以完成以上实验模块的组合实验以及由实验者自行命题和新器件、新方案的实验,使得实验方式和内容不受限制。

汇编实验报告(详细版)

汇编实验报告(详细版)

计算机组成与汇编语言(实验报告)内容: 实验一、六、七、八院系专业:计算机学院计算机科学与技术姓名:xxxxxxxxx学号:*******xxxxx完成时间:2012年12月1日计算机组成与汇编语言实验报告printf("输入的二进制数不正确!!");break;}}}if(a[15]=='1')s++;for(i=1;i<16;i++){if(a[15-i]=='1')s+=(1<<i);}printf("二进制: ");puts(a);printf("对应的十进制为: ");printf("%d\n",s);}程序1运行结果:实验情况与体会:运行过程中出现过不能判断是否输错的情况以及权位判断有误等情况,经过思考和修改后修改正确,说明理解好二进制与十进制之间的转换过程很重要。

编程过程中主要碰到的问题是,不够十六位的时候要在前面补零。

转换方法主要是除二求余的方法。

注:篇幅不够,可以另外附页。

计算机组成与汇编语言实验报告姓名xxxx 学号2011004xxxx 计分专业软件工程班级xxxxx 实验日期2012年 12 月 1日实验名称实验六分支结构程序设计实验目的●熟悉有符号定点数的表示。

●掌握原码、补码、反码之间的相互转换程序设计。

实验内容说明:该程序中X=23,Y=45,他们之差的绝对值为22,用16进制表示为0016H,即图中显示的结果2.调试程序2:DATA SEGMENTADD AL, 07HLP4: ADD AL, 30H ;将低四位转化为相应的ASCII码并以字符形式输MOV DL, ALMOV AH, 2INT 21HMOV AH, 4CHINT 21HCODE ENDSEND START上机运行该程序并检查运行结果是否正确。

上机实验过程:说明:求出三个数里面的最大数73;3. 编写程序1:编程实现从键盘输入一位数字,判断其奇偶性,并在屏幕上输出一个标志,若为奇数,则输出1,否则输出0。

南昌大学试验报告范文-南昌大学网络教学平台

南昌大学试验报告范文-南昌大学网络教学平台

南昌大学试验报告范文-南昌大学网络教学平台实验项目名称:_______膨胀计法测定聚合物的玻璃化转变温度______________学生姓名:____________学号:___________专业班级:______________实验类别:基础专业实验要求:必修选修一、实验目的1.了解膨胀计测量聚合物玻璃化温度的方法2.深入理解自由体积概念在高分子学科中的重要性。

二、实验基本原理在玻璃态下,由于链段运动被冻结,自由体积也被冻结,聚合物随温度升高而发生的膨胀只是由于正常的分子膨胀过程造成的,而在Tg以上,除了正常的分子膨胀过程外,还有自由体积的膨胀,因此高弹态的膨胀系数比玻璃态的膨胀系数来得大。

若以比容对温度作图,在Tg就要发生斜率的变化。

三、主要仪器设备及耗材膨胀计、水浴及加热器、颗粒状尼龙6、丙三醇。

四、实验步骤1.洗净膨胀计,烘干。

装入尼龙6颗粒至比重瓶的4/5体积。

2.在膨胀管内加入丙三醇作为介质,用玻璃棒搅动(或抽气)使膨胀管内没有气泡。

3.再加入丙三醇至比重瓶口,插入毛细管,使丙三醇的液面在毛细管下部,磨口接头用弹簧固定,如果管内发现有气泡要重装。

4.将装好的膨胀计浸入水浴中,于30C恒定20min后,设置最高温度为60C,控制水浴升温速率约为1.25C/min。

5.读取水浴温度和毛细管内丙三醇液面的高度,从30~55C每升高1C读数一实验类型:验证综合设计创新实验日期:___________实验成绩:________次(升温速率控制为0.5C/min),到55C为止。

6.毛细管内液面高度对温度作图。

从直线外延点求得升温速度1.25C/min下尼龙6的Tg。

五、实验数据及处理结果4.03.93.8h/mm3.73.63.53.43.3354045o5055Tamperature/C升温速度1.25C/min下尼龙6的Tg为44C。

六、思考讨论题或体会或对改进实验的建议略1.何平笙,杨海洋,朱平平,瞿保均.高分子物理实验.合肥:中国科学技术大学出版社,20022.陈义旺.高分子物理实验补充讲义.南昌大学,2006南昌大学实验报告实验项目名称:______________聚合物的温度-形变曲线__________________学生姓名:____________学号:___________专业班级:______________实验类别:基础专业实验要求:必修选修一、实验目的1.正确理解聚合物的三个力学状态和二个转变。

南昌大学电力电子技术实验报告(打印上交)汇总

南昌大学电力电子技术实验报告(打印上交)汇总

电力电子技术实验报告学生姓名:学号:学院名称:专业班级:目录实验一锯齿波同步移相触发电路实验 (1)实验二正弦波同步移相触发电路实验 (4)实验三单相桥式全控整流电路实验 (7)实验四单相桥式半控整流电路实验 (11)实验五三相桥式全控整流及有源逆变电路实验 (16)实验六直流斩波电路实验 (19)实验七三相半波可控整流电路的研究 (21)实验一锯齿波同步移相触发电路实验一.实验目的1.加深理解锯齿波同步移相触发电路的工作原理及各元件的作用。

2.掌握锯齿波同步触发电路的调试方法。

二.实验内容1.锯齿波同步触发电路的调试。

2.锯齿波同步触发电路各点波形观察,分析。

三.实验线路及原理锯齿波同步移相触发电路主要由脉冲形成和放大,锯齿波形成,同步移相等环节组成,其工作原理可参见“电力电子技术”教材。

四.实验设备及仪器1.NMCL系列教学实验台主控制屏2.NMCL-32组件和SMCL-组件3.NMCL-05组件4.双踪示波器5.万用表五.实验方法图1-1 锯齿波同步移相触发电路1.将NMCL-05面板左上角的同步电压输入接到主控电源的U、V端,“触发电路选择”拨向“锯齿波”。

2. 将锯齿波触发电路上的Uct接着至SMCL-01上的Ug端,‘7’端地。

3.合上主电路电源开关,并打开NMCL-05面板右下角的电源开关。

用示波器观察各观察孔的电压波形,示波器的地线接于“7”端。

同时观察“1”、“2”孔的波形,了解锯齿波宽度和“1”点波形的关系。

观察“3”~“5”孔波形及输出电压U G1K1的波形,调整电位器RP1,使“3”的锯齿波刚出现平顶,记下各波形的幅值与宽度,比较“3”孔电压U3与U5的对应关系。

4.调节脉冲移相范围将SMCL-01的“Ug”输出电压调至0V,即将控制电压Uct调至零,用示波器观察U1电压(即“1”孔)及U5的波形,调节偏移电压Ub(即调RP2),使α=180˚。

调节NMCL-01的给定电位器RP1,增加Uct,观察脉冲的移动情况,要求Uct=0时,α=180˚,Uct=Umax时,α=30˚,以满足移相范围α=30˚~180˚的要求。

南昌大学计算机控制实验报告数/模转换实验汇编

南昌大学计算机控制实验报告数/模转换实验汇编

南昌大学实验报告学生姓名:学号:专业班级:实验类型:■验证□综合□设计□创新实验日期:实验成绩:实验一数/模转换实验一.实验要求掌握DAC0832芯片的性能、使用方法及对应的硬件电路。

编写程序控制D/A输出的波形,使其输出周期性的三角波。

二.实验说明电路实现见主板模块B1,具体说明请见用户手册。

DAC0832的片选CS0832接00H,观察输出端OUTl(B1部分)产生三角波由数字量的增减来控制,同时要注意三角波要分两段来产生。

三.实验步骤1、接线:此处无需接线。

2、示例程序:见Cpl源文件,程序流程如下图所示。

3、运行虚拟示波器方法:打开LCAACT软件中“设置”一>“实验机”,将其中的程序段地址设为8100,偏移地址0000。

然后选择“设置”一>“环境参数”一>“普通示波”,选择“工具”一>“加载目标文件”,本实验加载C:\AEDK\LCAACT\试验软件\CPI.EXE,然后选择在“工具”栏中“软件示波器”中“普通示波”,点击开始示波器即程序运行。

以后每个实验中的虚拟示波器运行方法同上。

只是加载的程4、现象:程序执行,用虚拟示波器(CHl)观察输出点OUT(B1数模转换中),可以测量到连续的周期性三角波。

通过实验结果的图片,我们可以知道得出来的三角波的幅值为U=(3.01V+1.95V)=4.96V。

T=1.3s模拟输出来的幅值和我们输入的5V有一定的偏差。

相对误差为(5-4.96)/5=0.8%,因为0832是8为的,所以分辨率为1/256即0.004。

相比较一下本次实验的误差只有0.8%,相当于掉了两个单位的分辨率。

在允许的误差范围之内。

所以本次实验的结果还算是比较成功的。

四、实验小结通过本次实验,我对数模转换的知识理解得更加透彻,以及如何使用DAC0832进行数模转换把数字量转换为模拟量并以三角波形式输出。

还知道实践和理论是有一定差距的南昌大学实验报告学生姓名:学号:专业班级:实验类型:■验证□综合□设计□创新实验日期:实验成绩:实验二模/数转换实验一.实验要求了解A/D芯片ADC0809转换性能及编程。

南昌大学实验报告-声速测量

南昌大学实验报告-声速测量

声速测量(实验报告格式)课程名称:大学物理实验实验名称:声速测量学院:专业班级:学生姓名:学号:实验地点:104 座位号:实验时间:第周星期一下午16点开始一、实验项目名称:声速测量二、实验目的:1、学会测量超声波在空气中的传播速度方法。

2、理解驻波和振动合成理论。

3、学会逐差法进行数据处理。

4、了解压电换能器的功能和培养综合使用仪器的能力。

三、实验原理:根据声速、声波频率、波长间的关系:λfv=,测得声波的频率和波长,就可求的声速。

声波频率由信号发生器产生,可直接显示,故只需测得声波波长即可。

有驻波法和相位法。

1、驻波法实验时将信号发生器输出的正弦电压信号接到发射超声换能器上,超声发射换能器通过电声转换,将电压信号变为超声波,以超声波形式发射出去。

接收换能器通过声电转换,将声波信号变为电压信号后,送入示波器观察。

设沿x 方向射出的入射波方称为:)2cos(1x wt A y λπ-=,反射方程:)2cos(2x wt A y λπ+=,A为声源振幅,w 为角频率,x λπ2为由于波动传播到坐标x 处引起的相位变化。

所以合振动方程:y=y1+y2=wt x A cos )2cos 2(λπ;在声驻波中,波腹处声压(空气中由于声扰动而引起的超出静态大气压强的那部分压强)最小,而波节处声压最大。

当接收换能器的反射界面处为波节时,声压效应最大,经接收器转换成电信号后从示波器上观察到的电压信号幅值也是极大值,所以可从接收换能器端面声压的变化来判断超声波驻波是否形成。

移动卡尺游标,改变两只换能器端面的距离,在一系列特定的距离上,媒质中将出现稳定的驻波共振现象,此时,两换能器间的距离等于半波长的整数倍,只要我们监测接收换能器输出电压幅度的变化,记录下相邻两次出现最大电压数值时(即接收器位于波节处)卡尺的读数(两读数之差的绝对值等于半波长),则根据公式:就可算出超声波在空气中的传播速度,其中超声波的频率可由信号发生器直接读得。

南昌大学单片机实验报告及程序1

南昌大学单片机实验报告及程序1

南昌大学单片机实验报告及程序实验报告实验课程:单片机原理与应用实验学生姓名:吴晓峰学号:6100311019专业班级:电力系统及其自动化111班2013年 12 月 16 日南昌大学实验报告学生姓名:吴晓峰学号:6100311019 专业班级:电力系统111班实验类型:□验证□综合□设计□创新实验日期:实验成绩:实验一、I/O口的应用一、实验要求单片机P1.0口外接8个LED灯,P3.0口接开关,电路图如下,当开关断开时,流水灯从L1到L7依次间隔0.2秒循环点亮,在任意位置当开关合上时,流水灯便从L7灯开始,按照L7到L6的顺序点亮,晶振选用11.0592MH。

二、选择元器件1.80C512.Crystal3.CAP4.22p ceramic22p5.3watt10k6.LED-BIRG7.SWITCH三、放置元器件及连线用导线连接八位逻辑电平输出模块的K0到CPU模块的RXD(P3.0口);用8位数据线连接八位逻辑电平显示模块的JD2B到CPU模块的JD8(P1口)。

四、实验程序程序要求:用延时程序设计灯每间隔0.2秒循环点亮1、汇编程序:ORG 0000HLJMP STARTSTART: MOV SP,#60H; 设置堆栈JB P3.0,ZY; 若开关断开,P3.0为1,转到左移子程序JNB P3.0,YY; 若开关合上,P3.0为0,转到右移子程序YY: MOV A,#7FH; 右移程序ACALL YY1RETZY: MOV A,#0FEH; 左移程序ACALL ZY1RETYY1: MOV P1,A; 将A送入P1,灯从L7开始亮ACALL DELAYS; 延时RR A; 右移一位JNB P3.0,YY1; 判断开关是否合上,若合上,P3.0为0,转到YY1,继续右移JB P3.0,START; 若开关断开,P3.0为1,转到START,重新从L1灯开始左移RETZY1: MOV P1,A; 将A送入P1,灯从L1开始亮ACALL DELAYS; 延时RL A; 左移一位JNB P3.0,START; 若开关合上,P3.0为0,转到START,重新从L7灯开始右移JB P3.0,ZY1; 若开关断开,P3.0为1,转到ZY1,继续左移RETDELAYS: MOV R6,#2; 延时0.2sDELAYS2: MOV R4,#100; 延时100msDELAYS1: MOV R5,#230; 延时1msLOOP: NOPNOPDJNZ R5,LOOPDJNZ R4,DELAYS1DJNZ R6,DELAYS2RETEND四、实验心得通过本次对实验程序进行了仿真与调试,因此实验顺利完成,但有些时候还是有问题,本次试验,是我们更加对I/O口有进一步了解,是我们更好地掌握所学的知识现象:打开开关,我们观察到L1到L7灯循环亮。

汇编实验报告

汇编实验报告

汇编实验报告一、实验目的本次汇编实验的主要目的是深入理解计算机底层的工作原理,掌握汇编语言的基本语法和编程技巧,能够运用汇编语言编写简单的程序来实现特定的功能。

通过实践操作,提高对计算机体系结构的认识,培养解决实际问题的能力。

二、实验环境本次实验使用的操作系统为 Windows 10,汇编语言编译器为MASM 615。

三、实验内容(一)数据传送与算术运算1、编写程序实现将两个 16 位的整数相加,并将结果存储在指定的内存单元中。

2、实现数据在不同寄存器和内存单元之间的传送。

(二)逻辑运算与移位操作1、对给定的两个字节数据进行逻辑与、或、异或操作,并观察结果。

2、进行移位操作,包括左移和右移,理解移位对数据的影响。

(三)循环与分支结构1、利用循环结构计算 1 到 100 的整数之和。

2、根据给定的条件,使用分支结构实现不同的操作。

(四)子程序调用1、编写一个子程序,实现两个数的乘法运算。

2、在主程序中调用该子程序,并输出结果。

四、实验步骤(一)数据传送与算术运算1、打开 MASM 编译器,新建一个汇编源文件。

2、使用`MOV` 指令进行数据传送,将两个整数分别存储在寄存器`AX` 和`BX` 中。

3、使用`ADD` 指令将两个数相加,结果存储在`CX` 寄存器中。

4、最后,使用`MOV` 指令将结果存储到指定的内存单元。

(二)逻辑运算与移位操作1、在源文件中定义两个字节变量,并初始化其值。

2、使用逻辑运算指令(如`AND`、`OR`、`XOR`)对这两个变量进行操作。

3、使用移位指令(如`SHL`、`SHR`)对变量进行移位,并观察结果。

(三)循环与分支结构1、对于循环结构,使用`LOOP` 指令实现从 1 到 100 的累加。

2、在分支结构中,根据给定的条件(如比较两个数的大小),使用`JZ`、`JL` 等指令执行不同的分支操作。

(四)子程序调用1、定义一个子程序,使用参数传递的方式接收两个数,并进行乘法运算。

汇编课程设计实验报告

汇编课程设计实验报告

汇编语言程序设计实验报告专业:班级:学号:姓名:日期:湖南科技大学实验报告一实验题目:有两个数(字数据)DATA1和DATA2,把两数之和放在DA TA3中,两数之差放在DA TA4中。

实验目的:1.熟练掌握汇编语言的程序结构,学会如何使用数据定义、符号定义、模块定义等常用的批示性语句。

2.熟悉汇编语言的工作环境;学会使用汇编语言的编辑、汇编、和连接装配程序的方法;熟悉汇编语言程序的编辑-汇编-连接-运行-调试的过程3.熟练掌握用DEBUG来调试程序,掌握调试程序的反汇编、读写寄存器或存储单元、运行程序等简单的调试命令。

4.熟悉汇编语言指令,学会使用数据传送,算术逻辑运算,处理器控制等简单指令。

实验主要原理:先用数据传送指令将DATA1,DA TA2放入AX和BX两个寄存器中,分别用ADD和SUB 两个指令来计算两数之和与两数之差,再用数据传送指令将两数之和放入DA TA3中,将两数之差放入DATA4中。

最后用ret指令返回DOS程序流程图:源程序:datarea segmentDA TA1 dw 5 ;数据定义DA TA2 dw 4DA TA3 dw ?DA TA4 dw ?datarea endsprognam segmentmain proc farassume cs:prognam,ds:datareastart: push ds ;准备工作sub ax,axpush axmov ax,datareamov ds,axmov ax,DATA1mov bx,DATA2add ax,bx ;做加法mov DATA3,axmov ax,DATA1sub ax,bx ;做减法mov DATA4,axretmain endpprognam endsend startDEBUG调试关键步骤:执行mov ax,DATA1(AX)=5,传送成功执行add ax,bx(AX)=9,加法成功执行到最后ret时,查看数据段内容分别为5, 4,9,1 说明加法,减法都成功执行运行结果:(DATA3)=9(DA TA4)=1实验报告二实验题目:数据段中有一个字符串DATA1,串长为3,内容为‘CDE’,还有另一个字符串为DATA2,长度为4,内容为‘ABCD’。

南昌大学实验报告模板

南昌大学实验报告模板
三、实验仪器:
电阻箱、滑线变阻器、检流计、箱式惠斯通电桥、待测电阻、低压直流电源
四、实验内容和步骤:
1. 将箱式电桥打开平放,调节检流计指零
2. 根据待测电阻(线式电桥测量值或标称值)的大小和R3值取满四位有效数字原则,确定比例臂的取值,例如Rx为数千欧的电阻,为保证4位有效数字,Kr取0.1
3. 调节R3的值与Rx的估计值相同,按下B0和G1按钮,用逐步逼近法粗调电桥平衡,再按下B0和G0细调电桥平衡,可得
南昌大学物理实验报告
课程名称:大学物理实验
实验名称:惠斯登电桥
学院:化学学院专业班级:应用化学161班
学生姓名:高泽洲学号:**********
实验地点:实验B210座位号:05
实验时间:第4周星期一下午四点开始
一、实验目的:
1. 掌握电桥测电阻的原理和方法
2. 了解减小测电阻误差的一般方法
二、实验原理:
3.待测电阻两端接触电阻均可造成测量结果偏大
4.实验中周围的电子设备干扰
5.电阻随温度变化有所改变
6.选择的1R和2R过小造成系统误差,增大灵敏度
七、思考题:
1若在图1-11中的AC间接入检流计,,BD间接电源,电桥平衡时Rx=
.Rx=(R3/R2)R1
2.电桥平衡的调节方法有几种,常用哪一种?
两种,一种是固定R3,调整R1与R2的比值。另一种是固定R1与R2的比值,调整R3,。一般采用后一种。3.为了电路安全。调小是为了使实验数据明显。防止短路。
2mV
200mV
20mV
2mV
4078.7
4081.4
4081.0
1395.5
1395.5
1395.5
2410.6

汇编 实验报告

汇编 实验报告

汇编实验报告汇编实验报告引言:汇编语言是一种低级语言,用于编写计算机程序。

在计算机科学领域中,汇编语言是一门重要的学科,它可以帮助我们更深入地了解计算机的内部工作原理。

本实验报告将介绍我在学习汇编语言过程中的实验经历和所学到的知识。

实验一:汇编语言的基本概念在本实验中,我首先学习了汇编语言的基本概念。

汇编语言是一种用于编写机器指令的低级语言,它直接操作计算机的硬件。

通过学习汇编语言,我了解了计算机内存、寄存器、指令和数据的存储方式,并学会了如何编写简单的汇编程序。

实验二:汇编语言的数据表示在这个实验中,我学习了汇编语言中的数据表示方法。

汇编语言中的数据可以用不同的方式表示,例如二进制、十进制和十六进制。

我还学习了如何使用数据寄存器和内存寻址来处理不同类型的数据。

实验三:汇编语言的指令集在本实验中,我学习了汇编语言的指令集。

汇编语言中的指令可以分为数据传送指令、算术运算指令、逻辑运算指令和控制指令等多种类型。

通过学习不同类型的指令,我可以编写更加复杂和功能强大的汇编程序。

实验四:汇编语言的程序设计在这个实验中,我学习了如何使用汇编语言进行程序设计。

通过学习汇编语言的程序设计技巧,我可以编写出高效、精确和可靠的程序。

我还学习了如何使用子程序、循环和条件语句等控制结构来实现不同的功能。

实验五:汇编语言的调试和优化在本实验中,我学习了如何调试和优化汇编语言程序。

调试是指在程序运行过程中发现并修复错误的过程,而优化则是指对程序进行性能提升的过程。

通过学习调试和优化技巧,我可以提高程序的效率和可靠性。

结论:通过这些实验,我对汇编语言有了更深入的了解。

汇编语言虽然复杂,但它可以帮助我们更好地理解计算机的内部工作原理,并且可以编写出高效、精确和可靠的程序。

通过学习汇编语言,我不仅提升了自己的编程能力,还对计算机科学有了更全面的认识。

我相信,在今后的学习和工作中,汇编语言将会发挥重要的作用。

汇编实验报告

汇编实验报告

实验一(1)熟悉汇编语言程序调试环境及顺序程序设计一、实验目的及要求:1.学习及掌握汇编语言源程序的书写格式和要求,明确程序中各段的功能和相互之间的关系。

2.学会使用EDIT、MASM、LINK、DEBUG等软件工具。

3.熟练掌握在计算机上建立、汇编、连接、调试及运行程序的方法。

二、熟悉汇编语言程序调试环境1.汇编语言源程序的建立本例中给出的程序是要求从内存中存放的10个无符号字节整数数组中找出最小数,将其值保存在AL寄存器中。

设定源程序的文件名为ABC。

DATA SEGMENTBUF DB 23H,16H,08H,20H,64H,8AH,91H,35H,2BH,7FHCN EQU $-BUFDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: PUSH DSXOR AX,AXPUSH AXMOV AX,DATAMOV DS,AXMOV BX,OFFSET BUFMOV CX,CNDEC CXMOV AL,[BX]INC BXLP: CMP AL,[BX]JBE NEXTMOV AL,[BX]NEXT: INC BXDEC CXJNZ LPMOV AH,4CHINT 21HCODE ENDSEND START键入以下命令:C:\>EDIT ABC.ASM此时屏幕的显示状态如图1所示。

图1 用EDIT编辑ABC.ASM程序窗口程序输入完毕后一定要将源程序文件存入盘中,以便进行汇编及连接,也可以再次调出源程序进行修改。

2.将源程序文件汇编成目标程序文件一般情况下,MASM汇编程序的主要功能有以下3点:(1)检查源程序中存在的语法错误,并给出错误信息。

(2)源程序经汇编后没有错误,则产生目标程序文件,扩展名为.OBJ。

(3)若程序中使用了宏指令,则汇编程序将展开宏指令。

源程序建立以后,在DOS状态下,采用宏汇编程序MASM对源程序文件进行汇编,其操作过程如图2所示。

迈克尔逊干涉仪实验报告南昌大学之欧阳数创编

迈克尔逊干涉仪实验报告南昌大学之欧阳数创编

南昌大学物理实验报告课程名称:大学物理实验实验名称:迈克尔逊干涉仪学院:机电工程学院专业班级:能源与动力工程162班学生姓名:韩杰学号:5902616051实验地点:基础实验大楼座位号:二、实验原理:1.迈克尔逊干涉仪结构原理图1是迈克尔逊干涉仪光路图,点光源S 发出的光射在分光镜G1,G1右表面镀有半透半反射膜,使入射光分成强度相等的两束。

反射光和透射光分别垂直入射到全反射镜M1和M2,它们经反射后再回到G1的半透半反射膜处,再分别经过透射和反射后,来到观察区域E 。

如到达E 处的两束光满足相干条件,可发生干涉现象。

G2为补偿扳,它与G1为相同材料,有相同的厚度,且平行安装,目的是要使参加干涉的两光束经过玻璃板的次数相等,波阵面不会发生横向平移。

M1为可动全反射镜,背部有三个粗调螺丝。

M2为固定全反射镜,背部有三个粗调螺丝,侧面和下面有两个微调螺丝。

2.可动全反镜移动及读数可动全反镜在导轨上可由粗动手轮和微动手轮的转动而前后移动。

可动全反镜位置的读数为:××.□□△△△ (mm)(1)××在mm 刻度尺上读出。

(2)粗动手轮:每转一圈可动全反镜移动1mm ,读数窗口内刻度盘转动一圈共100个小格,每小格为0.01mm ,□□由读数窗口内刻度盘读出。

(3)微动手轮:每转一圈读数窗口内刻度盘转动一格,即可动全反镜移动0.01mm ,微动手轮有100格,每格0.0001mm ,还可估读下一位。

△△△由微动手轮上刻度读出。

注意螺距差的影响。

3.He-Ne 激光器激光波长测试原理及方法光程差为: 2cos d δθ=(2cos (21)()2k d k λδθλ==+⎧⎪⎨⎪⎩明纹)暗纹当θ=0时的光程差δ最大,即圆心所对应的干涉级别最高。

转动手轮移动M 1,当d 增加时,相当于增大了和k 相应的θ角(或圆锥角),可以看到圆环一个个从中心“冒出” ;若d 减小时,圆环逐渐缩小,最后“淹没”在中心处。

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

实验报告实验课程:汇编语言学生姓名:学号:专业班级:2012年12 月7日目录(1)汇编语言上机过程 (1)(2)串处理指令与子程序 (6)(3)中断服务程序 (19)(4)文件操作与字显示缓存 (24)实验1 汇编语言程序上机过程I------ 手工方式一.实验目的熟练掌握汇编语言程序的编辑、调试和运行的过程和方法。

了解汇编语言程序的汇编、运行环境。

二.实验内容1.掌握常用的编辑工具软件(如WORD、EDIT)、MASM和LINK的使用;2.伪指令: SEGMENT,ENDS,ASSUME,END,OFFSET,DUP;3.利用的INT 21H的1号功能实现键盘输入的方法;三.实验要求1.仔细阅读有关伪指令SEGMENT,ENDS,ASSUME,END,OFFSET,DUP的内容;2.了解利用的INT 21H的1号功能实现键盘输入的方法,了解.EXE文件和.COM 文件的区别及用INT 21H 4C号功能返回系统的方法;3.阅读下面程序段。

四.实验环境PC微机DOS操作系统或 Windows 操作系统MASM。

EXE,LINK。

EXE,DEBUG。

COM五.实验步骤程序:data segmentmessage db 'This is a sample program of keyboard and disply'db 0dh,0ah,'Please strike the key!',0dh,0ah,'$' data endsstack segment para stack 'stack'db 50 dup(?)stack endscode segmentassume cs:code,ds:data,ss:stackstart:mov ax,datamov ds,axmov dx,offset messagemov ah,9int 21hagain:mov ah,1int 21hcmp al,1bhje exitcmp al,61hjc ndcmp al,7ahja ndand al,11011111bnd:mov dl,almov ah,2int 21hjmp againexit:mov ah,4chint 21hcode endsend start实验步骤:1.用用文字编辑工具(记事本或EDIT)将源程序输入,其扩展名为.ASM。

2.用MASM对源文件进行汇编,产生.OBJ文件和.LST文件。

若汇编时提示有错,用文字编辑工具修改源程序后重新汇编,直至通过。

3.用TYPE命令显示1产生的.LST文件。

4.用LINK将.OBJ文件连接成可执行的.EXE文件。

5.在DOS状态下运行LINK产生的.EXE文件。

即在屏幕上显示标题并提示你按键。

每按一键在屏幕上显示二个相同的字符,但小写字母被改成大写。

按ESC 键可返回DOS。

若未出现预期结果,用DEBUG检查程序。

汇编语言程序上机过程II-------集成环境一.实验目的熟悉汇编集成环境RADASM。

二.实验内容熟练掌握RADASM编程环境,对照实验一,理解集成环境的优势。

三.实验要求1.仔细阅读有关伪指令SEGMENT,ENDS,ASSUME,END,OFFSET,DUP的内容;2.了解利用的INT 21H的1号功能实现键盘输入的方法,了解.EXE文件和.COM 文件的区别及用INT 21H 4C号功能返回系统的方法;3.阅读下面程序段。

四.实验环境PC微机DOS操作系统或 Windows 操作系统汇编集成环境RADASM五.实验步骤(1).首先新建一个在DOS下的工程。

(2).建好后可以在其他磁盘打开ASM文件,或者是直接复制后粘贴在编译器中。

(3).通过编译器进行编译检错,没错就连接,构建,最后运行。

(4).若是没有输出正确的结果,可以在DOS调试器中运行,一步步检查程序的运行。

知道结果输出正确。

程序:data segmentmessage db 'This is a sample program of keyboard and disply'db 0dh,0ah,'Please strike the key!',0dh,0ah,'$' data endsstack segment para stack 'stack'db 50 dup(?)stack endscode segmentassume cs:code,ds:data,ss:stackstart:mov ax,datamov ds,axmov dx,offset messagemov ah,9int 21hagain:mov ah,1int 21hcmp al,1bhje exitcmp al,61hjc ndcmp al,7ahja ndand al,11011111bnd:mov dl,almov ah,2int 21hjmp againexit:mov ah,4chint 21hcode endsend start执行完后可以得到输出结果:六.实验心得这次实验通过两种不同的方式来运行这些指令,来体会这些指令的作用。

第一种方式是手工方式,即通过自己把指令输入,再一步步地编译,连接,执行,并且在编译时出现的错误进行调试改正。

这个手工方式很麻烦,当时就想应该有一款软件来解决这个问题,事实也确实如此,老师教给我们另一种方式,即在集成环境里来完成这些步骤,这种方式明显简单多了,当刚开始还是有点生疏,所以以后还得多上机练习。

虽然能在电脑上运行这些指令,不过对于这些代码到底是完成什么任务确不是很清楚,以后慢慢学习应该就知道了吧。

实验2串处理指令与子程序-------字符处理一. 实验目的1.熟悉串操作指令的功能与应用;2.掌握串操作指令的寻址方式及使用方法,编写常用的字符串处理程序。

二.实验内容1.字符串统计。

从键盘最多输入80个字符存放在STR开始的存储区中,统计其中含有小写字母的个数,将统计结果以两位十进制数显示在屏幕上。

2.删除重复字符。

从键盘最多输入80个字符存放在STR开始的存储区中,删除其中重复的字符,输出删除处理后的字符串。

三. 实验要求1.认真预习有关串操作的指令极其寻址方式的特点,能够正确使用串操作指令,并准备好数据。

2.依题意分析给出程序设计算法。

四.实验环境PC微机DOS操作系统或 Windows 操作系统MASM.EXE,LINK.EXE,或宏汇编集成环境RADASM五.实验步骤1.统计小写字母个数的程序清单:DATA SEGMENTMSG1 DB 'Input a string:',0AH,0DH,'$'MSG2 DB 'The number of lowercase letter is:$'STR DB 80 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE, DS:DATASTART: MOV AX, DATAMOV DS, AX;输出提示LEA DX,MSG1MOV AH,9INT 21HLEA DI, STRMOV CL, 0 ;CL用来记录输入字符数AGAIN: MOV AH, 1INT 21HCMP AL,0DHJZ DONE ; 输入回车键则转DONEMOV [DI],ALINC DIINC CLJMP AGAINDONE: LEA SI,STRMOV CH,0 ;CX保存输入字符数MOV BL,0 ;BL用来统计小写字符个数CLDCYCLE: LODSBCMP AL,'a'JB NEXTCMP AL,'z'JA NEXTINC BLNEXT: LOOP CYCLE;回车换行MOV AH,2MOV DL,0AHINT 21HMOV DL,0DHINT 21H;输出提示LEA DX,MSG2MOV AH,9INT 21H;以下显示输入小写字母个数的两位十进制数 MOV AL,BL ;小写字符个数送ALMOV AH,0 ;AX存放小写字符个数MOV CL,10DIV CL ;十位数在AL中,个位数在AH中 MOV BX,AX ;十位数在BL中,个位数在BH中 MOV DL,BLMOV AH,2OR DL,30HINT 21H ;输出小写字母个数的十位数字 MOV DL,BHOR DL,30HMOV AH,2INT 21H ;输出小写字母个数的个位数字MOV AH,4CHINT 21HCODE ENDSEND START2.删除字符串中重复字符的源程序清单:DATA SEGMENTSTR DB 80 DUP(?)LEN DW ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATASTART: MOV AX,DATAMOV DS,AXMOV ES,AX ;初始化数据段和附加段为同一段值LEA SI,STR ;SI<=输入串的首地址;从键盘输入字符串MOV CL,0 ;CL用来存放输入字符数AGAIN: MOV AH,1INT 21HCMP AL,0DH ;回车结束输入JZ IN_DONEMOV [SI],ALINC SIINC CLJMP AGAININ_DONE: MOV CH,0 ;CX存放输入字符数MOV LEN,CX ;将输入字符数保存到LEN;将输入字符串中重复出现字符替换为0LEA SI,STR ;SI<=输入串的首地址MOV DI,SIINC DIAGN: CMP CX,1JZ OK ;只有剩一个字符就结束替换PUSH CX ;保护外层循环计数MOV AL,[SI]AND AL,ALJZ NEXT ;当前字符已被替换为0L1: CMP AL,[DI]JNZ L2MOV BYTE PTR[DI],0L2: INC DILOOP L1 ;内部循环,扫描当前字符后面是否与当前字符相同,相同则用0替换 NEXT: INC SIMOV DI,SIINC DIPOP CXLOOP AGNOK: ;将那些被替换成0的字符去掉LEA SI,STR ;SI<=输入串的首地址MOV CX,LENRPT: AND CX,CXJZ RTN ;CX=0结束子程序MOV AL,[SI]AND AL,ALJNZ NEXT1 ;当前字符不是被替换为0的字符 PUSH CXMOV DI,SIXOR BX,BXCLDREPZ SCASBJNZ L3POP CXJMP RTN ;后面全是0,不用再继续L3: DEC DIMOV AL,[DI]MOV [SI],ALMOV BYTE PTR[DI],0POP CXNEXT1:INC SIDEC CXJMP RPTRTN: ;回车换行MOV AH,2MOV DL,0AHINT 21HMOV AH,2MOV DL,0DHINT 21H;输出结果LEA SI,STR ;SI<=输入串的首地址MOV CX,LENMOV AH,2LOP: MOV DL,[SI]CMP DL,0JZ EXITINT 21HINC SILOOP LOPEXIT: MOV AH,4CHINT 21HCODE ENDSEND START串处理指令与子程序-------子程序一.实验目的1.掌握主程序与子程序之间的调用关系及调用方法;2.掌握子程序调用过程中近程调用与远程调用的区别;3.掌握通过堆栈转送参数的方法。

相关文档
最新文档