第3章_汇编语_言程序格式.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章_汇编语_言程序格式

第3章 汇编语言程序格式 3.1 宏汇编语言格式 3.2 汇编语句表达式 3.3 伪指令 3.4 DOS系统功能调用 3.5 综合举例 3.1 宏汇编语言格式 3.1.1 宏汇编语言程序格式 3.1.2 指令语句格式 3.1.3 伪指令语句格式 3.1.1 程序格式 Stackseg segment stack db 100h dup (?) Stackseg ends Dataseg segment … Dataseg ends Codeseg segment assume cs:codeseg,ds:dataseg,ss:stackseg Start: mov ax,dataseg mov ds,ax … mov ax,4c00h int 21h Codeseg ends end start 3.1.2 指令语句格式 1.标号码:标号码的第一个字节地址,后面必须紧跟冒号“:” 。 2.指令助记符:指令助记符为语句的核心成分,表示了该语句的操作类型。 3.操作数:操作数表示指令助记符的操作对象。 3.注释:注释均以分号开始,它可占一行或多行,一般放在一条语句的后面。 Start: mov ax,4c00h ;4ch功能号 3.1.3 伪指令语句格式 伪指令语句格式如下: [符号名] 伪指令符 操作数 ;注释 1.符号名:符号名是伪指令语句的一个可选项。 2.伪指令符:伪指令符指定汇编程序要完成的具体操作,如数据定义伪指令DB、DW、DD,段定义伪指令SEGMENT,假定伪指令ASSUME等。 3.操作数:伪指令后面的操作数可以是常数、字符串、变量、表达式等,其个数由具体的伪指令决定,各个操作数之间必须以“逗号”分隔。 3.注释:伪指令的注释必须以“;”开始,其作用同指令语句中的注释部分。 a db ‘0’ ;定义字节型a变量,初值为字符0 3.2 汇编语句表达式 3.2.1 常量 3.2.2 变量 3.2.3 标号 3.2.4 表达式与运算符 3.2.5 运算符的优先级 3.2.1 常量 1.数值常量 2. 字符串常量 1.数值常量 2. 字符串常量 字符串常量是用单引号或双引号引起来的一个或多个字符。字符串常量是以各字符的ASCⅡ码表示的。如‘A’用41H 表示,字符串‘A1B2’用41H,31H,42H,32H表示。 3.2.2 变量 1.变量 2.变量的定义 a db ‘0’ ;定义字节型a变量,初值为字符0 变量具有以下三个属性: (1)段属性 MOV AX,SEG a ;AX的值为变量a所在的段地址 (2)偏移地址属性 MOV BX,offset a ;BX的值为变量a所在的有效地址 (3)类型属性 MOV CX,type a ;CX的值为变量a的类型值(1) 表达式项是给变量或指定存储单元赋予初值,它有以下几种形式: (1)数值表达式 (2) 字符串表达式 (3)地址表达式(只适用DW和DD两个伪指令) (4)? 表达式 (5)带DUP的表达式 数据定义伪指令可以为一个或连续的存储单元设置数值初值。 【例3.1】为数据段分配存储单元。 DATA SEGMENT A DB 11H,12H,13H B DW 1122H,3344H C DD DATA ENDS 上述变量的存储单元分配及初始化情况如下图3.1所示。 字符串表达式中的字符串必须用引号引起来。DB、DW、DD伪指令将字符串中的各字符均以ASCⅡ码形式存放在相应的存储单元,但表示形式各不相同。 【例3.2】为字符串分配存储单元。 DATA SEGMENT STR1 DB ‘1234’ STR2 DW ‘AB’,‘CD’,‘A’ STR3 DD ‘AB’ DATA ENDS 其存储单元分配如下图3.2所示。 (3)地址表达式(只适用DW和DD两个伪指令) 如果该地址表达式为一变量(或标号)名,用DW伪指令则是取它的偏移地址来初始化变量,用DD伪指令则是取它的段首址和偏移地址来初始化变量。 例如: BUF1 DW A BUF2 DD B 在表达式中使用重复数据操作符DUP,可以为连续的存储单元提供重复数据,其格式为: N DUP(表达式) 其中N为重复因子,只能取正

文档评论(0)

82393aa + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档