第十三讲 汇编语言及汇编过程

合集下载

汇编语言的基本表达及其运行 教学PPT课件

汇编语言的基本表达及其运行 教学PPT课件

5.4.2 符号定义伪指令
符号定义伪指令的用途是给一个符号重新命名,或定 义新的类型属性等。这些符号可以包括汇编语言的变量名、 标号名、过程名、寄存器名以及指令助记符等。
常用的符号定义伪指令有EQU、=、LABLE。
(5)综合运算符可以用来建立和临时改变变量 或标号的类型以及存储器操作数的存储单元类型, 而忽略当前的属性,所以又称为属性修改运算符。
有6个综合运算符:PTR、段属性前缀、SHORT、 THIS、HIGH 和LOW。
各类运算符和常数、寄存器名、标号、变 量一起共同组成表达式。
在计算具有多个运算符的表达式值时,按 以下规则操作:
2.语句格式 一般情况下,汇编语言的语句可以由以下几部分组成: [名字] 操作符 [操作数] [;注释] ➢ 名字是一个符号,它表示本条语句的符号地址。一般 来说,名字可以是标号和变量,统称为标识符。 注意:标号和变量都具备3种属性——段属性、偏移属性及 类型属性。 ➢ 操作符可以是机器指令、伪指令和宏指令的助记符。 ➢ 操作数字段是操作符的操作对象。操作符在完成相应 的操作时要求有一系列的操作数。当有两个或两个以上的 操作数时,各操作数之间用逗号隔开。 ➢ 注释字段是以“;”开头的说明部分,可以用英文或 者中文书写。注释字段是语句的非执行部分 。
5.2.2 汇编语言源程序的语句类型和语句格式
1.语句类型 8086宏汇编MASM使用的语句可以分成3种类型:
➢ 指令语句:这类指令能够产生目标代码,是CPU可以执行 的能够完成特定功能的语句,主要由机器指令组成。在汇编时 一条指令语句被翻译成对应的机器码,对应着特定的操作。 ➢ 伪指令语句:伪指令语句是为汇编程序和连接程序提供一 些必要控制的管理性语句,它不产生目标代码,仅仅在汇编过 程中告诉汇编程序应如何汇编,并完成相应的伪操作。 ➢ 宏指令语句:宏指令语句是由编程者按照一定的规则来定 义的一种较“宏大”的指令,可包括多条指令或伪指令 。

汇编语言编写程序

汇编语言编写程序

汇编语言编写程序汇编语言,又称为汇编代码,是一种低级计算机语言,可以直接被计算机硬件执行的指令代码。

编写汇编语言程序需要了解硬件架构和指令集,具备一定的计算机底层知识和程序设计能力。

汇编语言程序可以用于开发底层系统软件、驱动程序、嵌入式系统、嵌入式软件等领域,是实现计算机底层功能的重要工具之一。

本文将介绍如何编写汇编语言程序。

一、汇编语言的基本概念汇编语言是一种符号化指令代码,通过符号代表相应的操作码和操作数,以便于程序员理解和编写。

它基于特定的硬件架构,每一条指令都对应着特定的机器码。

在编写汇编语言程序时,需要了解以下基本概念:1. 寄存器:寄存器是计算机中的一种存储设备,用于暂时保存数据和指令。

不同的硬件架构有不同的寄存器,如通用寄存器、特殊寄存器等。

2. 指令集:指令集是一组机器指令的集合,用于执行特定的操作。

不同的计算机架构有不同的指令集,如x86指令集、ARM指令集等。

3. 标志位:标志位是寄存器中的一组特殊位,用于标识计算机运行状态和指令执行结果。

例如,零标志位用于标识上一次运算结果是否为零。

4. 内存:内存是计算机中的一种存储设备,用于存储程序和数据。

在汇编语言程序中,可以通过内存地址来读写数据。

二、汇编程序的编写步骤编写汇编程序一般可以分为以下几个步骤:1. 确定程序目标和功能:首先需要明确编写程序的目的和功能,根据需求设计算法和数据结构。

2. 编写伪代码:在开始编写实际的汇编代码之前,可以用伪代码的方式描述程序的逻辑流程,以便于理解和规划代码结构。

3. 编写全局变量和常量:根据程序需求,定义全局变量和常量,用于存储程序运行过程中需要的数据。

