分支结构程序设计(汇编语言)资料_第1页
分支结构程序设计(汇编语言)资料_第2页
分支结构程序设计(汇编语言)资料_第3页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

汇编语言实验报告实验名称姓 名学 号班 级

分支结构程序设计一、实验内容1输入、汇编、连接并通过Debug调试和检查运行结果。1完成将其中的最小数存入MIN单元。2输入、汇编、连接并通过Debug调试和检查运行结果。3输入、汇编、连接并通过Debug调试和检查运行结果。二、实验目的掌握分支程序的结构。掌握分支程序的设计、编写及调试方法。三、实验原理1运行调试(如图1。2、上机实验步骤:确定源程序的存放目录编辑ASM源程序用MASM.EXE汇编程序产生OBJ目标文件LINK.EXE产生EXE可执行文件执行程序3、程序执行过程的跟踪可以用DebugDebugDebug指向程序的入口,但Debug并不放弃对CPU的控制,这样,我们就可以使用Debug命令来单步执行程序,查看每一条指令的执行结果。4分支结构汇编语言中的分支结构式一种很常用的结构,就像我们高级语言中的if一些需要判断的很有用。四、实验过程1、实验环境汇编语言程序设计的实验环境如下:(1).硬件环境微型计算机(Intelx86系列CPU)一台(2).软件环境Windows98/2000/XP操作系统任意一种文本编辑器(EDIT、记事本、UltraEDIT等汇编程序(MASM.EXE调试程序(DEBUG.EXE或TD.EXE)EDITLINK.EXETD.EXE。2、实验步骤masmasm1.asm(以下实验步骤均已此作为例子说明。dosmasm1.objlink.exe连接1.obj文件,生成课执行文件1.exe.1.exe.masm1.exe文件,以我们现在掌握的知识,并不能显debug1.exet命令一步一步的3、实验源程序代码及其结构分析求几个数中的最大数1.OBJ 1.EXE)代码如下:SEGMENTBUFDB 38H,73H,1FHMAXDB ENDSCODE SEGMENTASSUME START:MOVAX,DATAMOVDS,AXMOVAL,BUFCMPAL,BUF+1JNBLP1MOVAL,BUF+1LP1: CMPAL,BUF+2JAELP2MOV LP2: MOVMAX,ALMOVAH,4CHINT21HCODE ENDSTART运行结果如下:最大数就是DS数据段中的第四个数判断几个数据是正数还是负数测试数据为: 38H,-5H,-32H,-44H,40H,-02H(2.ASM2.OBJ 2.EXE)代码如下:SEGMENTCOUNT DB BUFDB 38H,-5H,-32H,-44H,40H,-02HSTRING1DB 'FUSHU',0DH,0AH,'$'STRING2DB ENDSCODE SEGMENTASSUME START: MOVMOVDS,AXMOV MOV CL,00HMOV SI,OFFSETLP0: MOVBL,[SI]INCSIINC CLCMP CL,COUNTJNL LP4CMP AL,BLJNL LP1JMP LP2LP1: MOV DX,OFFSETMOVAH,09HINT21HJMP LP0LP2: MOV DX,OFFSETMOVAH,09HINT21HJMP LP0LP4: MOVINTCODEENDSENDSTART运行结果如下:找出几个数据中最小的数测试数为11.OBJ 11.EXE)代码如下:SEGMENTBUFDB MINDB ?ENDSCODE SEGMENTASSUME START:MOVAX,DATAMOVDS,AXMOVAL,BUFCMPAL,BUF+1JBLP1MOVAL,BUF+1LP1: CMPAL,BUF+2JBLP2MOV LP2: MOVMIN,ALMOVAH,4CHINT21HCODE ENDSTART(最小数据位于DS数据段的第四个数)测试的数据-,Y的结果保存在CX寄存器中3.ASM 3.OBJ 3.EXE)代码如下:DATASEGMENTX DB-03HWORD1DB'Y=0',0DH,0AH,'$'WORD2DB'Y=-1',0DH,0AH,'$'WORD3DB'Y=1',0DH,0AH,'$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVMOVDS,AXMOVAL,XMOVBL,00HCMPAL,BLJZ LP1JMPLP1: MOVDX,OFFSETMOVAH,09HINT21HMOVCL,00HJMPLP5LP2: CMPJL LP3JMPLP4LP3: MOVDX,OFFSETMOVAH,09HINT21HMOVJMPLP5LP4: MOVDX,OFFSETMOVAH,09HINT21HMOVCL,01HLP5: MOVINT21HCODEENDSENDSTART运行结果如下:判断几个数据的奇偶性22.OBJ 22.EXE)测试数据:38H,-5H,-32H,-44H,40H,-02H代码如下:SEGMENTCOUNT DB BUFDB STRING1DB 'JISHU',0DH,0AH,'$'STRING2DB 'OUSHU',0DH,0AH,'$'ENDSCODE SEGMENTASSUME START: MOVMOVDS,AXMOV MOV SI,OFFSETLP0: MOVBL,[SI]INCSIINC CLCMP CL,COUNTJNL LP4TEST BL,01HJE LP2JMP LP1LP1: MOV DX,OFFSETMOVAH,09HINT21HJMP LP0LP2: MOV DX,OFFSETMOVAH,09HINT21HJMP LP0LP4: MOVINTCODEENDSENDSTART实验结果如下:六、实验心得体会的编辑、编译与连

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论