2022年2022年汇编实验子程序设计 .pdf
《2022年2022年汇编实验子程序设计 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年汇编实验子程序设计 .pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实验五子程序结构设计一、 实验目的1、加深对子程序的理解,掌握子程序的结构。2、掌握子程序的设计、编写及调试方法。3、掌握宏定义及宏调用的方法。二、 实验内容1、已知在内存数据段中GRADE 开始单元连续存放着10 个学生的成绩,试采用子程序结构编程实现以下功能:(1)找到最高成绩,将其偏移地址存放在内存单元MAX 中。(2)统计不及格的人数,存放在内存单元COUNT 中。(3)计算平均成绩(只取整数部分) ,并在屏幕上显示。要求:将以上功能分别写成子程序,数据区定义如下DSEG SEGMENT GRADE DB 76,68,54,80,45,92,63,58,94,85 MAX DW ? C
2、OUNT DB ? DSEG ENDS 源代码:DATAS SEGMENT GRADE DB76,68,54,80,45,92,63,58,94,85 MAX DW? COUNT DB ? DATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS MAIN PROC FAR START: PUSHDS MOVAX,0 PUSH AX 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -
3、 - - - - - - 第 1 页,共 8 页 - - - - - - - - - MOVAX,datas MOVDS,AX CALL MAXGRADE CALL BUJIGE CALL AVGRADE RET MAIN ENDP MAXGRADE PROC FAR push ax push cx push si mov cx,10 mov ax,0 mov si,ax start_loop: mov ax,word ptr gradesi cmp ax,word ptr gradesi+1 jge big mov ax,word ptr gradesi+1 big: inc si loop
4、 start_loop mov max,ax pop si pop cx pop ax ret MAXGRADE ENDP BUJIGE PROC FAR PUSH SI PUSH CX PUSH AX MOV AX,0 MOV COUNT,0 MOV CX,10 LOOP_START2: MOV AX,WORD PTR GRADESI CMP AX,60 JG SMALL2 INC COUNT SMALL2: INC SI LOOP LOOP_START2 POP AX POP CX 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - -
5、 - 名师精心整理 - - - - - - - 第 2 页,共 8 页 - - - - - - - - - POP SI RET BUJIGE ENDP AVGRADE PROC FAR push ds sub ax,ax push ax mov ax,DATAS mov ds,ax mov cx,10 ;循环控制mov bx,0 mov dx,0 ;暂存总成绩avg_grade_1: mov al,gradebx cbw add dx,ax inc bx loop avg_grade_1 mov ax,dx mov bl,10 div bl ;除第一次sub ah,ah ;清零div bl
6、;除第二次push ax add al,30h mov dl,al mov ah,02 int 21h pop ax add ah,30h mov dl,ah mov ah,02 int 21h mov ah,4ch int 21h ret AVGRADE ENDP 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 8 页 - - - - - - - - - CODES ENDS END2、编写程序实现十进制数的加减运算。数据段可照如下设置(也可自己定义格式):DATA S
7、EGMENT mes1 db please input the first operand:$ ;请输入第一个数mes2 db please input the second operand:$ ;请输入第二个数mes3 db please input the operator:$ ;请输入操作符mes4 db output the Calculated Results:$ ;输出计算结果DATA ENDS 下面的结果截图仅供参考:(以输入任意非十进制字符作为输入结束)(做减法若结果为负数要输出负号)要求将输出字符串的功能段定义为宏。名师资料总结 - - -精品资料欢迎下载 - - - - -
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年汇编实验子程序设计 2022 汇编 实验 子程序 设计
限制150内