




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.评阅汇编语言程序设计报告 五姓名 学号 时间 指导老师 五、 数据处理及输入输出 实验1. 实验目的及要求目的:1) 全面掌握输入和输出的中断功能调用(键盘和显示器)2) 掌握子程序的定义和调用3) 学会编制良好风格的汇编语言程序要求:1) 在实验四的基础上,在屏幕上开设二个窗口(如左右或上下)2) 定义输入缓冲区(最多输入50个字符)3) 在第一个窗口输入(要求有输入提示)4) 后台程序完成实验四的工作5) 结果显示在第二个窗口(要求有输出提示)6) 所有程序必须以子程序方式体现(除了初始化和程序结尾)7) 必须在程序中做好子程序的功能说明以及参数说明8) 注意调试结果,并做好记录。2. 实验源代码.model small.386.model small.386DATAS SEGMENTSTRING1DBPlease input a string:$ STRING2DBPlease input a character:$ SORT_STRDB SORTED STRING:$ FIRST_STRDBFIRST LOCATION:$ LAST_STRDBLAST LOCATION:$ SUM_STRDBSUM:$ BUFA DB80,?,80 dup(?) BUFB DB80,?,80 dup(?)CRLF DB13,10,$FLAG DB0FLOC DB0LLOC DB0TEN DB10SUMDB0LFLAG DB 0DATAS ENDS;定义宏指令 清屏CLEAR MACRO A,B,C,D MOV AH,6 MOV AL,0 MOV CH,A MOV CL,B MOV DH,C MOV DL,D MOV BH,7 INT 10H ENDM;宏指令 向上卷动SCROLL MACRO CNT,ULROW,ULCOL,LRROW,LRCOL MOV AH,7 MOV AL,CNT MOV CH,ULROW MOV CL,ULCOL MOV DH,LRROW MOV DL,LRCOL MOV BH,70H INT 10H ENDM;宏指令 光标定位POSTC MACRO X,Y MOV AH,2 MOV DH,X MOV DL,Y MOV BH,0 INT 10H ENDM CODES SEGMENTSTART:MAIN PROC ASSUME CS:CODES,DS:DATASPUSH DSXOR AX,AXPUSH AX MOV AX,DATAS MOV DS,AX CLEAR 0,0,24,79 SCROLL 5,3,5,8,70 SCROLL 5,10,5,15,70 POSTC 3,5BEGIN: ;输入字符串MOVAH,09HLEADX,STRING1INT21HLEADX,BUFAMOVAH,0AHINT21HLEADX,CRLFMOVAH,09HINT21H ;排序CALL POP_SORT;传送CALL MOVE_TO_NEW;输入查找字符POSTC 4,5LEADX,STRING2MOVAH,09HINT 21HMOVAH,01HINT 21H;查找字符CALL FIND_CHAR;求和CALL GET_SUM;输出排序结果CALL PRINT_SORTED;输出查找结果CALL PRINT_LOCATIONMOV AH,4CH INT 21HMAIN ENDP ;=冒泡排序=POP_SORT PROC NEAR MOV BL,BUFA1DECBLLOOP1:MOV CH,BLLEASI,BUFA2LOOP2:MOVAL,SICMPAL,SI+1JLECNEXTXCHG AL,SI+1MOVSI,ALCNEXT:INCSIDECCHJNZLOOP2DECBLJNZLOOP1RETPOP_SORT ENDP;=移动=MOVE_TO_NEW PROC NEARLEASI,BUFA1LEADI,BUFB1MOVCH,BUFA1INCCHMOVE:MOVAL,SIMOVDI,ALINCDIINCSIDECCHJNZMOVERETMOVE_TO_NEW ENDP;=查找=FIND_CHAR PROC NEARLEASI,BUFB2MOVCH,0FIND:CMPAL,SIJZFOUNDJMPNEXTFOUND:CMPFLAG,1JNZFIRSTJMPLASTFIRST:INCFLAGMOVFLOC,CHINCFLOCJMPNEXTLAST:INC LFLAGMOVLLOC,CHINCLLOCCMPAL,SI+1JNZFENDJMPNEXTNEXT:INCSIINCCHCMPCH,BUFB1JNAE FINDFEND:LEADX,CRLFMOVAH,09HINT 21HRETFIND_CHAR ENDP;=求和GET_SUM PROC NEARXORAL,AL ;清零ALADDAL,FLOCADDAL,LLOCMOVSUM,AL ;求和RETGET_SUM ENDP;=输出排序结果PRINT_SORTED PROC NEARPOSTC 10,5 LEADX,SORT_STR MOV AH,09H INT 21H MOV AH,09H LEA DX,BUFB2 INT 21HLEA DX,CRLFMOV AH,09HINT 21HRETPRINT_SORTED ENDP;=输出查找结果PRINT_LOCATION PROC NEARPOSTC 12,5LEADX,FIRST_STRMOVAH,09HINT21HMOVAL,FLOC;第一个位置SUBAH,AHDIVTENADDAX,3030HMOVBL,AHMOVDL,ALMOVAH,2INT 21HMOVDL,BLMOVAH,2INT21HLEADX,CRLFMOVAH,09HINT21HCMPLFLAG,0 JZFIN ;若只找到一个,跳转到末尾;找到不止一个,输出最后一个位置及位置和 PLAST:POSTC 13,5LEADX,LAST_STRMOVAH,09HINT21HMOVAL,LLOC;最后一个位置SUBAH,AHDIVTENADDAX,3030HMOVBL,AHMOVDL,ALMOVAH,2INT 21HMOVDL,BLMOVAH,2INT21HLEADX,CRLFMOVAH,09HINT21HPOSTC 14,5LEADX,SUM_STRMOVAH,09HINT21HMOVAL,SUM;位置之和SUBAH,AHDIVTENADDAX,3030HMOVBL,AHMOVDL,ALMOVAH,2INT 21HMOVDL,BLMOVAH,2INT21HLEADX,CRL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 车轮更换与维修合同
- 看房团合同范本
- 购买矿石加工合同范本
- 个人船转让合同范本
- 家具借租合同范本
- 胎心仪推广合同范本
- 装卸货劳务合同范本
- 购车合同范本复印
- 公司门头制作合同范本
- 商品店租赁合同范本
- 项目初步验收汇报
- 2025年湖南省高考真题卷政治和答案
- 精神病患者的康复护理计划
- 语“你相遇”文启新程-2025年秋季高一语文开学第一课-2025-2026学年高中主题班会
- 额叶胶质瘤护理查房
- 菜鸟驿站标准化运营流程
- 2025年安全生产考试题库(安全知识)安全培训课程试题
- 13.2+磁感应强度+磁通量+课件-2024-2025学年高二上学期物理人教版(2019)必修第三册
- 急诊科护理月质量分析
- 结肠癌围手术期管理
- 危险废弃物及固体废物管理培训
评论
0/150
提交评论