4. 编写主程序:编写程序的主体部分,包括初始化、输入输出、算法处理等代码。

5. 编写子程序:如果程序需要包含复杂的功能或算法,可以将其封装成子程序,提高代码的可维护性和重用性。

6. 进行调试和测试:编写好汇编程序后,需要进行调试和测试,确保程序的正确性和性能。

汇编语言的编程步骤与调试方法

汇编语言的编程步骤与调试方法

汇编语言的编程步骤与调试方法汇编语言是一种底层的程序设计语言,直接操作计算机硬件。

在编写汇编语言程序时,需要经过一系列的编程步骤和调试方法,以确保程序的正确性和可靠性。

下面是关于汇编语言的编程步骤和调试方法的一些详细介绍。

一、编程步骤:1.定义程序目标:明确程序的功能、输入和输出。

2.设计算法和逻辑:将目标转化为汇编语言指令,设计算法和逻辑流程。

3.选择寄存器和指令:根据算法和逻辑需求,选择合适的寄存器和指令。

4.编写指令:根据算法和逻辑需求,使用正确的指令来编写汇编语言程序。

5.汇编编译:使用汇编编译器将汇编代码翻译成机器代码。

6.汇编连接:使用链接程序将机器代码和其他必要的文件(如库文件)连接成可执行文件。

7.调试和测试:进行调试和测试,确保程序的正确性和可靠性。

8.优化和改进:根据测试结果,对程序进行优化和改进。

二、调试方法:1.插入调试指令:在程序中插入一些特定的调试指令,可以输出一些关键的变量或标志位,以便观察程序的执行路径和结果。

2.单步执行:逐条执行程序代码,并观察每条指令的执行结果和影响,以及寄存器和存储器的变化情况。

3.观察寄存器和存储器:利用调试器观察程序执行过程中的寄存器和存储器的变化情况,以确定代码逻辑是否正确。

4.打印和日志输出:通过在程序中插入打印和日志输出的语句,可以观察关键变量和代码的执行情况,以帮助调试。

5.内存和寄存器状态检查:检查程序执行过程中的内存和寄存器状态,特别是对一些关键变量和标志位进行监视,以便发现问题所在。

6.脱机调试:将程序转储至仿真器或虚拟机,并在其中进行无风险的调试,以排查错误。

三、汇编程序调试常见问题及解决方法:1.程序崩溃或死循环:检查程序中循环和分支语句的逻辑判断条件是否正确,以及循环内的寄存器和内存操作是否正确。

2.内存访问错误:查看程序访问的内存地址和存储器的范围是否正确,并检查程序中的指针操作是否正确。

3.寄存器使用错误:检查程序中使用的寄存器是否正确选择和使用,尤其是在多个函数调用的情况下,需要注意寄存器的保存和恢复。

《汇编语言源程序》课件

《汇编语言源程序》课件

嵌入式系统的开发
实时控制系统
在实时控制系统中,程序的执行需要精确的时间控制 。汇编语言由于其执行速度快、可直接操作硬件的特 性,常用于编写实时控制系统的关键部分。
智能仪表
智能仪表是工业自动化领域中的重要组成部分,需要 实现实时数据采集、处理和控制。汇编语言在智能仪 表的底层软件设计中也得到了广泛应用。
伪指令是一种特殊的指令,它不 是由计算机硬件直接执行的,而 是由汇编程序在编译时处理的。
常用伪指令
常用伪指令包括.ORG、.END、 .DB、.DW等,它们分别用于指定 程序的起始地址、结束标记、定 义字节型数据、定义字型数据等 。
伪指令使用方法
伪指令的使用方法一般是在程序 中以特定的格式出现,例如 “.ORG 0x1000”表示将程序的 起始地址设置为0x1000。
宏与子程序的区别和联系
区别
子程序是预先编写好的一段程序代码,可以在主程序中被调用执行;而宏是用名称代替一段程序代码,在编译时 进行替换。
联系
两者都可以实现代码的复用和减少重复代码,提高程序的可读性和可维护性。子程序可以看作是运行时的函数, 而宏是编译时的函数。在实际编程中,可以根据需要选择使用子程序或宏来达到代码优化的目的。
游戏程序的编写
要点一
游戏引擎
游戏引擎是游戏开发的核心,负责渲染图形、处理用户输 入、调度任务等。汇编语言在游戏引擎的底层实现中也有 所应用,尤其是在需要高效图形渲染的场景中。
要点二
游戏特效
游戏特效是游戏中吸引玩家的一个重要方面,包括粒子效 果、物理模拟等。汇编语言在实现这些特效时,可以利用 其直接操作硬件的特性,提高执行效率。
《汇编语言源程序 》ppt课件
目 录
• 汇编语言概述 • 汇编语言的基本语法 • 汇编语言的程序流程控制 • 汇编语言的子程序和宏 • 汇编语言的应用 • 汇编语言的发展趋势和未来展望

