已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 汇编语言程序设计举例 一 例 现有多个有符号数200 12 45 78 500 1000 编制程序 找出最大值 放至指定的MAX存储单元中 并把数据200 12 45 78 500 1000显示出来 编制程序 设计数据段在数据段中给必要数据分配存储器单元 设计堆栈段若无堆栈指令或子程序或中断程序此段可略去 设计代码段实现要求功能 程序设计步骤 2 代码段程序方框图 初始化 把第一个数据放入AX中 把此数据放入AX中 修改存储器地址指针 比较结束吗 把AX送入最大值单元 N Y N Y 3 DATASEGMENTBUFFERDW200 12 45 500 1000COUNTEQU BUFFER 2MAXDW 用于存放最大值MES1DB 200 12 45 78 500 1000 0AH 0DH DATAENDSSTACKSEGMENTDB64DUP TOPEQU STACK 计算出堆栈指针数值STACKENDS CODESEGMENTASSUMECS CODE DS DATA SS STACKBEGIN MOVAX SEGDATAMOVDS AXMOVAX SEGSTACKMOVSS AXMOVSP TOPMOVCX COUNTLEABX BUFFERMOVAX BX INCBXINCBXDECCXAGAIN CMPAX BX JGENEXTMOVAX BX NEXT INCBXINCBXLOOPAGAINMOVMAX AXMOVAH 9LEADX MES1INT21HQQ1 MOVAH 1INT16HJZQQ1MOVAH 4CINT21HCODEENDSENDBEGIN 显示字符串 等待有无任意键按下 返回DOS结束 大于等于转 初始化DS 初始化SP 初始化SS 比较 初始化指针 改变指针 4 5 二 统计字符串长度假设某字符串为abcduvwxyz 以回车符 CRodh 结束 从头搜索字符串 统计字符串字符的个数 并在显示器上显示出串长 以16进制显示 指令 SCASB功能 AL DI 或AX DI 只反映标志位 结果不送回 自动修改DI指针 6 设计数据段在数据段中给必要数据分配存储器单元 设计堆栈段若无堆栈指令或子程序或中断程序此段可略去 设计代码段实现要求功能 程序设计步骤 7 置串指针 置串长度的初值为0 取串元素 串长度加1 把串长度的高4位转换成ASCII码并显示 返回 Y N 代码段程序框图 显示符号H 存串长度 把串长度的低4位转换成ASCII码并显示 8 十六进制转换成ASCII子程序框图 假设一位十六进制数已放在AL的8位中 AL 10 AL 37H AL AL 30H AL 返回RET Y N 9 汇编程序如下 namelength of stringanddisplayDATASEGMENTSTRINGDB abcduvwxyz 0DHL1DB CREQU0DHDATAENDSSTACKSEGMENTPARASTACK STACK S1DB100DUP STACKENDSCODESEGMENTASSUMECS CODE DS DATA ES DATA SS STACK 10 BEGIN MOVEAX DATAMOVDS AXMOVES AXLEADI STRING 设串的地址指针MOV DL 0 置串长度的初值为0MOVAL CR 串标志送入ALCLD 清DF 0 使地址自动增量AGAIN SCASB 搜索串 11 JEDONE 找到结束标志 停止INCDL 串长度加1JMPAGAINDONE LEABX L1MOV BX DL 存串长度MOVDH DL 串长暂存MOVCL 4SHRDL CL 取串长高4位MOVAL DLCALLCHANGE 将高4位转换成ASCII码放入ALMOVDL ALMOVAH 2INT21H 显示高4位 12 MOVAL DH 取暂存串长ANDAL 0FH 取串长低4位CALLCHANGEMOVDL ALMOVAH 2INT21H 显示串长低位MOVDL H MOVAH 2INT21H 显示HMOVAH 4CHINT21HCHANGEPROC 过程或子程序CMPAL 10
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 软件源代码使用许可协议
- 墙体材料技术转让协议
- 水处理药剂研发工程师考试试卷及答案
- 软装搭配设计技师考试试卷及答案
- 姐妹俩赡养老人协议书
- 镇村公交委托经营协议书
- 园区办公楼出让协议书
- 智慧城市服务合作协议
- 拆迁公租房承租补偿协议书
- 电排站水泵安装协议书
- 2025年信阳淮滨县司法局招聘合同制社区矫正社会工作者12名备考考试题库及答案解析
- 手术科室医疗质量提升措施汇报
- 三氧大自血液疗法
- 智能化建筑系统调试方案
- 检验科输血培训课件
- FABE话术应用指南
- (12)普通高中技术与工程课程标准日常修订版(2017年版2025年修订)
- 浙江省A9协作体2025-2026学年高二上学期开学联考语文试卷
- 急危重症患者病情评估与分诊
- 镇静药物的使用及注意事项
- 急救常识科普
评论
0/150
提交评论