- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
将程序分段、采用子程序或宏结构都是进行模块化程序设计
本节介绍开发大型程序时采用的方法:
源程序文件的包含
目标模块连接
;把源程序分放在几个文本文件中,在汇编时通过包含伪指令INCLUDE结合成一体
INCLUDE 文件名
可将常用的子程序形成.ASM汇编语言源文件
可将常用的宏定义存放在.MAC宏库文件中
可将常量定义、声明语句组织在.INC包含文件中
例4.21a
① 宏库文件 lt421a.mac
② 主程序文件 lt421a.asm
③ 子程序文件 sub421a.asm;dispchar macro char ;显示char字符
mov dl,char
mov ah,2
int 21h
endm
dispmsg macro message ;显示message字符串
mov dx,offset message
mov ah,9
int 21h
endm; include lt421a.mac
...
dispmsg msg1 ;提示输入数据
mov bx,offset buf
call input ;数据输入
cmp cx,0
je start4 ;没有输入数据则退出
mov count,cx
... ;显示输入的数据
... ;数据排序
... ;显示经排序后的数据
start4: .exit 0
include sub421a.asm
end;子程序源文件有3个子程序
ALdisp ;显示2位16进制数子程序(例4.10)
sorting ;排序子程序(例4.8)
input ;键盘输入子程序
还包含一个宏
convert ;;将DX两位ASCII码转换为两位16进制数;;键盘输入子程序
;入口参数:ds:bx=存放数据的缓冲区
;出口参数:cx=数据个数
input proc
push ax
push dx
xor cx,cx ;数据个数清0
input01: xor dx,dx ;输入字符清0
input02: mov ah,1 ;键盘输入一个字符
int 21h;input10: cmp al,0dh
je input30
;是回车,结束整个数据的输入
cmp al,’ ’
je input20
;是空格和逗号,确认输入了一个数据
cmp al,’,’
je input20
cmp al,08h
je input17
;是退格,丢弃本次输入的数据,出错; cmp al,’0’ ;有效数字判断(图4.5b)
jb input17 ;小于’0’,不是有效数字,出错
cmp al,’f’
ja input17 ;大于’f’,不是有效数字
cmp al,’a’
jb input11
sub al,20h ;’a’~’f’转换成大写’A’~’F’
jmp input12
input11: cmp al,’F’
ja input17 ;字符小于’a’、大于’F’,出错
cmp al,’A’
jae input12 ;是’A’~’F’,有效字符
cmp al,’9’
ja input17 ;是’0’~’9’,有效字符;input12: cmp dl,0 ;有效字符的处理
jne input13
mov dl,al
;dl=0,输入了一个数据的低位,则dl←al
jmp input02 ;转到字符输入
input13: cmp dh,0
jne input17
;dl≠0,dh≠0输入3位数据,出错
mov dh,dl
;dl≠0,dh=0输入了一个数据的高位
mov dl,al ;dh←dl,dl←al
jmp input02 ;转到字符输入;input17: mov dl,7 ;输入错误处理
mov ah,2
int 21h
mov dl,?
mov ah,2
int 21h
jmp input01 ;转到输入一个数据;;转换正确的输入数据(图4.5c)
input20: convert
jmp input01 ;转到输入一个数据
input30: convert
pop dx
pop ax
ret ;返回,出口参数已设定
input endp;;;将DX两位ASCII码转换为两位16进制数(图4.5c)
convert macro
local input21,input22
local input24,input25
cmp dl,0
;;dl=0,没有要转换的数据,退出
je input25; cmp dl,9
jbe input21
sub dl,7 ;;字符A~F,则减7
input21: and dl,0fh ;;转换低位
cmp dh,0 ;;dh=0,没有高位数据
您可能关注的文档
- 回天胶粘剂产品知识.ppt
- 回填土压实度对埋地管道耐久性的影响(1).ppt
- 回填土压实度对埋地管道耐久性的影响.ppt
- 回味经典-22款知名大牌-明星代言广告大片.ppt
- 回油喷嘴的调节方式.ppt
- 回转窑托轮的调整与维护(1).ppt
- 回转窑托轮的调整与维护.ppt
- 汇报材的制作.ppt
- 汇报及费用测算.ppt
- 汇编语言程序上机.ppt
- 北师大版小学数学三年级上册《寄书》教学设计.docx
- 统编版(部编版)语文二年级上册《雪孩子》教学设计.docx
- 统编版(部编版)语文二年级上册《八角楼上》教学设计.docx
- 北师大版小学数学三年级上册《长方形周长》教学设计.docx
- 北师大版小学数学三年级上册《丰收了》教学设计.docx
- 统编版(部编版)语文二年级上册《夜宿山寺》教学设计.docx
- 统编版(部编版)语文二年级上册《风娃娃》教学设计.docx
- 统编版(部编版)语文二年级上册《朱德的扁担》教学设计.docx
- 统编版(部编版)语文二年级上册《难忘的泼水节》教学设计.docx
- 统编版(部编版)语文二年级上册《纸船和风筝》教学设计.docx
最近下载
- 米LED路灯灯杆检验报告.pdf VIP
- 临床诊疗指南肾脏病学分册_全文.pdf
- 中小学校园防疫科普讲义中小学防控诺如病毒主题班会课件.pptx VIP
- 安永-中国房地产行业2023年业绩概览及新质态下房地产行业发展新趋势.pdf VIP
- Nikon 尼康微型单电相机 Z系列Z 6 参考手册(完整说明书)Z7Z6RM_(Sc)05.pdf
- 2024年义务教育新课标新教材培训学习PPT课件:小学语文新教材内容整体变化解读.pptx
- 上海市高一信息技术上学期期中试题.docx
- 支架和钢管柱贝雷梁现浇简支箱梁施工安全质量控制要点.pptx VIP
- 名著导读《朝花夕拾》课件(共47张ppt).pptx VIP
- 商用车行业专题:全球客车潜力可观,中国车企大有可为.docx VIP
文档评论(0)