汇编语言编辑、汇编、连接、运行的全过程

汇编语言编辑、汇编、连接、运行的全过程

汇编语⾔编辑、汇编、连接、运⾏的全过程为了理解汇编语⾔的编辑、汇编、连接、运⾏的全过程,我们不使⽤IDE,⽽是分步骤来进⾏:需要⼯具:1. ⽂本编辑器(如果有Notepad++或者UltraEdit就更好了)2. 汇编器(如MASM.exe)3. 连接器(对应的link.exe)为了省略盘符转换,我在电脑的F盘中建⽴了myASM这个⽂件夹,并把Windows系统的cmd.exe复制到了该⽂件夹中,另外,把下载好的MASM.exe和LINK.exe都复制到该⽂件夹中,在myASM下建⽴⼀个⽂本⽂件1.txt, 改其名为1.asm, 在1.asm中输⼊如下程序并保存[plain]1. assume cs : xxx2. xxx segment3.4. mov ax, 25. add ax, ax6. add ax, ax7.8. mov ax, 4c00H9. int 21H10.11. xxx ends12. end点击cmd.exe, 然后输⼊masm, 按enter, 进⼊了masm的界⾯,然后按下图输⼊(有时需要按enter键):在myASM⽂件夹下⽣成了1.obj⽂件盒1.exe⽂件(注意:由于该程序只有代码段,没有栈段,故有no stack segment这个提⽰)。

双击1.exe⽂件后,⿊⾊的框框⼀闪⽽过,这是很正常的。

⽤cmd.exe来运⾏1.exe, 也没有发现什么结果,因为该程序并没有输出操作,所以⾃然也就没有输出结果了。

那要怎么样看结果呢?⽤debug嘛!步骤如下:有两点值得注意:1. u命令表⽰将内存中的机器指令转为汇编指令(⾄于g命令的作⽤,前⾯已经说过了)2. 要输⼊debug 1.exe. 如果输⼊debug 1, 则会出错3. 在没有学会输出操作之前,以上⽅法是查看结果的好⽅法下⾯,我们来对上述程序进⾏解释:1.[cpp]1. xxx segment2. ...3. xxx endssegment和ends(不是end)是⼀对伪指令,⽤来定义⼀个“段”,具体是什么“段”由伪指令assume来指定。

汇编语言PPT课件

汇编语言PPT课件
.
第3章
汇编语言源程序
➢源程序分别用两种格式书写 ❖第一种格式从MASM 5.0开始支持
简化段定义格式
❖第二种格式MASM 5.0以前就具有
完整段定义格式
Hello, Everybody !
程序功能
.
;lt301a.asm(文件名)
.model small ;定义程序的存储模式
.stack
;定义堆栈段
这时应根据错误信息,重新编辑修改源 程序后,再进行汇编
开发过程3:目标模块的连接
连接程序能把一个或多个目标文件和库 文 件 合 成 一 个 可 执 行 程 序 ( .EXE 、 .COM 文 件):
LINK lt301a.obj
如果没有严重错误,LINK将生成一个可 执行文件(lt301a.exe);否则将提示相应 的错误信息
data ends
code segment ’code’ ;定义代码段
assume cs:code,ds:data,ss:stack
start: mov ax,data ;建立DS段地址
mov ds,ax
code
mov dx,offset string
mov ah,9
int 21h
mov ax,4c00h
本课的程说采明用性微语软句宏,汇例编如程,序数M据AS说M明6、.11变 量定义等等
➢ 伪指令与具体的处理器类型无关,但 与汇编程序的版本有关
.
第3章
3.1 汇编语言程序的开发
➢本节从汇编语言程序的语句格式出 发,给出第一个示范性的汇编语言 源程序,并演示汇编语言程序的过 程:
编辑 汇编 连接 调试
;(注3)
;SampleC.ASM

