微机原理 程序格式与伪指令.pptVIP

  1. 1、本文档共48页,可阅读全部内容。
  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文档。上传文档
查看更多
4 汇编语言程序设计 主要内容 4-1 汇编语言程序格式和伪指令(难点) 汇编语言程序格式 伪指令语句 完整的汇编语言程序框架 4-2 DOS系统功能调用和BIOS中断调用 DOS系统功能调用 BIOS中断调用 4-3 汇编程序设计方法与实例(重点) 顺序程序设计 分支程序设计 循环结构程序 子程序调用 汇编语言程序格式和伪指令 汇编语言程序 汇编语言程序是由语句构成的,语句分为指令性语句和伪指令语句 指令性语句(Instruction) 要求CPU在可执行程序运行过程中的进行的操作行为,该指令产生机器码,存储在程序存储器中 伪指令语句(Directive) 要求汇编程序在汇编过程中进行的操作行为,在汇编过程结束后,伪指令不再保留任何痕迹,不产生机器码,不占用程序存储器空间 汇编语言程序格式和伪指令 指令性语句格式 标号:指令符 操作数,操作数 ;注释 1) 标号字段 标号代表本指令的符号地址,必须跟冒号“:”,这是与伪指令语句的突出区别 2) 指令符字段 指令助记符与CPU的指令机器码对应,决定于CPU的要求 3) 操作数字段 可以由常数、变量、表达式构成。 4) 注释字段 从“;”开始,直到行尾。行汇编程序,按行进行汇编 汇编语言程序格式和伪指令 伪指令语句格式 名字 伪指令符 操作数,操作数;注释 1) 名字字段: 字母打头, 名字后不能用冒号“:”,这是与指令 性语句的突出区别 2) 伪指令字段 例如:数据定义:DB,DW,段定义:SEGMENT,ENDS 3) 操作数字段 可以由常数、符号、表达式构成 4) 注释字段 从“;”开始,直到行尾。行汇编程序,按行进行汇编 数据项 2.变量 变量是代表存放在存储单元的数据 变量名,可认为是存放数据的存储单元的符号地址 变量的属性: 段值(SEG) 偏移地址(OFFSET) 类型(BYTE,WORD,DWORD) 表达式和运算符 表达式和运算符 表达式和运算符 格式: 变量名 伪指令助记符 操作数,操作数,… ;注释 变量名 伪指令助记符 N dup(操作数,操作数… ) ;注释 例: 操作数是常数或表达式 DA1 DB 10H,52H DA2 DW 1122H,34H DA3 DD 5*20H,0FFEEH 例: 操作数是字符串 FIRST DB ‘ABCDE’ SECOND DW ‘OK’ THIRD DB ‘OK’ 例: 用?定义不确定值的变量 M1 DB ? M2 DW 0D55H,? 例: 用 dup 定义重复数值 ONE DB 3 DUP(0) TWO DW 2 DUP(1,2) ARY DB 3 DUP (4 DUP (0)) 例: 用 dup 嵌套定义重复数值 THREE DB 2 DUP(1,2 DUP(20H,21H)) 例:有如下定义 TABLE1 DD 0,1,2,3 TABLE2 DB 30H,31H,32H,33H TABLE3 DB ‘12345678910 ‘ ZER DW 8 DUP(0) DEM DB ‘HELLO?’ 判断下列指令是否正确: 1. MOV AX,TABLE1 2. MOV BX,TABLE2 3. MOV AL, TABLE3 4. MOV AX, WORD PTR TABLE1 例: PORT1 EQU 3 PORT2 EQU PORT1+2 PORT3 EQU PORT2 CONT EQU CX 即: PORT1=3 ,PORT2=5 PORT3=5 ,CX与CONT意义相同 PURGE PORT1 ;解除PORT1的赋值 PORT1 EQU 10 即: PORT1 = 10 例:有如下定义 TABLE DW 30H,31H,32H,33H PORT EQU 03F8H 比较: 1. MOV AX,TABLE 2. MOV DX,PORT 例: LABEL 与变量连用 DATB LABEL BYTE DATW DW 3031H,3233H MOV AL,DATB[0] MOV AX,DATW[1] 5)地址计数器 $ 功能: $ 表示当前正在汇编的指令性指令或伪指令的偏移地址。 3)对准伪指令EVEN 将下一语句指向的地址调整为偶地址,确保存取

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档