中国高校课件下载中心 》 教学资源 》 大学文库

上海交通大学:《微机原理与接口技术》课程教学资源(课件讲稿)第四章 汇编语言程序设计

文档信息
资源类别:文库
文档格式:PDF
文档页数:168
文件大小:811.25KB
团购合买:点击进入团购
内容简介
4-0 汇编语言介绍 4-1 汇编语言程序格式 汇编语言程序格式 4-2 MASM中的表达式 4-3 伪指令语句 4-4 DOS和BIOS中断调用 4-5 程序设计方法
刷新页面文档预览

第四章汇编语言程序设计 4-0汇编语言介绍 41汇编语言程序格式 4-2 MASM中的表达式 4-3伪指令语句 4-4DOS和BIOS中断调用 45程序没计方法 2009-04-15 第四章汇编语言程序设计 10f168

2009-04-15 第四章 汇编语言程序设计 1 of 168 第四章 汇编语言程序设计 汇编语言程序设计 4-0 汇编语言介绍 4-1 汇编语言程序格式 汇编语言程序格式 4-2 MASM中的表达式 4-3 伪指令语句 4-4 DOS和BIOS中断调用 4-5 程序设计方法

4-0汇编语言介绍 汇编语言是一种面向机器的程序设计语言,不同类型的CPU, 其汇编指令也不尽相同。它是对机器语言的符号化描述,是 一门低级语言。 用汇编语言编写的程序叫“汇编语言程序”或“汇编语言源 程序”.这种程序较机器语言直观、易懂、便于交流和维护。 与其他高级语言一样,汇编语言源程序不能直接被计算机识 别并运行,它必须通过汇编程序翻译成机器能够识别的机器 语言程序(目标程序)才能运行。 2009-04-15 第四章汇编语言程序设计 2of168

2009-04-15 第四章 汇编语言程序设计 2 of 168 4-0 汇编语言介绍 汇编语言是一种面向机器的程序设计语言,不同类型的CPU, 其汇编指令也不尽相同。它是对机器语言的符号化描述,是 一门低级语言。 用汇编语言编写的程序叫“汇编语言程序”或“汇编语言源 程序”.这种程序较机器语言直观、易懂、便于交流和维护。 与其他高级语言一样,汇编语言源程序不能直接被计算机识 别并运行,它必须通过汇编程序翻译成机器能够识别的机器 语言程序(目标程序)才能运行

汇编程序是系统程序,是用来将用户编写的汇编语 言(源)程序转换为机器代码的系统工具程序。 利用汇编程序将汇编语言源程序翻译成机器代码的 过程称为汇编 EDIT *.ASM MASM *.OB] LINK *.EXE 编辑 源程序 汇编 浮动目标程序 连接 可执行程序 2009-04-15 第四章汇编语言程序设计 3of168

2009-04-15 第四章 汇编语言程序设计 3 of 168 汇编程序是系统程序,是用来将用户编写的汇编语 言(源)程序转换为机器代码的系统工具程序。 利用汇编程序将汇编语言源程序翻译成机器代码的 过程称为汇编。 EDIT *.ASM MASM *.OBJ LINK *.EXE 编辑 源程序 汇编 浮动目标程序 连接 可执行程序

编译程序和连接程序我们目前使用的通常有两种: 1、MicroSoft公司的MASM.EXE和LINK.EXE。 2、Borland公司的TASM.EXE和TLINK.EXE。 汇编语言特点: >面向机器,与硬件紧密相关。 >编制的程序简洁,高效,实时性好,节省内存, 运行快。 2009-04-15 第四章汇编语言程序设计 4of168

2009-04-15 第四章 汇编语言程序设计 4 of 168 汇编语言特点: 汇编语言特点: 面向机器,与硬件紧密相关。 编制的程序简洁,高效,实时性好,节省内存, 运行快。 编译程序和连接程序我们目前使用的通常有两种: 1、MicroSoft公司的 MASM.EXE 和 LINK.EXE。 2、Borland 公司的 TASM.EXE 和 TLINK.EXE

汇编语言程序格式: 例4一I在屏幕上显示并打印字符串“This Is a sample program." DATA SEGMENT ;数据段 DA1 DB 'This Is a sample program.' DB ODH,OAH,$ DATA ENDS STACK SEGMENT ST1 DB 100DUP(?) STACK ENDS CODE SEGMENT ;代码段 ASSUME CS:CODE,DS:DATA,SS:STACK MAIN PROC FAR START:MOV AX,STACK ;送堆栈段段地址 MOV SS,AX 2009-04-15 第四章汇编语言程序设计 5of168

2009-04-15 第四章 汇编语言程序设计 5 of 168 汇编语言程序格式: 汇编语言程序格式: 例4-l 在屏幕上显示并打印字符串“This Is a sample program.” DATA SEGMENT ;数据段 DA1 DB ‘This Is a sample program.’ DB 0DH,0AH, ‘$’ DATA ENDS STACK SEGMENT ST1 DB 100 DUP(?) STACK ENDS CODE SEGMENT ;代码段 ASSUME CS:CODE,DS:DATA,SS:STACK MAIN PROC FAR START: MOV AX,STACK ;送堆栈段段地址 MOV SS,AX

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)等

刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档