汇编语言的执行过程

汇编语言的执行过程汇编语言是一种和机器语言最为接近的低级语言,它直接与计算机硬件进行交互。

在理解汇编语言的执行过程之前,我们先来了解一下汇编语言的基本概念和特点。

一、汇编语言的基本概念和特点汇编语言是一种使用助记符(Mnemonics)表示机器指令的语言。

它使用与机器指令相对应的助记符、寄存器、标号等来描述程序的执行流程。

汇编语言具有以下特点:1. 可读性强:汇编语言使用助记符而非二进制数字表示指令,更容易理解和记忆。

2. 直接操作硬件:汇编语言可以直接操作计算机硬件,实现对寄存器、内存等底层资源的操作。

3. 高效率:汇编语言编写的程序可以直接在计算机上执行,执行效率高。

二、汇编语言的执行过程汇编语言的执行过程可以分为四个主要步骤:汇编、链接、装载和执行。

1. 汇编(Assembly):汇编是将汇编语言源代码转换为机器语言的过程。

在汇编过程中,汇编器将每条汇编指令映射为对应的机器指令,并生成目标文件(Object File)。

2. 链接(Linking):链接是将目标文件与其他目标文件或库文件进行合并的过程。

在链接过程中,链接器将各个目标文件中的符号地址进行统一分配,并解决外部引用和重定位等问题,生成可执行文件(Executable File)。

3. 装载(Loading):装载是将可执行文件从磁盘加载到计算机内存中的过程。

在装载过程中,操作系统根据可执行文件的指令和数据段大小,在内存中为程序分配足够的空间,并将可执行文件中的指令和数据加载到相应的内存地址上。

4. 执行(Execution):执行是将加载到内存中的程序按照顺序逐条执行的过程。

在执行过程中,处理器根据程序计数器(Program Counter)指向的当前指令,解码并执行该指令。

执行过程中,处理器根据指令的类型和操作数对寄存器、内存等进行读写操作,实现程序的逻辑功能。

三、汇编语言的程序结构汇编语言的程序结构通常包括数据段(Data Segment)、代码段(Code Segment)和堆栈段(Stack Segment)等。

《汇编语言程序设计》第十三章中断及中断处理程序

《汇编语言程序设计》第十三章中断及中断处理程序汇编语言程序设计第十三章中断及中断处理程序中断是计算机系统中的重要概念,它可以打断正在执行的程序,并在一段时间后恢复执行。

在汇编语言程序设计中,了解中断及中断处理程序的概念和实现方法十分重要。

本文将介绍《汇编语言程序设计》第十三章中断及中断处理程序的内容。

一、中断的概念及分类中断是计算机系统的一种基本机制,它可以让计算机在执行程序的过程中,暂时停下来去处理一些紧急事件。

根据中断的来源和性质,中断可以分为硬件中断和软件中断两种类型。

硬件中断是由硬件设备发出的信号,用于向处理器发出请求,以引起处理器对该事件进行处理。

典型的硬件中断包括时钟中断、外部设备中断等。

软件中断是由程序中的中断指令引起的中断。

软件中断可以通过INT指令来触发,程序员可以根据需要自行设置中断号。

二、中断向量表中断向量表是用于存储中断处理程序入口地址的一张表。

当某个中断发生时,处理器会根据中断号在中断向量表中查找对应的中断处理程序入口地址,并跳转到该地址去执行中断处理程序。

中断向量表一般位于内存的固定地址,不同中断号对应不同的中断处理程序入口地址。

由于中断向量表的地址是固定的,因此在编程时需要特别注意保护中断向量表。

三、中断的处理流程中断处理程序是用于响应中断事件并进行处理的程序。

中断的处理流程一般包括以下几个步骤:1. 保存中断现场:在处理中断之前,需要先保存当前程序的上下文,包括程序计数器、寄存器等内容。

这样在中断处理程序执行完毕后,可以恢复现场继续执行被中断的程序。

2. 中断服务例程:中断处理程序中的核心部分是中断服务例程,它实现了对中断事件的具体处理。

根据中断的类型和需求,中断服务例程可能包括对硬件设备的操作、数据处理等内容。

3. 恢复中断现场:在中断处理程序执行完毕后,需要恢复之前保存的中断现场。

