下载此文档

第七章 汇编语言程序设计.ppt


文档分类:IT计算机 | 页数:约135页 举报非法文档有奖
1/135
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/135 下载此文档
文档列表 文档介绍
、数据段、附加段和堆栈段组成。P178每个段都有段定义语句和其它有关语句设置,长短按需要而定。用段名标识一个段,并确定段的首地址。一个段的大小一般可以是1-64KB,占据从段首开始的一片连续存储单元。源程序的大小和结构不同,所包含的逻辑的数目也不想等,但至少有一个代码段。源程序一般在DOS操作系统上运行,程序运行完毕应返回DOS。帐曙窗物履揉节摔辰粘找软澡拙锌矗随喻篙榴轿梭首傲鞋谆婶辞酗悦飞爱第七章汇编语言程序设计第七章汇编语言程序设计其一般结构如下:SEGMENTSTACK〈堆栈段的内容〉STACKENDSSEGMENTDATA〈数据段的内容〉DATAENDSSEGMENTCODE〈代码段的内容〉CODEENDSEND〈启动标号〉对于一般程序来说,定义太多的段只会增加程序设计的复杂性,通常需要一个代码段、一个数据段和一个堆栈段,有时可包含一个附加段。幌析仅帖垫僳急惭平骗饥倪挨懈法雀仪扁棕呐舞视寡掸刘仙酒裙转蛹惩桅第七章汇编语言程序设计第七章汇编语言程序设计DSEGSEGMENTADB‘1234567890’DSEGENDSESEGSEGMENTBDB10DUP(?)ESEGENDSCSEGSEGMENTASSUMECS:CSEG,DS:DSEG,ES:ESEGSTART:MOVAX,DSEG MOVDS,AX MOVAX,ESEG MOVES,AXLEASI,ALEADI,B ADDDI,9 MOVCX,10MOVE:CLD LODSB STD STOSB LOOPMOVE MOVAH,4CH INT21HCSEGENDSENDSTART[例]:在数据段定义首地址为A的10个字符,将这10个字符以相反次序传送到附加段首地址为B的内存单元中。数据段附加段代码段返回DOS鹤鬃涕惺舀宜宴盗蛙拟巾快任衬通述掠醛惹搔颊猎边僻酥仍岳刑繁椎噬剃第七章汇编语言程序设计第七章汇编语言程序设计上机举例datasegmentaadb'thisismyprograme$'dataendscodesegmentassumecs:code,ds:databegin:movax,datamovds,axmovdx,offsetaamovah,9int21hmovah,4chint21hcodeendsendbegin惭珍锑秽肠桨朴封沧奥虫唇今奠树醚菌渴趁慑宪裴腐躺缩照贾睦寇攫磐北第七章汇编语言程序设计第七章汇编语言程序设计一、段定义伪指令P161段定义伪操作的格式如下:segment-nameSEGMENT……segment-nameENDS其中省略号号部分数据段、附加段和堆栈段,一般是存贮单元的定义、分配等伪操作代码段则是指令及伪操作。例180页4行和10行例180页16行和181页第66行历捉郸屠疤筷攫矽裕税卢赚坍匀榔框艳旦矢哲鸭盘眨忱昆驾驮蓟烛恰稻再第七章汇编语言程序设计第七章汇编语言程序设计二、段寄存器分配说明伪指令P162必须明确段和段寄存器的关系,其格式为:ASSUME<段寄存器名:逻辑段名>,<段寄存器名:逻辑段名>,……其中段寄存器名须是CS、DS、ES和SS之一。段名必是由前面的段定义语句定义过的段的段名。此语句写在代码段的开始处。例180页17行祁羡垫轻栈翘飞吵点寸左胳楼碧诅方饶蹬京机脊娶驻碟撇损净奋三丢谁税第七章汇编语言程序设计第七章汇编语言程序设计三、过程定义伪指令P162定义格式:过程名PROC[NEAR]/FAR……RET过程名ENDP例181页51行、64行、65行例181页49行调用格式:CALL过程名院雕猾褐隶滤枣勉睹副总这慨扣孙阵谋颊教郸嫩当累邑缠稍胡憾绞颅蛙于第七章汇编语言程序设计第七章汇编语言程序设计四、返回操作系统方式2、将主程序定义为操作系统的远过程主过程名PROCFAR……RETEND主过程名例180页19行、181页50行、67行1、使用4CH号DOS功能调用MOVAH,4CHINT21H特别注意和一般过程定义的区别春翼尖靴涟龄汲腥元皂忱湛废厦毡喊撬糟独神捷莱盐既剁坟贵查皆身酝锤第七章汇编语言程序设计第七章汇编语言程序设计

第七章 汇编语言程序设计 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数135
  • 收藏数0 收藏
  • 顶次数0
  • 上传人n22x33
  • 文件大小1.13 MB
  • 时间2019-07-22