9讲:程序举例、DOS功能调用.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
9讲:程序举例、DOS功能调用

第九讲 程序举例、DOS功能调用 三、循环结构 1.初始化 2.处理部分 3.控制部分 4.结束部分. 例:100个字节数据从3000H:0100H送到3000H:0200H单元. 程序框图见下图3-6所示. 1 (a)不允许0次循环 (b)允许0次循环 ;circle1.asm cycular program structure (a) ;unclude 0 cycle mov ax, 3000h mov ds, ax mov si, 0100h mov di, 0200h mov cx, 100 11: mov al, [si] mov [di], al add si , 1 add di, 1 loop 11 int 20h ;circle asm cycular program structure(b) ;include 0 cycle mov ax, 3000h mov ds, ax mov si, 0100h mov di, 0200h mov cx, 100 inc cx 11: dec cx jz 12 mov al, [si] mov [di], al inc si inc di jmp 11 12: int 20h 例:延时100ms程序 MOV BL,10 DELAY:MOV CX,2801 WAIT:LOOP WAIT ; 10mS DEC BL JNZ DELAY 延时时间=2801×T0×10 例:3-6 气泡排序法 典型程序,自阅 四、子程序结构 调用过程: 通用性:入口参数 出口参数 参数传递方法: 1.用REG,少量参数 2.用程序M传递 3.用堆栈M传递 (一) 用程序M传递参数 在主程序中,将参数放在 CALL后面.例: 主程序 … CALL ADDSUB NUM1 DD ;被加数 NUM2 DD 5678H ;加数 BUFFER DD ? ;和 返回地址 子程序: PUSH BP 若EA(NUM1)=IP0 MOV BP,SP … MOV BX ,[BP+2] MOV CX ,CS:[BX] MOV SI ,CS:[BX+2] … ADD BX ,12 ;IP0+12 MOV [BP+2] ,BX;返回地址入栈 … POP BP RET 若传送某变量的地址: 主程序: NUM1 DW OFFSET VAL1,SEG VAL1 子程序: LDS SI,DWORD PTR CS:[BX] ; DS:SI=VAL1 的物理地址 例3-7 64位二进制数相加,自阅。 (二)用堆栈传递参数 用于参数较多,且子程序有嵌套或递归调用。自阅。 (三)子程序的递归调用 子程序自身调用。自阅。 3-6 操作系统资源的使用 两种资源: 1.与硬件相关的基本I/O系统(BIOS调用). 例: INT 16H ;键盘I/O 2.与硬件无关的基本I/O系统, 称DOS功能调用. 功能:对系统字符I/O,磁盘控制,文件管理等 进行功能调用. DOS功能调用格式: INT 21H 调用参数在AH中. 一、字符I/O的DOS功能调用 (一)显示单个字符—02号调用 格式: MOV DL,‘字符’ MOV AH,02H INT 21H 例:在CRT上连续显示0~9数字100遍后返回DOS。用延时实现显示间隔。 ;exam3-10 asm display 0-9 sta

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档