资源描述:
《微机原理软件实验.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、微机原理实验报告专业:工业工程姓名:刘雷学号:指导老师:陈全目录软件实验一汇编语言程序的调试与运行3一.实验目的3二.实验内容3三.程序框图3四.程序清单4五.调试步骤6六.思考题6软件实验二分支程序设计14一.实验目的14二.实验内容与要求14三.程序框图15四.程序清单:16五.思考题17软件实验三循环程序设计18一.实验目的18二.实验内容与要求18三.程序框图19四.程序清单(将程序补充完整)20软件实验四子程序结构22一.实验目的22二.实验内容与要求22三.程序框图:23四.部分程序清单23五
2、.步骤25六.思考题25软件实验一汇编语言程序的调试与运行一.实验目的1.学习数据传送和算术运算指令的用法2.熟悉在PC机上编辑、汇编、连接、调试和运行汇编语言程序的过程。二.实验内容将两个多位十进制数相加,要求被加数和加数均以ASCII码形式各自顺序存放在DATA1和DATA2为首的5个内存单元中,结果送回DATA1处。三.程序框图图1.1两个多位十进制相加程序流程图四.程序清单DISPMACROXMOVDL,X;要显示的字符送DL寄存器MOVAH,02H;DOS功能调用号是02HINT21H;21H中
3、断程序是DOS功能调用ENDMDATASEGMENTDATA1DB'12732'DATA2DB'06815'NEQU$-DATA2DATAENDSSTACKSEGMENTSTACKSTADB20DUP(?)TOPEQU$-STASTACKENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACK,ES:DATASTART:MOVAX,DATAMOVDS,AXMOVAX,STACKMOVSS,AXMOVAX,TOPMOVSP,AXLEASI,DATA1;☆MOVBX,0MOV
4、CX,NCALLDISPL;显示被加数DISP'+'LEASI,DATA2MOVBX,0MOVCX,NCALLDISPL;显示加数DISP'='LEADI,DATA1MOVCX,NCALLADDA;调用加法子程序LEASI,DATA1MOVBX,0MOVCX,NCALLDISPL;显示运算结果DISP0DHDISP0AHMOVAX,4C00HINT21HDISPLPROC;显示子程序DS1:MOVAH,02HMOVDL,[SI+BX]INT21HINCBXLOOPDS1RETDISPLENDPADDAPR
5、OC;加法子程序PUSHCXMOVBX,0AD1:SUBBYTEPTR[SI+BX],30HSUBBYTEPTR[DI+BX],30HINCBXLOOPAD1POPCXPUSHCXMOVBX,N-1;☆☆CLCAD2:MOVAL,[SI+BX]ADCAL,[DI+BX]AAAMOV[DI+BX],ALDECBXLOOPAD2POPCXPUSHCXMOVBX,0;☆☆☆AD3:ADDBYTEPTR[DI+BX],30HINCBXLOOPAD3POPCXRET;☆☆☆☆ADDAENDPCODEENDSENDS
6、TART五.调试步骤1.编辑源程序,建立一个以后缀为.ASM的文件.2.汇编源程序,检查程序有否错误,有错时回到编辑状态,修改程序中错误行。无错时继续第3步。3.连接目标程序,产生可执行程序。4.TDEBUG调试可执行程序,记录数据段DS:0~DS:10的内容。进入TDEBUG程序后。执行程序至星号处DS:0H~DS:0AH的内容☆(CS:000FH)31323733323036383135☆☆(CS:0076H)01020703020006080105☆☆☆(CS:0086H)0109050407000
7、6080105☆☆☆☆(CS:0090H)313935343700060801055.在操作系统状态下,运行程序,并记录屏幕显示内容。被加数加数屏幕显示内容127320681519547107324369154423650871763182718六.思考题1.将上述程序改为5位数相加,结果为6位数的加法程序。(需考虑进位)新的程序清单:DISPMACROXMOVDL,X;要显示的字符送DL寄存器MOVAH,02H;DOS功能调用号是02HINT21H;21H中断程序是DOS功能调用ENDMDATASEGM
8、ENTDATA1DB'82732';修改后的5位数,相加为6位数!DATA2DB'36815'NEQU$-DATA2DATAENDSSTACKSEGMENTSTACKSTADB20DUP(?)TOPEQU$-STASTACKENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACK,ES:DATASTART:MOVAX,DATAMOVDS,AXMOVAX,STACKMOVSS,AXMOVAX,T