D31_免费下载.pptVIP

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

2,绘流程图,表示算法。 起止框——表示程序的开始或结束 判断框——表示对条件的判断而作出相应的选择。 判断框一般有一个入口,两个出口: 一个是满足条件的出口(YES), 另一个是不满足条件的出口(NO)。 2)算法错误——解题的方法错误。此类错误计算机在汇编程序时不能查出,而且程序可以执行,但执行的 结果是错误的。 三,伪指令 1,数据定义及存储器分配伪指令 DB,DW,DD,DQ,DT,DUP 2)用名称代表一个(在程序中多次使用的)表达式。例如, BB EQU [BP+8];用BB代表相对寻址:[BP+8] 执行:MOV AL,BB; 等效:MOV AL,[BP+8]; 说明:用EQU定义的名称不能重复使用,用“=”定义的名称则可以重复使用。例如, EMP1 EQU 07H; EMP1 EQU EMP1+1;错 而: EMP2=07H; EMP2=EMP2+1;对 4,段定义伪指令 格式: 段名 SEGMENT [定位类型][组合类型][类别] : 定义内容 段名 ENDS 功能:确定标号或变量的偏移地址,以便汇编程序时产生可执行的物理地址。 说明: 1)定位类型——定义段起始地址的规则。 2)组合类型: ①AT表达式——规定段的段首地址。例如 CODE SEGMENT AT 1234H; 规定CODE段的段首地址为12340H。 5,段分配伪指令ASSUME 格式: ASSUME段寄存器:段名[,段寄存器:段名,…] 例如: ASSUME CS:CODE,DS:DATA,SS:STACK 说明: 1)段寄存器必须是CS、DS、SS和ES之一; 2)段名必须经SEGMENT定义过。 例如: START:MOV AX,DATA;取数据段的段地址 MOV DS,AX;装入数据段寄存器 MOV AX,STACK;取堆栈段的段地址 MOV SS,AX;装入堆栈段寄存器 6,置汇编地址计数器伪指令 汇编地址计数器符号:$ 功能:记录被汇编的程序语句的偏移地址 例如:DATA SEGMENT BUF DB ‘1234ABCD’ COUNT=$-BUF;COUNT=8-0=8 DATA ENDS 9,源程序结束伪指令END 格式:END 功能:放在源程序的最后,表示源程序结束。(注:无此语句的程序也是错误程序。) * * 3.1 汇编语言程序设计的基本方法 一,汇编语言程序设计的基本步骤 1,分析问题,建立算法。 算法——解题的基本方法和步骤。 处理框——表示处理内容,如传送、运算、输入、输出等。 S END 输入数据 条件为真? 出口1 出口1 入口 流程线——表示程序的流向。 连接框——表示程序的连接。 1 3,编写程序,落实算法。 基 本 要 求 1)要熟悉程序设计模型; 2)要熟悉指令、伪指令和寻址方式; 3)要合理分配存储器空间和工作单元; 4)多次使用的程序段要用子程序或宏指令; 5)尽可能用名称(标号和变量)来代替地址和数值。 4,运行程序,验证算法。 正确程序——无语法和算法错误 1)语法错误——不符合汇编语言规则的错误。例如,错误使用指令、伪指令,错误的寻址方式,不正确的的符号等。如: MOV AL BL;操作数间少“,”号 AND AL,OFH; XCHG DS,DX; 说明:对于语法错误计算机在汇编源程序时可以查出,并指出错误类型,有语法错误的程序是不能执行的。 二,程序的类型 1,顺序程序 2,分支程序 3,循环程序 4,子程序 2,属性伪指令 PTR——出现在表达式中,用于临时定义名称或标号的类型属性。例如,MOV AX,WORD PTR DAT1; LABEL——属性伪指令操作符,用于定义名称的类型属性。例如,TOP LABEL WORD; 3,表达式赋值伪指令EQU和“=” 格式:名称 EQU 表达式;或:名称=表达式; 功能:1)给名称赋值。例如, CNT1 EQU 100H; CNT2 EQU CNT1*2; CNT3=05H; 例如: DATA SEGMENT DAT1 DB 20H,30H; DAT2 DW 1234H,1000H; DATA ENDS; PAGE(页)——定义段起始地址的低8位为0(256B为1页) PARA(节)——定义段起始

文档评论(0)

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

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

1亿VIP精品文档

相关文档