開第四章8086汇编语言程序设计 ■几个概念 ■8086汇编语言的语句 ■8086汇编中的伪指令 ■8086汇编中的运算符 ■汇编语言程序设计 ■宏定义与宏调用 ■系统调用
第四章 8086汇编语言程序设计 ◼ 几个概念 ◼ 8086汇编语言的语句 ◼ 8086汇编中的伪指令 ◼ 8086汇编中的运算符 ◼ 汇编语言程序设计 ◼ 宏定义与宏调用 ◼ 系统调用
開几个概念 ■汇编语言 ■汇编语言源程序 汇编 ■汇编程序
几个概念 ◼ 汇编语言 ◼ 汇编语言源程序 ◼ 汇编 ◼ 汇编程序
4.18086汇编语言的语句 汇编语言由指令性语句和指令性语句组成 指令性语句格式 [标号:]操作码[操作数1,][操作数2];[注释] 指示性语句格式 [标识符(名字)]指示符(伪指令)表达式 三、有关属性 存储器操作数的属性有三种:段值、段内偏移量 和类型
4.1 8086汇编语言的语句 汇编语言由指令性语句和指令性语句组成 ◼ 一、指令性语句格式 [标号:] 操作码 [操作数1,] [操作数2] ;[注释] ◼ 二、指示性语句格式 [标识符(名字)] 指示符(伪指令) 表达式 ◼ 三、有关属性 存储器操作数的属性有三种:段值、段内偏移量 和类型
開4.28086汇编中的伪指令 号定义语句 ◆1、等值语句 格式:符号名FQU表达式 例:(1) PORT EQU1234 2)BUFF EQU PORT +58 (3)MEM EQU DS: [BP-+20H] (4)COUNT EOU CX (5)ABC EQU AAA
4.2 8086汇编中的伪指令 ◼ 一、 符号定义语句 ◆ 1、等值语句 格式:符号名 EQU 表达式 例: ⑴ PORT EQU 1234 ⑵ BUFF EQU PORT+58 ⑶ MEM EQU DS:[BP+20H] ⑷ COUNT EQU CX ⑸ ABC EQU AAA
2、等号语句 格式: NUM=34 NUM=34+1
2、等号语句 格式: NUM=34 …… NUM=34+1
变量定义语句 格式:符号名DB/DWDD表达式
◼ 二、变量定义语句 格式: 符号名 DB/DW/DD 表达式
◆1、定义一组数据 Wl1: BUFF DW 1234H. OABCDH. 8EH DW-79DH. 7B6AH ◆2、定义一串字符 例2: STR DB Welcome! ◆3、定义保留存储单元 例3: SUM DW?,?
◆ 1、定义一组数据 例1: BUFF DW 1234H, 0ABCDH, 8EH DW –79DH, 7B6AH ◆ 2、定义一串字符 例2: STR DB ‘ Welcome !’ ◆ 3、定义保留存储单元 例3: SUM DW ? , ?
4、复制操作 复制操作符DUP( Duplication)可预置重复的数值 MF 4: ALL ZERO DB 0,0,0,0, 0 用复制操作可改为 ALL ZERO DB 5 DUP (0) 5、将已定义的地址存入内存单元 例5: LIT DD CYO CYC: MOV AX. BX
◆ 4、复制操作 复制操作符DUP(Duplication)可预置重复的数值 例4: ALL_ZERO DB 0,0,0,0,0 用复制操作可改为: ALL_ZERO DB 5 DUP(0) ◆ 5、将已定义的地址存入内存单元 例5: LIT DD CYC … CYC: MOV AX , BX
段定义语句 ◆1、段定义语句格式: 段名 SEGMENT[定位类型][组合类型][‘类别 段名ENDS 只需要掌握 段名 SEGMENT 段名ENDS
◼ 三、段定义语句 ◆ 1、 段定义语句格式: 段名 SEGMENT [定位类型] [组合类型] [‘类别’] …… 段名 ENDS 只需要掌握 段名 SEGMENT …… 段名 ENDS
◆2、段假设语句 ASSUME段寄存器名:段名[… ◆3、ORG伪指令、地址计数器$ ORG伪指令格式:ORG<表达式 ◆4、END表示源代码结束 格式为:END常数或表达式
◆ 2、段假设语句 ASSUME 段寄存器名:段名[,…] ◆ 3、 ORG伪指令、地址计数器$ ORG伪指令格式: ORG ◆ 4、END 表示源代码结束 格式为: END 常数或表达式