这包括恢复程序计数器、寄存器等内容,以确保被中断的程序可以继续正常执行。

四、常见的中断类型及应用在汇编语言程序设计中,有一些常见的中断类型和应用。

汇编语言和汇编程序资料

汇编语言和汇编程序一、回答下列问题1、何谓汇编语言程序?何谓汇编程序?简述汇编程序的功能。

2、什么叫做变量?变量有哪几种属性?程序中如何放问变量?3、什么叫做标号?标号有哪几种属性?4、8088汇编语言中有哪几类运算符?5、什么叫做表达式?它的运算规则是什么?6、8088/8086汇编语言程序中段的类型有哪几种?段定义中定位类型、组合类型和类别名各有什么作用?7、设VALA EQU 200VALB EQU 30VALC EQU 1BH下列表达式的值各为多少?(1)(VALA*VALC+VALB)/VALC(2)(VALA MOD VALC-VALB/VALC(3)(VALB AND 0FH)OR (VALB XOR 0FH)(4)(VALA GE VALB )AND 0FH8、根据下列数据定义,各条指令单独运行后,AX的内容是什么?TABLEA DW 10 DUP(?)TABLEB DB 10 DUP(?)TABLEC DB ‘1234’TABLED DW 1,2,3,4(1)MOV AX,TYPE TABLEA(2)MOV AX,TYPE TABLEB(3)MOV AX,TYPE TABLEC(4)MOV AX,TYPE TABLED(5)MOV AX,LENGTH TABLEA(6)MOV AX,LENGTH TABLEB(7)MOV AX,LENGTH TABLEC(8)MOV AX,LENGTH TABLED(9)MOV AX,SIZE TABLEA(10)MOV AX,SIZE TABLEB(11)MOV AX,SIZE TABLEC(12)MOV AX,SIZE TABLED9、执行下列指令后,AX寄存器的内容是什么?TABLE DW 0,100,200,300,400DISTA DW 6(1)MOV BX,OFFSET TABLEADD BX,DISTAMOV AX,[BX](2)LEA BX,TABLEMOV AX,2[BX](1)MOV SI,4MOV BX,OFFSET TABLEMOV AX,[BX][SI](2)MOV BX,DISTAMOV AX,TABLE[BX]10、画图说明下列语句分配存储空间及初始化的数据值。

第13讲汇编语言及汇编过程.

第十三讲汇编语言及汇编过程§3-7 汇编语言及汇编过程一、汇编程序功能源程序汇编目标程序(汇编指令程序)(机器码指令程序)汇编指令与机器码指令有一一对应的关系。

汇编程序是一种翻译程序,将源程序翻译成目标程序。

二、汇编程序的汇编过程汇编有两种方法:手工汇编、机器汇编。

1、手工汇编:第一次汇编:确定地址,翻译成各条机器码,字符标号原样写出;第二次汇编:标号代真,将字符标号用所计算出的具体地址值或偏移量代换。

源程序地址目标程序第一次汇编第二次汇编ORG 1000HSTART:MOV R0,BUFFER-1 1000 A82F A82FMOV R2,#00H 1002 7A00 7A00MOV A,@R0 1004 E6 E6MOV R3,A 1005 FB FBINC R3 1006 0B 0BSJMP NEXT 1007 80NEXT 8005LOOP:INC R0 1009 08 08CJNE @R0,#44H,NEXT 100A B644NEXT B64401INC R2 100D 0A 0ANEXT:DJNZ R3,LOOP 100E DB LOOP DB F9MOV RESULT,R2 1010 8A2A 8A2ASJMP $ 1012 80FE 80FE BUFFER DATA 30HRESULT DATA 2AHEND2、机器汇编两次扫描过程。

第一次扫描:检查语法错误,确定符号名字;建立使用的全部符号名字表;每一符号名字后跟一对应值(地址或数)。

第二次扫描:是在第一次扫描基础上,将符号地址转换成真地址(代真);利用操作码表将助记符转换成相应的目标码。

三、伪指令伪指令是告诉汇编程序,如何汇编源程序的指令。

伪指令既不控制机器的操作,也不能被汇编成机器代码,故称为伪指令。

1、起始地址伪指令 ORGORG addr16用于规定目标程序段或数据块的起始地址,设置在程序开始处。

2、汇编结束伪指令 END告诉汇编程序,对源程序的汇编到此结束。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第十三讲 汇编语言及汇编过程
教学方法: 讲授法 教学时数: 2 学时 教学目的: 1、理解源程序、目标代码、编辑、汇编等含义 2、了解汇编过程 3、掌握伪指令的使用 教学重点: 伪指令的使用 教学难点: 汇编过程
§3-7 汇编语言及汇编过程 一、汇编程序功能
汇编指令与机器码指令有一一对应的关系。 汇编程序是一种翻译程序,将源程序翻译成目标程序。
BUFFER DATA 30H
RESULT DATA 2AH
目标程序
第一次汇编
第二次汇编
A82F 7A00
E6 FB 0B 80NEXT 08 B644NEXT 0A DBLOOP 8A2A 80FE
A82F 7A00
E6 FB 0B 8005 08 B64401 0A DBF9 8A2A 80FE
二、汇编程序的汇编过程 汇编有两种方法:手工汇编、机器汇编。 1、手工汇编: 第一次汇编:确定地址,翻译成各条机器码,字符标号原样写出; 第二次汇编:标号代真,将字符标号用所计算出的具体地址值或偏移量代换。
源程序
地址
ORG 1000H
START: MOV R0,BUFFER-1
1000
MOV R2,#00H
2、汇编结束伪指令 END 告诉汇编程序,对源程序的汇编到此结束。一个程序中只出现一次,在末尾。 3、赋值伪指令 EQU 告诉汇编程序,将汇编语句操作数的值赋予本语句的标号。 格式: 标号名称 EQU 数值或汇编符号 “标号名称”在源程序中可以作数值使用,也可以作数据地址、位地址使用。 先定义后使用,放在程序开头。 4、定义字节伪指令 DB 告诉汇编程序从指定的地址单元开始,定义若干字节存储单元并赋初值。 格式: [标号:] DB 字节数据或字节数据表 5、定义字伪指令 DW 从指定地址开始,定义若干个 16 个位数据,高八位存入低地址;低八位存入高地址。 例、 ORG 1000H PIOI: DW 7654H,40H、12、‘AB’ 6、数据地址赋值伪指令 DATA 将表达式指定的数据地址赋予规定的字符名称 格式: 字符名称 DATA 表达式 注:该指令与 EQU 指令相似,只是,可先使用后定义,放于程序开头、结尾均可。 7、定义空间伪指令 DS 从指定地址开始,保留由表达式指定的若干字节空间作为备用空间。 格式: [标号:] DS 表达式 例 2、 ORG 1000H DS 0AH DB 71H,11H,11H ;从 100BH 开始存放 71H、11H、11H。 注:DB、DW、DS 只能用于程序存储器;而不能用于数据存储器。 8、位地址赋值伪指令 BIT 将位地址赋予规定的字符名称。 格式: 字符名称 BIT 位地址小: 1、…….. 2、…… 作业:
三、伪指令 1、主电源(VCC 、VSS) 2、外接晶振
1002
MOV A,@R0
1004
MOV R3,A
1005
INC R3
1006
SJMP NEXT
1007
LOOP; INC R0
1009
CJNE @R0,#44H,NEXT 100A
INC R2
100D
NEXT: DJNZ R3,LOOP
100E
MOV RESULT,R2
1010
SJMP $
1012
例 3、 X1 BIT P12 相当于 X1 EQU 92H 小结: 1、为什么要对汇编程序进行汇编? 2、机器汇编的过程是怎样的? 3、常用伪指令的功能是什么?
布置作业:题目抄在黑板上。 版书设计
一、汇编程序功能 1、…
二、汇编程序的汇编过程 1、…….. 2、……..
3、……. 4、…… . 5、…….. ….
END
2、机器汇编 两次扫描过程。 第一次扫描:检查语法错误,确定符号名字; 建立使用的全部符号名字表; 每一符号名字后跟一对应值(地址或数)。 第二次扫描:是在第一次扫描基础上,将符号地址转换成真地址(代真); 利用操作码表将助记符转换成相应的目标码。
三、伪指令 伪指令是告诉汇编程序,如何汇编源程序的指令。 伪指令既不控制机器的操作,也不能被汇编成机器代码,故称为伪指令。 1、起始地址伪指令 ORG ORG addr16 用于规定目标程序段或数据块的起始地址,设置在程序开始处。
相关文档
最新文档