资源描述:
《接口与汇编实验二 汇编程序流程控制设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验报告学院(系)名称:计算机与通信工程学院姓名***学号***专业计算机科学与技术班级***实验项目实验二:汇编程序流程控制设计课程名称编译原理课程代码0660116实验时间实验地点软件实验室7-215批改意见成绩教师签字:实验内容:1、顺序程序设计:内存单元argx中存放一字数据x,试计算下列表达式:y=(10x+23)*3/5其中:假定结果y为字数据,并存放于result单元。要求:开始(1)x取值为学号的后两位;(2)编写流程图;AX←BUFBX←10AX←AX*BXAX←AX+23BX←3AX←AX*BXDX←0BX←5AX←AX/BX(3)编写源程序并加适当注释;D
2、ATASEGMENTBUFDW57RESULTDW?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA结束START:MOVAX,DATAMOVDS,AX第10页共10页MOVAX,BUFMOVBx,10MULBxADDAX,23MOVBx,3MULBxMOVDX,0MOVBx,5DIVBxMOVRESULT,AXMOVAX,4C00HINT21HCODEENDSENDSTART(1)将x、y单元的值通过debug中的d指令显示,并写在报告中。第10页共10页2、分支程序设计:编写程序计算如下分支函数的值:(2x+3)/4-13、2104、x
5、其它其中:x为单字节带符号数,并存于argx单元。结果存于result单元。要求:(1)画流程图;(2)编写源程序并加适当注释;DATASEGMENTARGSDB-5RESULTDW?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA第10页共10页START:MOVAX,DATAMOVDS,AXMOVAL,ARGS开始CMPAL,20JLNEXTAL←argxMOVBL,3MOVAH,0AL<20MULBLJMPDONENEXT:CMPAL,10AL=AL*3JLENEXT1MOVBL,5MOVAH,0AL<10MULBL
6、SUBAX,2JMPDONEAL=AL*5-1NEXT1:CMPAL,-1JLEAAMOVBL,2MOVAH,0AL<-1MULBLADDAX,3MOVBL,4AL=-AX*3AL=-AX*3DIVBLJMPDONEAA:NEGALMOVBL,3结束MOVAH,0MULBLDONE:MOVRESULT,AX第10页共10页MOVAX,4C00HINT21HCODEENDSENDSTART(1)程序测试:在三个区间分别选一个值测试。将x、y单元的值通过debug中的d指令显示,并写在报告中。第10页共10页第10页共10页第10页共10页3、循环程序设计计算表达式:,已知xi、y
7、单字节无符号数,xi存在于argx开始的单元,y存放于argy单元。结果存于result单元。要求:(1)画流程图;(2)编写源程序并加适当注释;DATASEGMENT(3)ARGXDB1,2,3,4,5,6,7,8,9,10(4)ARGYDB1(5)RESULTDW?(6)DATAENDS(7)CODESEGMENT(8)ASSUMECS:CODE,DS:DATA(9)START:MOVAX,DATA第10页共10页(1)MOVDS,AX(2)MOVCX,10(3)LEABX,ARGX(4)MOVAX,0(5)AA:ADDAL,[BX](6)ADDAL,ARGY(7)INCB
8、X(8)LOOPAA(9)MOVRESULT,AX(10)MOVAX,4C00H(11)INT21H(12)CODEENDS(13)ENDSTART(1)将S,Xi、y单元的值通过debug中的d指令显示,并写在报告中。第10页共10页第10页共10页