复习深化第三章_第1页
复习深化第三章_第2页
复习深化第三章_第3页
复习深化第三章_第4页
复习深化第三章_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、微机系统与接口微机系统与接口 第三章第三章 汇编语言程序设计汇编语言程序设计Assembly Language Programming 格式格式# 伪指令伪指令# DOS/BIOSDOS/BIOS调用调用 (简单了解)简单了解) 重点:重点:数据结构表示数据结构表示 变量、指针变量、指针 程序结构程序结构 程序流控制(条件、分支、循环)程序流控制(条件、分支、循环) 程序设计方法程序设计方法1微机系统与接口微机系统与接口程序设计语言与汇编语言程序设计语言与汇编语言计算机计算机程序程序设计语言设计语言高级语言(高级语言(High Level Language): 通用,一般不要通用,一般不要求了

2、解结构原理。易读,易编写,调试,简洁求了解结构原理。易读,易编写,调试,简洁BASIC,.,VC(+)/VB/DELPHI,JAVA,C#,HTML =机器语言(执行)机器语言(执行)-翻译翻译/编译编译 解释程序(解释程序(Interpreter)/编译程序(编译程序(Compiler)(编译原理)(编译原理)C+编译编译真实指令真实指令 JAVA编译编译 Java bytecode中间代码中间代码虚拟机指令虚拟机指令JAVA解释器解释器机器语言、汇编语言和高级语言机器语言、汇编语言和高级语言2微机系统与接口微机系统与接口程序设计语言与汇编语言程序设计语言与汇编语言(2)汇编语言汇编语言(A

3、ssembly Language)-面向具体机器(面向具体机器(CPU)语言)语言 ,最最接近于机器语言的低级语言。借助于助记符编程,地址数据可符号化接近于机器语言的低级语言。借助于助记符编程,地址数据可符号化(可读性提高),编写、修改较方便。完整的语法,不易出错。例:(可读性提高),编写、修改较方便。完整的语法,不易出错。例: ADD AX,100 (05 64 00) JMP 1000:2000 (EA 00 20 00 10)特点:特点:汇编语言程序与机器代码汇编语言程序与机器代码一一对应一一对应,程序流可控,速度快程序流可控,速度快,用,用于编制系统程序、实时通信于编制系统程序、实时通

