PUSH DS ;返▣DOS用 MOV AX,O PUSH AX MOV AX,DATA :送数据段段地址 MOV DS,AX MOV AH,9 DOS9号功能调用,显示字符串 MOV DX,OFFSET DA1 INT 21H RET MAIN ENDP CODE ENDS END START 2009-04-15 第四章汇编语言程序设计 6of168
2009-04-15 第四章 汇编语言程序设计 6 of 168 PUSH DS ;返回DOS用 MOV AX,0 PUSH AX MOV AX,DATA ;送数据段段地址 MOV DS,AX MOV AH,9 ;DOS 9号功能调用,显示字符串 MOV DX,OFFSET DA1 INT 21H RET MAIN ENDP CODE ENDS END START
4-1汇编语言程序格式 >一个汇编语言程序可由若干个(此例有3个)段 组成。每个段均以SEGMENT开始以ENDS结束。 每个段可以包含若干语句,而语句又可以是指 令语句或伪指令语句两种。如程序中用到的 ASSUME,DB,SEGMENT-.ENDS等为伪指令语句。 每条语句可由标识符、保留字、表达式等元素 组成。 2009-04-15 第四章汇编语言程序设计 7of168
2009-04-15 第四章 汇编语言程序设计 7 of 168 4-1 汇编语言程序格式 一个汇编语言程序可由若干个(此例有3个)段 组成。每个段均以SEGMENT开始以ENDS结束。 每个段可以包含若干语句,而语句又可以是指 令语句或伪指令语句两种。如程序中用到的 ASSUME,DB,SEGMENT…ENDS等为伪指令语句。 每条语句可由标识符、保留字、表达式等元素 组成
一、指令性语句 指令性语句与机器指令相对应,汇编程序可将它翻译成目标代 码。语句格式为: 标号:指令助记符操作数,操作数;注释 标号:符号地址,后跟“:”,使用英文大小写字母阿拉伯字 母和特殊字符,第一个非数字,≤31个 助记符:与指令对应,不可省。回 操作数:参加运算的数据,用常数、变量、标号、寄存器名或 表达式。 注释:说明一指令或程序功能。可省略。用“;”隔离。 2009-04-15 第四章汇编语言程序设计 8of168
2009-04-15 第四章 汇编语言程序设计 8 of 168 一、 指令性语句 指令性语句与机器指令相对应,汇编程序可将它翻译成目标代 码。语句格式为: 标号:指令助记符 操作数,操作数;注释 标 号:符号地址,后跟“:”,使用英文大小写字母阿拉伯字 母和特殊字符,第一个非数字,≦31个 助记符:与指令对应,不可省。 操作数:参加运算的数据,用常数、变量、标号、寄存器名或 表达式。 注 释:说明一指令或程序功能。可省略。用“ ;”隔离
二、伪指令语句 伪指令语句无对应的机器指令,汇编程序汇编源程序时对伪指令 进行处理,它可完成数据定义,存储区分配,段定义,段分配, 指示程序结束等功能。语句格式为: 名字伪指令指示符操作数,操作数;注释 名字:赋予伪指令的名称,名字后不允许带冒号“:”,可省略。 名字常为变量名、段名、过程名、符号名等。 指示符:汇编程序MASM规定的符号,二各种定义语句后详述。 操作数:按伪指令要求可有可无,操作数可以是常数、变量、字 符串、表达式等。 注释:功能和使用与指令性语句相同。 2009-04-15 第四章汇编语言程序设计 9of168
2009-04-15 第四章 汇编语言程序设计 9 of 168 二、伪指令语句 二、伪指令语句 伪指令语句无对应的机器指令,汇编程序汇编源程序时对伪指令 进行处理,它可完成数据定义,存储区分配,段定义,段分配, 指示程序结束等功能。语句格式为: 名字 伪指令指示符 操作数,操作数;注释 名 字:赋予伪指令的名称,名字后不允许带冒号“:”,可省略。 名字常为变量名、段名、过程名、符号名等。 指示符: 汇编程序MASM规定的符号,各种定义语句后详述。 操作数:按伪指令要求可有可无,操作数可以是常数、变量、字 符串、表达式等。 注 释:功能和使用与指令性语句相同
三、数据项一常数、变量和标号是三种基本数据项。 1.常数 二进制(B)、八进制(Q或O)、十进制(D)、十六进 制(H)、ASCI码字符串(用单引号abcd)。 2.变量 常指存放在M中的数值,程序运行中可修改。 三个属性: ·段值(SEGMENT):变量所在段的段基址。 ●段偏移地址(OFFSET):变量地址与所在段首地址之间的地 址偏移字节数。 类型(TYPE):变量中每个元素包含的字节数,有字节变量 (BYTE),字变量(WORD)及双字变量(DWORD)等 2009-04-15 第四章汇编语言程序设计 10of168
2009-04-15 第四章 汇编语言程序设计 10 of 168 三、数据项-常数、变量和标号是三种基本数据项。 1.常数 二进制 (B)、八进制 (Q或O) 、十进制 (D) 、十六进 制(H) 、 ASCll码字符串(用单引号‘abcd ’)。 2.变量 常指存放在M中的数值,程序运行中可修改。 三个属性: 段值(SEGMENT):变量所在段的段基址。 段偏移地址(OFFSET):变量地址与所在段首地址之间的地 址偏移字节数。 类型(TYPE):变量中每个元素包含的字节数,有字节变量 (BYTE), 字变量(WORD)及双字变量(DWORD)等