第3章汇编语言程序设计 3.1概述 ● 指令:计算机完成某种操作的命令 程序:完成某种功能的指令序列 软件:各种程序总称 机器代码,汇编语言程序,汇编程序 汇编语言程序建立步骤: ● (1)用编辑程序建立.ASM源文件 ● (2)用LINK程序把.ASM文件转换为OBJ文件 (3)用LINK程序把.OBJ文件转换为.EXE文件 用EXE2BIN程序把.EXE文件转换为.COM文 件 (4)在DOS下直接键入.EXE文件或.COM文件 的立件名特就可云行程应
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 第3章 汇编语言程序设计 3.1 概述 • 指令:计算机完成某种操作的命令 • 程序:完成某种功能的指令序列 • 软件:各种程序总称 • 机器代码,汇编语言程序,汇编程序 • 汇编语言程序建立步骤: • (1)用编辑程序建立.ASM源文件 • (2)用LINK程序把.ASM文件转换为OBJ文件 • (3)用LINK程序把.OBJ文件转换为.EXE文件, 或用EXE2BIN程序把.EXE文件转换为.COM文 件 • (4)在DOS下直接键入.EXE文件或.COM文件 的文件名就可运行该程序
3.2语句格式 上 语句格式:【名字]操作符操作数1,操作数2;【注释] 1. 名字 一种符号地址 组成:A~Z,a~z,0~9,专用符号?、、@、、$ 。 限制:①第一个字符不能为数字 ②“”必须为第一个字符 ③前31个字符有效 ④不能为关键字 类型:标号:指令符号地址 变量:数据符号地址 2.操作符 。 组成:CPU指令,伪指令,宏指令 3.操作数 。 指定参与操作的数据,或数据所在单元地址 4.注释 说明程序、指令功能,增加程序可读性 Ji Lin University China COMPUTER SCIENCE AND TECHNOLOG型
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 3.2 语句格式 • 语句格式:[名字] 操作符 操作数1,操作数2 ;[注释] 1.名字 • 一种符号地址 • 组成:A~Z,a~z,0~9,专用符号?、.、@、_、$ • 限制:①第一个字符不能为数字 ②“.”必须为第一个字符 ③前31个字符有效 ④不能为关键字 • 类型: 标号:指令符号地址 变量:数据符号地址 2.操作符 • 组成:CPU指令,伪指令,宏指令 3.操作数 • 指定参与操作的数据,或数据所在单元地址 4.注释 • 说明程序、指令功能,增加程序可读性
3.3 伪指令 功能:指示汇编程序完成规定的操作,如选择处 理器,定义数据,分配存储器等。 i Lin University China CpTE型CIENCE AND T厘CHNDOLOGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 3.3 伪指令 • 功能:指示汇编程序完成规定的操作,如选择处 理器,定义数据,分配存储器等
程序开始与结束 上 1. 程序开始:可以用name,title给程序起名。 格式:NAME module name 汇编程序以模块名作为模块的名字,若未使用NAME,则可用 TTLE给程序指定标题 格式:TITLE text 文本在每一页上打印出来,若没有NAME,则text的前6个字符为 模块名,text最多为60个字符。 若未使用NAME、TITLE,则源文件名为模块名。 2. 程序结束:表示原程序结束,不可缺,源程序的最后一条语句。 格式:END [label] 标号指示程序开始执行的起始地址,多个模块连接,主程序用标 号,其他程序不用,主程序缺省值为代码段第一条指令。 3. MASM6.0定义的入口点、出口点 入口点:.STARUP;产生设置DS、SS、SP代码,此时,END不 用标号。 出口点:EXT 返回操作系统,常用值为0。 。 例: .STARUP .EXIT 0 END Ji Lin University China COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 一、程序开始与结束 1.程序开始:可以用name,title给程序起名。 • 格式:NAME module_name • 汇编程序以模块名作为模块的名字,若未使用NAME,则可用 TITLE给程序指定标题 • 格式:TITLE text • 文本在每一页上打印出来,若没有NAME,则text的前6个字符为 模块名,text最多为60个字符。 • 若未使用NAME、TITLE,则源文件名为模块名。 2.程序结束:表示原程序结束,不可缺,源程序的最后一条语句。 • 格式:END [label] • 标号指示程序开始执行的起始地址,多个模块连接,主程序用标 号,其他程序不用,主程序缺省值为代码段第一条指令。 3.MASM 6.0 定义的入口点、出口点 • 入口点:.STARUP ;产生设置DS、SS、SP代码,此时,END不 用标号。 • 出口点: .EXIT ;返回操作系统,常用值为0。 • 例: .STARUP … .EXIT 0 END
二、 处理器选择 功能:选择对应的指令集,也即对应的汇编执行语句集 放在程序最前面 缺省值为.8086 此类指令主要有: .8086选择8086指令系统 ● .286选择80286指令系统 ● .286P选择保护方式下80286指令系统 ● .386选择80386指令系统 .386P选择保护方式下80386指令系统 .486选择80486指令系统 ● .486P选择保护方式下80486指令系统 ● .586选择Pentium指令系统 .586P 选择保护方式下Pentium指令系统 Ji Lin University China COMPUTEP SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 二、处理器选择 • 功能:选择对应的指令集,也即对应的汇编执行语句集 • 放在程序最前面 • 缺省值为.8086 • 此类指令主要有: • .8086 选择8086指令系统 • .286 选择80286指令系统 • .286P 选择保护方式下80286指令系统 • .386 选择80386指令系统 • .386P 选择保护方式下80386指令系统 • .486 选择80486指令系统 • .486P 选择保护方式下80486指令系统 • .586 选择Pentium指令系统 • .586P 选择保护方式下Pentium指令系统