4、信/控制控制/处理。处理。-面向具体机器(面向具体机器(CPU)语)语言,移植性差,不通用。言,移植性差,不通用。汇编(汇编(Assemble)源程序代码源程序代码机器语言代码(目标程序)的过程。机器语言代码(目标程序)的过程。功能:功能:语法检查、翻译。汇编程序语法检查、翻译。汇编程序Assembler机器汇编(机器汇编(人工人工汇编)。交叉汇编汇编)。交叉汇编借助其它机器(如借助其它机器(如PC)汇编。汇编。 反汇编(反汇编(Dis-Assemble) 机器语言代码机器语言代码指令指令代码(源程序代码(源程序) ,逆逆向工程向工程Reverse Engineering)机器语言机器语言 二

5、进制表示的指令和数据序列二进制表示的指令和数据序列/目标代码目标代码3微机系统与接口微机系统与接口程序设计语言与汇编语言程序设计语言与汇编语言(3)汇编程序获取汇编程序获取 (1)机器码机器码Disassemble Sourcer /debuger (2)C ASM CL /Fa开关开关; TCC -B; VS-C+Listing File (3)ASM 编程编程 (高级语言嵌入小汇编程序模块高级语言嵌入小汇编程序模块) MASM TASM ASM;汇编程序(汇编程序(MS-MASM 4.0/5.0 6.11/6.14/6.15)ASM86(小,无宏小,无宏MICRO支持支持)TASM(2.0

6、/3.0/3.1/4.1) MS/DOS版,版,Winddows版版汇编程序用途汇编程序用途 EXE, DLL, PE; PO, OO; 4微机系统与接口微机系统与接口汇编语言源程序结构特点汇编语言源程序结构特点1.分段结构:分段结构:由若干逻辑段组成,有段名,用段由若干逻辑段组成,有段名,用段定义伪指令来定义。定义伪指令来定义。 (SS/CS/DS/ES) (开(开头头SEGMENT-结尾结尾ENDS)2. 代码段起始处,用代码段起始处,用ASSUME伪指令说明各段伪指令说明各段寄存器与逻辑段的关系,建立这些逻辑段的可寄存器与逻辑段的关系,建立这些逻辑段的可寻址性。寻址性。3. 整个源程序必

7、须以整个源程序必须以END结尾,通知汇编程序停结尾,通知汇编程序停止汇编。止汇编。4. 代码段必须含有返回到代码段必须含有返回到DOS系统的指令,保系统的指令,保证程序执行完后自动回到证程序执行完后自动回到DOS。5微机系统与接口微机系统与接口汇编语言源程序格式汇编语言源程序格式(例(例1P137)DATA SEGMENT ;定义数据段定义数据段 DATA1 DB 0F8H,60H, 0ACH,74H,3BH;被加数被加数 DATA2 DB 0C1H,36H,9EH,0D5H,20H;加数加数 DATA ENDS;数据段结束数据段结束 CODE SEGMENT;定义代码段定义代码段 ASSUM

8、E CS:CODE,DS:DATA;告诉汇编程序段范围告诉汇编程序段范围 START: MOV AX,DATA MOV DS,AX ;初始化初始化DS MOV CX,5 ;循环次数送循环次数送CX段名段名段说明伪指令段说明伪指令标号标号6微机系统与接口微机系统与接口 汇编语言源程序格式(例汇编语言源程序格式(例1续)续) MOV SI,0 ;置置SI初值为零初值为零 CLC ; 清清CF标志标志LOOPER:MOV AL,DATA2SI;取一个字节加数取一个字节加数 ADC DATA1SI,AL;与被加数相加与被加数相加 INC SI ;SI加加1指向下一字节指向下一字节 DEC CX;计数器

9、计数器CX减减1 JNZ LOOPER;不等于零,转不等于零,转LOOPER (HLT) ;停止停止-实际?实际?(INT21H) CODE ENDS ;代码段结束代码段结束 END START;源程序结束,指定起始地址标号源程序结束,指定起始地址标号7微机系统与接口微机系统与接口汇编语言源程序格式(例汇编语言源程序格式(例2)(PC台式计算机在台式计算机在MS-DOS环境下的标准程序格式)环境下的标准程序格式)MAIN PROC FAR ;MS-DOS 模板语句模板语句 PUSH DS XOR AX,AX ;=MOV AX,0 PUSH AX ;保存返回指针保存返回指针START: MOV

10、AX, DATA MOV DS, AX : RET ;返回原返回原DS:0000HMS-DOSMAIN ENDP8微机系统与接口微机系统与接口汇编语言源程序汇编语言源程序语句的种类语句的种类(1)指令语句)指令语句(指令性语句)(指令性语句)可执行,汇编程序产生机器目标代码可执行,汇编程序产生机器目标代码MOV DS,AX(2)伪指令语句)伪指令语句(指示性语句(指示性语句)CPU不执行,不产生目标代码,不执行,不产生目标代码,汇编辅助信息汇编辅助信息DATA SEGMENT(3)宏指令语句)宏指令语句汇编时,有宏指令的地方都将用相应的指令序列的目汇编时,有宏指令的地方都将用相应的指令序列的目

11、标代码插入。标代码插入。9微机系统与接口微机系统与接口汇编语言源程序汇编语言源程序语句的格式语句的格式语句构成:语句构成:标号:标号: 指令助记符指令助记符 操作数操作数 ;注释;注释line1: MOV DS, AX ;comments名字名字 伪指令定义符伪指令定义符 操作数操作数 ;注释;注释 DATA SEGMENT构成元素:构成元素:标号和名字;标号和名字;助记符和伪操作;操作数;注释(分号助记符和伪操作;操作数;注释(分号后)后) ;界符(空格)界符(空格) 10微机系统与接口微机系统与接口语句的构成元素语句的构成元素p标号和名字标号和名字:以字母开头,包含字母,数字,特殊符号等,

12、 32个,个,不能是汇编语言中的特殊保留字。标号标号(Label)指令的符号地址(可浮动),指令的符号地址(可浮动),这个地址一定在代码段中!这个地址一定在代码段中!三属性:三属性:段段(SEGMENT)、偏移量偏移量(OFFSET)、类型类型(TYPE即转移远近即转移远近(NEAR段内转移段内转移/FAR段间转移段间转移) )line1: MOV DS, AX ;comments JMP line111微机系统与接口微机系统与接口语句的构成元素语句的构成元素名字名字(Name) 变量名变量名/段名段名/过程名过程名-指示性语句(可浮动)指示性语句(可浮动) 无冒号无冒号; 三属性:三属性:段

13、段(SEGMENT)、偏移量偏移量(OFFSET)、类类型型(TYPE即数据类型即数据类型(BYTE字节字节/WORD字字/DWORD双字双字 /QWORD四字四字 /TBYTE十字节十字节) )段段过程过程变量变量标记标记名称名称12微机系统与接口微机系统与接口语句的构成元素语句的构成元素p助记符和伪操作助记符和伪操作 (Mnemonic & Pseudo Operation) 指令助记符指令助记符 MOV,ADD,. 指示性操作指示性操作 DB,DW,SEGMENT,ENDS,ASSUME,ENDp操作数操作数(Operand)单)单/双双/无,逗号隔开无,逗号隔开 包括:常数包括

14、:常数/寄存器寄存器/存储器存储器/表达式表达式 (1)常数:常数:xxxxD/B/H/O(Q),),ASCII(A01) 十进制十进制D可以缺省,十六进制可以缺省,十六进制ABH必须写成必须写成0ABH13微机系统与接口微机系统与接口语句的构成元素语句的构成元素 操作数(操作数(1)(2)寄存器操作数寄存器操作数 8位位: AL/AH, BH/BL, CH,CL,DH,DL 16位位:AX/BX/CX/DX,SI/DI/BP/SP/ D/ES/CS(3)存储器操作数存储器操作数 标号标号 (少用绝对地址,多用标号(少用绝对地址,多用标号-维护,移植维护,移植) 变量变量 内存数据区名内存数据

15、区名, 存在该单元中的值存在该单元中的值, 类型类型 B/W/DW/QW/TB(4)表达式表达式 (预编译(预编译/汇编处理)汇编处理) (a)数值表达式:数值表达式:由数值常量、字符串常量或符号由数值常量、字符串常量或符号常量与常量与算数、逻辑、关系等运算符算数、逻辑、关系等运算符连接而成,在连接而成,在汇编时产生一个数值汇编时产生一个数值,仅有大小而没有其它属性,仅有大小而没有其它属性(段段/偏移量偏移量/类型类型),作为一种立即数。,作为一种立即数。14微机系统与接口微机系统与接口语句的构成元素语句的构成元素 操作数(操作数(1)(4)表达式表达式 (b)地址表达式:地址表达式:由常量、

16、标号、寄存器的内容及由常量、标号、寄存器的内容及其其一些运算符一些运算符组成,其值表示存储器地址,具有组成,其值表示存储器地址,具有三大属性(段三大属性(段/偏移量偏移量/类型)。类型)。表达式中的运算符:表达式中的运算符: 算术运算符算术运算符 + - * / MOD (变量地址(变量地址+/-) PLACE+2*3,是,是PLACE单元后单元后6个单元的地址个单元的地址 (标号的偏移量改变,而段基标号的偏移量改变,而段基/类型不变类型不变) 逻辑运算符逻辑运算符 (位)(位)AND/OR/XOR/NOT AND AL,100001B AND AL,100001B AND 1111101B

17、区别于区别于逻辑运算指令逻辑运算指令15微机系统与接口微机系统与接口语句的构成元素语句的构成元素 操作数(操作数(2)(5)表达式(续)表达式(续)关系运算符关系运算符 关系运算符有:关系运算符有:EQ(等于),(等于),NE(不等),(不等),LT(小于),(小于),GT(大于),(大于),LE(小于或等于),(小于或等于),GE(大于或等于)等。(大于或等于)等。 参与关系运算的必须是两个数值,或同一段中的两参与关系运算的必须是两个数值,或同一段中的两个存储单元地址,但运算结果只可能是两个特定的个存储单元地址,但运算结果只可能是两个特定的数值之一:当关系不成立(假)时,数值之一:当关系不成

18、立(假)时,结果为结果为0;当;当关系成立(真)时,关系成立(真)时,结果为结果为0FFFFH。例如,。例如,MOV AX,4 EQ 3;关系不成立,故(;关系不成立,故(AX)0 MOV AX,4 NE 3;关系成立,故(;关系成立,故(AX)0FFFFH16微机系统与接口微机系统与接口语句的构成元素语句的构成元素 操作数(操作数(3) 分析运算符和合成运算符分析运算符和合成运算符 分析运算符分析运算符 用以分析提取一个用以分析提取一个存储器操作数存储器操作数的的属性属性,如段、偏移量或类型等。,如段、偏移量或类型等。OFFSET 可以得到一个可以得到一个标号或变量标号或变量的偏移地址的偏移

19、地址 MOV SI,OFFSET DATA1 LEA SI, DATAl LEA SI, DATA1BX+100 SEG 可以得到一个标号或变量的段值可以得到一个标号或变量的段值 MOV AX,SEG ARRAY MOV DS,AXTYPE 结果结果=类型数值(与存储器操作数类型属性的类型数值(与存储器操作数类型属性的对应)对应) B-1;W-2/DW-4/NEAR-(-1)/FAR(-2)17微机系统与接口微机系统与接口语句的构成元素语句的构成元素 操作数(操作数(4)分析运算符分析运算符 TYPEVAR DW ?;?;变量变量VAR的类型为字的类型为字 2ARRAY DD 10 DUP(?

20、);(?); 变量变量ARRAY的类型为双字的类型为双字:type ARRAY= 4STR DB This is a test;变量变量STR的类型为字节的类型为字节 1 : MOV AX, TYPE VAR;(AX)2 MOV BX, TYPE ARRAY;(BX)4 MOV CX, TYPE STR ; (CX) 118微机系统与接口微机系统与接口语句的构成元素语句的构成元素 操作数(操作数(5)分析运算符分析运算符 LENGTH/ SIZELENGTH 一个变量按一个变量按DUP定义的变量总数定义的变量总数 非非DUP则则=1 (LENGTH ARRAY=10)SIZE 一个变量第一个一

21、个变量第一个DUP定义的字节总数定义的字节总数 (变量(变量TYPE*LENGTH) 非非DUP则则=TYPE 例例 V1 DB 20 DUP(?)(?),20,100H DUP(A) V2 DD 4000H SIZE V120 SIZE V2=419微机系统与接口微机系统与接口语句的构成元素语句的构成元素 操作数(操作数(6) 分析运算符和合成运算符分析运算符和合成运算符合成运算符合成运算符 可规定存储器操作数的某个属性,例如可规定存储器操作数的某个属性,例如类型。类型。 PTR/THIS/HIGH/LOW/$ (类似类(类似类型强制转换)型强制转换)例:例: INC WORD PTR BX

22、 ADD BYTE PTR1000H, 38H20微机系统与接口微机系统与接口语句的构成元素语句的构成元素 操作数(操作数(7)PTR (强制)指定存储器操作数类型属性,而段(强制)指定存储器操作数类型属性,而段/偏移地址偏移地址属性保留。属性保留。 MOV AX,BX INC WORD PTR BXTHIS(同(同C中中UNION联合体)联合体) 同一变量区同一变量区,可按不同类型访问(,可按不同类型访问(BYTE/WORD/DWORD) V1WEQUTHIS WORDV1BDB 10 DUP(?)(?)MOV AX,WORD PTR V1B ;强制转换;强制转换 MOV AX, V1WSH

23、ORT 128/+127 短标号短标号 JMP SHORT SLABLE21微机系统与接口微机系统与接口语句的构成元素语句的构成元素 操作数(操作数(8)(5)表达式(续)表达式(续) 其它运算符其它运算符段超越段超越“:” CS:/ES/ SS:/DS:HIGH xxxxLOW xxxx $(当前指令地址当前指令地址)运算关系顺序运算关系顺序 P127 表表3.2 先合成先合成-分析运算分析运算(1)LENGTH,SIZE,WIDTH,MASK,(), (2)(结构成员)(结构成员)(3) (段超越)(段超越)(4)PTR,OFFSET,SEG,TYPE,THIS(5)HIGH,LOW-(6

24、)+,-(7)*/MOD,(8)SHL,SHR (9)EQ,NE,LT,LE,GT,GE(10)NOT(11)AND(12)OR,XOR(13) SHORT (最低最低) (不用硬记,多用括号)不用硬记,多用括号)优先顺序优先顺序22微机系统与接口微机系统与接口源程序格式源程序格式 伪指令伪指令以上是操作数中的运算符:运算符:算数、逻辑、关系、分析、合成算数、逻辑、关系、分析、合成下面介绍伪指令: (分析合成分析合成运算符也是运算符也是伪指令伪指令)CPU指令指令一种操作一种操作伪指令伪指令指示性的语句指示性的语句23微机系统与接口微机系统与接口伪指令(一)伪指令(一)符号定位伪指令符号定位伪

25、指令名字名字 EQU 表达式表达式(全局,唯一,不可换)(全局,唯一,不可换) COUNT EQU 2000名字名字 = 表达式表达式 COUNT=2000 (可换改)可换改) 名字名字 LABEL 类型类型(Byte,Word,Double Word, STRUC,RECORD,NEAR,FAR) THIS 定义标号或变量类型定义标号或变量类型(下一下一CPU指令或指令或DB伪伪指令指令)例:例:V1W EQU THIS WORD ;同同V1W LABLE WORD24微机系统与接口微机系统与接口伪指令(二)伪指令(二)数据定义数据定义定义变量,指定其类型和名称,并分配存储单元定义变量,指定

26、其类型和名称,并分配存储单元DB(字节)(字节) DW(字)(字) DD(双字)(双字) DQ (4字字/8字节)字节)DT (十字节)(十字节)DB 30,20H,111110B, 3 DUP(xx/?);DB ?,?DW ?,?,?, LABEL(偏移量偏移量)DD LABEL ;四字节;四字节 DT 十字节十字节HEX经过定义的变量名都有三属性:经过定义的变量名都有三属性: 段基地址段基地址(用用SEG获得获得) 偏移量偏移量(用用OFFSET获得获得) 类型类型(用用TYPE获得获得)25微机系统与接口微机系统与接口伪指令(二)伪指令(二)数据定义数据定义STRUC 自定义多字段组成的

27、数据类型。自定义多字段组成的数据类型。(同同C中中struct) -定义结构类型定义结构类型 变量名变量名 结构名结构名 定义结构变量定义结构变量 VS1 S1; VS2 S1 20 DUP(); VS3 S1 30 dup) 结构变量名结构变量名.字段名(成员名)字段名(成员名)-引用引用 |BX.字段名,字段名,VS1. 字段名字段名(SIZE 等仍可用等仍可用)VS1.V1, BX.V2, BX.V1+100结构名结构名 STRUC: : 结构名结构名 ENDS例例 S1 STRUC V1 DB ? V2 DW ? S1 ENDS26微机系统与接口微机系统与接口伪指令(三)伪指令(三)段

28、定义段定义SEGMENT / ENDS 逻辑段存储定位关系逻辑段存储定位关系 SEGMENT 定位类型定位类型,组合类型,组合类型,类别类别. PARA (段的起始位置必须是段的起始位置必须是XXXX0H) BYTE (任意)(任意) WORD (偶数地址)(偶数地址) PAGE (页(页256,XXX00H)四种定位类型四种定位类型:汇编程序对源程序汇编得到汇编程序对源程序汇编得到OBJ,其中,其中各段地址和偏移量都未最终确定,还需要用链接程各段地址和偏移量都未最终确定,还需要用链接程序序LINK把各个模块连起来。定位类型告诉把各个模块连起来。定位类型告诉LINK程程序连接时本段首地址的边界

29、定位方式。)序连接时本段首地址的边界定位方式。)段1段2段327微机系统与接口微机系统与接口伪指令(三)伪指令(三)段定义段定义SEGMENT / ENDS SNAME SEGMENT 定位类型定位类型,组合类型组合类型,类别类别. NONE 不组合不组合 PUBLIC 多个模块中的相同段名装配合一多个模块中的相同段名装配合一 STACK 同同Public( 相同段名装配合一相同段名装配合一),作为堆栈段,作为堆栈段 COMMON 公用,各模块中由此方式说明的同名段公用,各模块中由此方式说明的同名段重叠覆盖,有着相同的起始地址。重叠覆盖,有着相同的起始地址。 MEMORY 把本段置于被链接到一

30、起的其他所有段把本段置于被链接到一起的其他所有段的最后,多个时取首先遇到的作为的最后,多个时取首先遇到的作为MEMORY,其,其余作为余作为COMMON28微机系统与接口微机系统与接口伪指令(三)伪指令(三)段定义段定义SEGMENT / ENDS SEGMENT 定位类型定位类型,组合类型,组合类型,类别类别. AT 表达式表达式 定位在指定段基位置定位在指定段基位置 AT 2000H 起始物理地址起始物理地址20000H; 类别类别(名称名称 )链接时,相同类别)链接时,相同类别连续连续装入成一块装入成一块(段段) ENDS -段结束段结束 简化的段定义简化的段定义 MASM5.0.COD

31、E .DATA .STACK 29微机系统与接口微机系统与接口伪指令(三)伪指令(三)段定义段定义ORG 强行指定地址计数器(记载正在汇编的数据或指令代码存放强行指定地址计数器(记载正在汇编的数据或指令代码存放在当前段内的偏移量),以改变在它以后的数据或代码存放在当前段内的偏移量),以改变在它以后的数据或代码存放的偏移地址。的偏移地址。 DATA SEGMENT ORG 10H;强行改变强行改变起始偏移地址起始偏移地址 X DB 20H,30H ORG $+5 Y DB 40H,50H30微机系统与接口微机系统与接口伪指令(四)伪指令(四)段寄存器说明段寄存器说明ASSUME SR:段名:段名

32、,SR:段名:段名, - 逻 辑 段 与 物 理 段 之 间 的 关 系逻 辑 段 与 物 理 段 之 间 的 关 系 ( 段 寄 存 器段 寄 存 器=CS/DS/ES/SS) 汇编时确定变量汇编时确定变量(直接直接MEM访问访问)属于哪一个段范围属于哪一个段范围计算偏移量,计算偏移量,必要时自动加段超越前缀。不改变段必要时自动加段超越前缀。不改变段寄存器内容!寄存器内容! MOV AX, WORDMEM 汇编汇编 CS/ES/SS: MOV AX,3002例例ASSUME CS:CODE, DS:DATA, SS:STACK未注明未注明error A2068:Cannot address

33、with segement register.31微机系统与接口微机系统与接口伪指令(五)伪指令(五)过程定义过程定义过程名过程名 PROC (NEAR)/FAR: RET;(自动(自动RETF/RET)例:例: 过程名过程名 ENDP ; 程序块定义程序块定义 子程序(子程序(SUBROUTINE) 引用:引用:CALL 过程名过程名,(堆栈使用)堆栈使用) 转移转移, 顺序执行顺序执行MYPROC PROC : RETMYPROC ENDPCALL MYPROC;32微机系统与接口微机系统与接口伪指令(五)伪指令(五)过程定义过程定义缩短源程序代码总长度缩短源程序代码总长度:一处定义一处定

34、义, 多处调用多处调用(CALL)利于实现模块化的程序设计利于实现模块化的程序设计,便于编制、调试和维护便于编制、调试和维护PRINTCHS PROC : RETPRINTCHS ENDPPUSH S1CALL PRINTCHS:PUSH S2CALL PRINTCHS:PUSH S3 CALL PRINTCHS实现实现: 利用堆栈来传递参数、利用堆栈来传递参数、保存断点、过程的定义保存断点、过程的定义和调用均可嵌套、返回和调用均可嵌套、返回33微机系统与接口微机系统与接口伪指令(六)伪指令(六)模块与链接定义模块与链接定义NAME NAME 给汇编后的目标程序指定模块名给汇编后的目标程序指定

35、模块名 ENDEND 起始入口标号起始入口标号 源程序到此结束源程序到此结束PUBLICPUBLIC 符号符号 , 模块中的某些符号是公共的模块中的某些符号是公共的( (本模块定义)本模块定义)EXTRNEXTRN 名字:类型名字:类型 , 模块中的某些符号是公共的模块中的某些符号是公共的( (他模块定他模块定义)义) ( (汇编汇编) )源程序文件源程序文件 汇编工具汇编工具MASM.EXE MASM.EXE 浮动目标程序浮动目标程序 xxx.ASM xxx.ASM xxx.OBJ xxx.OBJ 浮动目标浮动目标程序程序 链接程序链接程序link.exe link.exe 可执行目标程序可执行目标程序 xxx.OBJ xxx.OBJ xxx.exe xxx.exe 各自生成各自生成OBJOBJ,但通过链接成为一个整体,但通过链接成为一个整体exeexe,一个模,一个模块中定义的符号可以被另一个模块引用。块中定义的符号可以被另一个模块引用。单单模模块块34微机系统与接口微机系统与接口伪指令(六)伪指令(六)多模块与链接多模块与链接 ( (汇编汇编) )源程序文件源程序文件 汇编工具汇编工具MASM.EXE MASM.EXE 浮动目标程序浮动目标程序 A.ASM A.ASM

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论