版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验二-分支程序实验和循环程序实验实验二分支程序实验和循环程序实验【上篇】分支程序实验、知识点1、控制转移类指令无条件转移指令JMP、条件转移指令Jcc2、单分支结构双分支结构注意分支条件的选择:到分支的下一条指令;当条件满足时,直接转否则,执行单分支语句段。例如,求AX中数据的绝对值:CMPAX,0JGENONEGNEGAXNONEG:MOVRESULT,AX思考:如果条件改为JL,以上分支程序段如何改写?是比较程序段的复杂度?3、双分支结构双分支结构中条件的选择任意,但特别注意:当分支语句段1结束后,一定要用JMP指令跳过分支语句段2,即跳到分支结束的位置。例如,判断AX中的数据的符号,若
2、为非负数,则0sign;否则,-1sign。CMPAX,0JGENONEGMOVSIGN,-1JMPEND0NONEG:MOVSIGN,0END0:4、分支结构程序测试用例的设计基本准则:测试用例要满足能够使每个分支都能执行一次,特别注意边界数据的测试。换句话说,就是首先分析每个分支条件,找出使条件成立、不成立时的数据取值范围,然后从每个范围中选一个数据,形成一个测试用例;另夕卜,边界数据作为单独一个测试用例。【举例说明】(1) 单分支/双分支结构的测试:比如“判断AX中的数据的符号”程序段,需要设计三个测试用例,即分AX0AXSETJ7DIH5TftZAmnimtcd:KDriueCismo
3、untedasloca1directoryd:XC:ScdinasniSC:nASf6masmriicr-Qsoft(ft)riacruAssemblerLtersiuii5,0GCopyright(C)MicrosoftCorp1931-19851387+Allrightsreserved,SourceFiInsaneASM:D0SBox0.7CpjpeegeyeL3Tie5kjp0,Procram;C:Xdrm殳mH|C:MASM5WHEhtiMicrosoft(R)MaceoAsse*nblerItersion5.0GKupyriyJil(C)lilct-uufICorp1981-130
4、5,107.A11riylihifcKeiAid.L.ASHJ:tUUttwo.OBJ:LNUL.LST1:(NUL.CRF1!Sourcer1lenaneObjectfilenaneSailPCelistingCrossreFprenre51770464774DgicssymbolspacefreeQHarnIngErrorsGSeiwtreErrorsC:MiASH5lnkMicrosoft(P)Over1ayLinkerktersion3,&GCopyrightC)MicrosoftCorp1933-1987,fillrigirtsreserved.ObjectliodnlesOBJ:_
5、卜:气MASKSlinkMicrosoft(fl)OverlayLinkerUerslcm3.B0Copyrigftit(C)MicrosoftCorp1S83-1987.,Al1rightsreserued.ObjectModules(.OBJ1:twoHunFileLIUJ.EXE:ListFileHJL.mPJ:Libraries.LIB;LINK:uarninqL4GZ1:nostacksegmentObjectModules(.OBJJ:twoRufFileLTUJ.EXE1:ListFileNUL.mPl:Libraries.LIB】:LINK:uarningL4G21:nosta
6、cksegmentC:MASM5twoBaw.uaiiwfc-frmEFHE,5,-&誉兽*jwrutrm专IVnQ443ri|lTM!HHfV-i*REDM:EEnCWIU=!iflvBLjALtflvDL副皿cwjar*pv;I.l1l:ilillrc.vFMdlulmdlulNWflMIWiflvbL4LDDLrWa5DL.9JDEWFT5-*DIlEl:HiDaDL#HIVIK219H1V他河IK21三I/.谒口_,I:LHSOFTMiFigE*Vt*um*n*vbrnniEAilft.m?,女辱囱中费由由:fl刊*CH|iiTV173l-|MnWiFh-IL-XJMi#UiM-Edi
7、lucXVIf.A阡Ue-NiEm显示AL中两位十六进制数程序TWO.ASMcEsNA1c)EsQNAcT;匚,-1TD;2LT2DT-3AAAC97Ad2显示高位BO972显示低位返回DOS【下篇】循环程序实验-、知识点(1) 1、常用循环结构的汇编语言实现对于确定循环次数的循环结构,一般使用LOOFW令构成循环,LOO件旨令中的标号位循环体的起始位置。但在循环之前要将循环次数送CX对于循环次数不定的循环结构,一般用Jcc指令与标号一起构成循环。循环结构的汇编语言程序一般包含三部分,即循环初始部分循环之前准备相应的条件,如循环次数、相关变量/寄存器赋初值等;循环体重复执行的程序代码,其中包含
8、改变与循环条件有关的值;循环控制部分判断循环条件,决定是否继续循环。2、循环程序的测试技巧单步调试与分段调试结合:即对循环体内部的程序段的测试用单步执行的方法,执行12遍循环体,观察并分析每一步的结果及程序流程;对于整个循环体程序段的测试,一般用G命令分段调试,通过结果判断循环体的正确程度。二、实验内容1、编写一个程序,判别键盘上输入的字符;若是1-9字符,则显示之;若为A-Z或a-z字符,均显示/c,;若是回车字符CR俱ASCII码为0DH),则自动结束程序,若为其它字符则不显示,循环等待新的字符输入。三、实验步骤1、用记事本编写.ASM源程序。2、对源程序进行汇编及连接,产生.EXE文件四
9、、实验报告要求完成实验内容,截图显示,重点画出程序的流程图。实验代码DATASEGMENTDB0DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATAMAINPROCFARPUSHDSSUBAX,AX;AX清零PUSHAXMOVAX,DATAMOVDS,AX;DATA段地址给DSNEXT:MOVAH,07;INPUTCHARACTERINT21HCMPAL,0DHJEOVER;enterCMPAL,0JGEDA0;=0JMPNEXTDA0:CMPAL,9JLEDA09;=aJMPNEXTDA_LA:CMPAL,ZJLECHR;AZJMPNEXTCMPAL,aJGEDA
10、_LAJMPNEXTDA_GA:CMPAL,zJLECHR;azJMPNEXT;/DA09:MOVAH,02MOVDL,AL;DISPLAYNUMBERINT21HJMPNEXTCHR:MOVAH,2MOVDL,c;DISPLAYCHARACTER:cINT21HJMPNEXTOVER:RET;BACKMAINENDPCODEENDSENDMAIN实验截图:(1).IT*Ba另a)Ea四z*iiid*1|4U*anhewin嗣m畔fhinit怔teiiiimm-:f八骊-HttQAE*|.,f讽巳5fli-WJkCWtl.&Mi,wrtHi*-a-Ckf-mOffnOLg.村孔金通叫营仲膏nv
11、miIiStsb+PHeBT鹿w+电匚nn守心口I观*r:Kr#TW-MffflF置更gMl魔调洋度:D0*5LW兑,磨*B,眼季菱*:1皂*lM|AIHI-CDfIftMTHTDLEaVtlCXJini*_*?JHUIMWEIHI71Huf|IDEMlJH*HEClCHfJLKIMK;Py?=T,j-.DIfrnc-iWjTWMmumL好I?|i?Slw?F.gfLNEEnL.f|DOSBox0.74rCpuspeed3300cycles,FrarreskipQProgramDCSBOK1DieDOSBuxTeam11LIpz/wwubdosboxkcomZ;3ETBLftSTER=fiZ0
12、17DIH5T&ZAmountcd:DriueCismountedaslocaldirectoryi:Z:c:C:cdmasinEC:SMAStfiimxmcnmtrnlMicrossPtCR)MncroAssemblerOrsion5.0GCnriglrtCC)MicrosflftCorp19B1-15R5j1587.A11rightsresfirvwl.ObjectfilenaneIconlrol.OBJ:Source11stingINULLST:CrossrefcrcnceLNUL.CPFJt51746&d700DytcssymbolspacefreeOkkirninyErrorsOSeuereErrorsC:MASrt5C:MASrSlinkMicrosoft(R)QuerlaylingerUersion3CopyriglitIC)riicrosoftCorp1583-UH?.6。Allrightsreserve!.ObjectModules.OBJJ:contra1RunFileLCONTFIDL.EXE:ListFileNUL.MAPJ:Libraries.LIB:L1HK:uarningL4GZ1:nostacksegmentrfMa整ME、riicrosoft(KJOmerlagLinkerUtersionJ.bfcC
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 苗木供货、栽植、养护、验收及售后服务全流程方案
- 物资申购采购入库保管出库管理制度
- SolidWorks减速器参数优化课程设计
- 保利集团质量问题整改及跟踪验证方案
- lcd显示时钟设计课程设计
- 游戏公司创意部总监的面试策略
- 67.-XX区实验初级中学2026年春季学期初一历史趣味教学活动实施方案
- 乡镇补贴考勤制度
- 四班三倒考勤制度
- 严格规范考勤制度
- 数字经济概论-完整全套教学课件
- 苏教版高中数学公式知识点汇总
- 代理诉讼赡养费授权委托书
- 现金盘点表完整版
- 《呼兰河传》读书交流课件
- 复旦大学体育理论考试题库-基础题
- 体外放射分析-2 RIA与IRMA教材课件
- 节后复工安全教育培训 节后安全教育内容
- 涉外婚姻、收养、继承、公证法律制度课件
- 孕前优生健康检查
- 竞争法 刘继峰
评论
0/150
提交评论