微机原理与接口技术课件7.ppt

微机原理与接口技术课件7要点

3.2.4析值/属性操作符 2、属性改变操作符: 格式: 类型 PTR 地址表达式 功能:将地址表达式所指的内存单元临时指定为PTR前面所给定的类型 允许的类型有:BYTE,WORD,DWORD,NEAR,FAR 3.2.4析值/属性操作符 2、属性改变操作符: 用法: (1)、说明存储单元的类型 MOV BYTE PTR [SI],5 (2)、改变存储单元属性 A_BYTE DB 1,2,3,4 MOV AX, WORD PTR A_BYTE (3)、建立FAR标号 L_NEAR : MOV AX,0 L_FAR EQU FAR PTR L_NEAR 3.2.5段定义伪指令 1、段定义伪指令: 格式: 段名 SEGMENT [定位类型] [组合类型] [‘类别’] … 段名 ENDS 3.2.5段定义伪指令 1、段定义伪指令: 说明: (1)、段名的命名方法同符号的命名方法 (2)、关键字SEGMENT开始一个段的定义,ENDS结束 一个段的定义 (3)、SEGMENT与ENDS之间的内容为一个逻辑段 (4)、段定义的参数可以省略,一般情况都省略 3.2.5段定义伪指令 1、段定义伪指令: 示例: DATA SEGMENT A DB 1,2,3,4       B DB ‘ABCD’ DATA ENDS 3.2.5段定义伪指令 2、地址计数器: 每个逻辑段都有一个地址计数器,用于指出该段已经使用的存储单元数,地址计数器名字为:$,在程序中可以使用$读取当前地址计数器的值 3、地址计数器的修改伪指令ORG: 用于调整地址计数器的值。 3.2.5段定义伪指令 示例: WW1 SEGMENT A1 DB 3 A2 DW 6,7 COUNT EQU $ - A2 ORG $ + 10 A3 DD 8 ORG 200H A4 DQ ? WW1 ENDS 3.3、程序的段结构 一个简单的汇编语言源程序 DATA SEGMENT VAR DB 12H DATA ENDS STACK SEGMENT STACK DB 300H DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK START: MOV AX,DATA MOV DS,AX INC VAR MOV AH,4CH INT 21H CODE ENDS END STRAT 3.3.1、源程序的分段结构 段是程序的基本构成单位,8086的汇编程序由若干段组成,一般的小程序由数据段、堆栈段、代码段3个段构成。 一个程序必须有代码段,其余段根据需要定义。 3.3.2、段假设伪指令 格式:ASSUME 段寄存器:段名,段寄存器:段名,… 功能:设定段和段寄存器的

文档评论(0)

1亿VIP精品文档

相关文档