汇编语言-高频考点
- 格式:pdf
- 大小:187.76 KB
- 文档页数:7
汇编语言考点总结汇编语言是一种低级的计算机编程语言,它直接操作计算机的底层硬件。
在计算机科学与技术领域,学习和掌握汇编语言是非常重要的一项技能。
本文将对汇编语言的主要考点进行总结,以帮助读者更好地理解和应用这门编程语言。
一、汇编语言的基本概念1. 背景介绍:汇编语言的产生和发展历程。
2. 指令集体系结构:指令的组成、执行过程和影响因素。
二、寄存器与寻址方式1. 通用寄存器:AX、BX、CX、DX等的功能和应用。
2. 段寄存器:CS、DS、ES、SS寄存器的作用和运用。
3. 寻址方式:立即寻址、直接寻址、间接寻址、寄存器寻址等的特点和使用场景。
三、汇编指令的基本操作1. 数据传输指令:MOV、XCHG、PUSH、POP等指令的使用方法和注意事项。
2. 算术运算指令:ADD、SUB、MUL、DIV等指令的功能和运算规则。
3. 逻辑运算指令:AND、OR、NOT、XOR等指令的逻辑操作和应用实例。
四、程序控制指令1. 无条件转移指令:JMP、CALL、RET等指令的作用和使用场景。
2. 条件转移指令:JZ、JC、JG等指令的条件判断和跳转控制。
3. 循环指令:LOOP、LOOPZ、LOOPNZ等循环控制指令的循环次数和条件判断。
五、中断与异常处理1. 中断的概念和分类:硬件中断和软件中断的区别与应用。
2. 中断处理程序:中断向量表、中断服务例程和中断处理过程的执行顺序。
3. 异常处理:异常的触发原因和异常处理的基本流程。
六、汇编语言编程实例1. 简单的计算器程序:实现两个数的加、减、乘、除运算。
2. 字符串处理程序:实现字符串的输入、输出、查找和替换等功能。
3. 汇编子程序的编写:封装通用功能的子程序,提高代码的重用性。
七、常见的汇编语言工具和资源1. 汇编语言开发环境:MASM、TASM、NASM等汇编器的介绍和使用方法。
2. 相关书籍和教程:推荐几本经典的汇编语言教材和在线资源。
结语:汇编语言虽然在现代计算机编程中使用较少,但它仍然在一些特定场景下发挥着重要的作用。
大连理工大学22春“计算机科学与技术”《汇编语言程序设计》作业考核题库高频考点版(参考答案)一.综合考核(共50题)1.MACRO和ENDM一对伪操作中间就是宏定义体,是一组有独立功能的程序代码。
()A.正确B.错误参考答案:A2.设某数据段:(1)DATA SEGMENT (2)ORG 20H (3)NUM1=8 (4)NUM2=NUM1+10H (5)DA1 DB ‘COMPUTER’ (6)DB 0AH,0DH (7)COUNT EQU $-DA1 (8)DA2 DW ‘CO’,‘MP’,‘UT ’,‘ER’ (9)DATA ENDS 请回答:COUNT的值是()。
A.18HB.0AHC.09HD.21H参考答案:B3.假设(EAX)=00001000H,(EBX)=00002000H,(DS)=0010H,试问MOV ECX,[EAX+EBX]指令访问内存的物理地址是()。
A.00003100HB.10003100HC.00003200HD.00005100H参考答案:A4.以下五个指令(1)MOV AL,55H (2)MOV CL,2 (3)ROL AL,CL (4)OR AL,1 (5)RCL AL,CL顺序执行完后,(AL)=多少?()A.54HB.53H参考答案:A5.当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是()。
A.表示结果中含2的个数为偶数B.表示结果中含1的个数为奇数C.表示该数为偶数D.表示结果中低八位含1的个数为偶数参考答案:D6.宏汇编中,实元可以是常数,寄存器,存储单元名,以及用寻址方式能找到的地址或表达式等。
()A.正确B.错误参考答案:A7.在计算机系统中,存储器是记忆设备,它主要用来()。
A.存放数据B.存放程序C.存放数据和程序D.存放微程序参考答案:C8.阅读下面的程序片段。
(1)MOV AX,723AH (2)MOV BX,0C86BH (3)SUB AL,BL (4)SBB AH,BH (5)XOR AL,01H (6)ADC AX,0执行该程序片段后:(AX)等于()。
主要复习知识点
1 机器语言、汇编语言、高级语言,汇编与连接程序的基本原理,标识符,debug中数据的进制数据类型循环的三大要素 dos
2 寄存器以及寄存器的位数,数据寄存器,地址寄存器,IP指针寄存器,标志寄存器,地址总线,段或者缓冲区中指定单元的物理地址与偏移地址,以及寻址空间,内存分段的原理,各段的最大值,各段如何与相应的段寄存器建立对应关系
3 堆栈的栈底栈顶以及入栈时数据的大小、栈顶的移动方向
5 变量标号的三种属性以及它们的运算符,变量的类型转换要用到的运算符,符号扩展的具体操作。
6系统的常用功能调用,2 9 10 号功能调用
7 子程序的类型宏定义中局部标号的展开
8 中断向量以及中断向量表在内存中占有的空间的大小
9 双字变量的加减运算,移位运算,乘法与除法指令中乘数与被乘数各自用到的寄存器
10 输入输出指令,输入输出端口地址空间的大小
11 七种寻址方式,物理地址的计算以及目的操作数的计算,指令的对错
12 变量在内存中占用的字节单元数,以及单元中的值(根据数据类型确定),存储变量在内存中占用存储空间的示意图
13 宏程序的展开
14 流程图以及完整的源程序,四则混合运算,尤其要注意双精度数的加减运算以及大小的判断
15 循环程序与子程序的设计
16 比较指令与跳转指令在程序设计中的运用。
Ch1 汇编语言基础知识1.什么是汇编语言?2.汇编语言与机器语言的区别3.学习汇编语言的意义4.码制:不同进制、原码、反码、补码、BCD码表示,压缩BCD码Ch2 微型计算机体系结构1.8086是16位微处理器,它有16根数据线和20根地址线,寻址空间1MB。
2.8086中设置了一个6字节的指令预取队列,它的意义如何?3.8086分为EU和BIU两个部分。
说明它们的功能、作用和相互关系。
4.8086中有4个寄存器可以拆分为两个8位寄存器独立使用。
是那些寄存器?5.说明8086堆栈的特点。
指令指针寄存器IP、堆栈指针SP………6.指令对标志寄存器FLAGS的影响。
7.在8086中,当一个字存入存储器时,占有连续的两个字节空间。
存放时,低位字节存入低地址,高位字节存入高地址。
8.8086是采用存储器分段管理方式来解决寻址问题的。
即将1MB地址空间分为若干个逻辑段,段的大小按实际需要确定,最大为64KB。
9.8086对于1MB的物理存储空间,每一个存储单元都有一个20位的物理地址10.8086是采用存储器分段管理方式来解决寻址问题,指令中采用逻辑地址形式,逻辑地址表示格式为:段地址:偏移地址11.逻辑地址“段地址:偏移地址”转换为对应的物理地址的方法。
Ch3 指令系统1.在一般情况下,机器指令应包含两个部分内容,其一般格式为:操作码操作数。
2.什么是寻址方式?8086有哪些寻址方式?3.重点指令。
Ch4 伪指令与汇编语言程序结构设计1.汇编语言源程序由若干条语句组成,其语句分为两类:指令性语句和指示性语句。
2.合法的名字。
3.数据定义伪指令开始。
DB、DW、DUP等。
4.段定义Ch7 输入输出程序设计1. 接口与外设之间的信息。
2. I/O接口的功能。
3. 接口的基本组成。
4. 输入输出的控制方式的概念:无条件传送、查询式传送、中断传送。
5. 中断的基本概念、优点。
6. 什么是中断向量表、特点。
Ch8 高级汇编技术1. 什么是宏。
汇编语言复习资料一.名词解释(16分8道题15个里选8个)存储器:存储程序数据等信息的记忆装置,微机有ram和rom两种。
堆栈:以后进先出方式工作的存储空间。
状态标志:记录指令操作结果的标志,共6位:of,sf,zf,af,pf和cf。
段寄存器:保存各逻辑段的起始地址的寄存器,8086?8088机有4个:cs,ds,ss,es。
物理地址:唯一代表存储空间中每个字节单元地址。
汇编语言:用指令的助记符、符号地址、标号等符号书写程序的语言。
机器语言:能被计算机识别的语言。
汇编程序:把汇编语言程序翻译成机器语言程序的系统程序。
指令:告诉cpu要执行的操作(一般还要指出操作数地址),在程序运行时执行。
伪指令:由汇编程序在汇编过程中执行的指令。
Cpu:分析、控制并执行指令的部件,由算术逻辑部件alu和寄存器组成。
Ip:指示下一条要执行的指令的地址。
Sp:保存当前栈顶地址的寄存器。
控制地址:控制操作的标志,如df位。
连接程序:把若干个模块连接起来成为可执行文件的系统程序。
二.判断(10个)考点:(1)mov指令ppt中(2)第一章中n个二进制数表示的数的范围,分为有符号数和无符号数范围(3)asc码表(空格、回车、数字、字母)后面有一个程序分析题。
记ABCZabcz对应的值(4)上机debug中命令,如:—d(5)dup下面判断题必考1.MOV DS,AX ( )2.MOV CS,AX ( )3.MOV CH,4050H ( )4.MOV DL,5BH ( )5.MOV DX,5BH ( )6.MOV DX,AL ( )7.MOV V A1,V A2 ( )8.MOV 45,DL ( )三.解答题(7道){(1)段地址,偏移地址的范围注:课件上有个小例子(2)与、或、异或三个指令应用(3)栈指令实现交换[PUSH PUSH POP POP]}注意:问题问得很详细,注意不要少写答案1.书上3.8题假定(DS)=2000H,(ES)=2100H,(SS)=1500H,(SI)=00A0H,(BX)=0100H,(BP)=0010H,数据段中变量名V AL的偏移地址值为0050H,是指出下列源操作数字段的寻址方式是什么?其物理地址值是多少?(1)MOV AX,0ABH 立即数寻址无物理地址(2)MOV AX,BX 寄存器寻址无物理地址(3)MOV AX,[100] 直接寻址20100H(4)MOV AX,VAL 直接寻址20050H(5) MOV AX,[BX] 寄存器间接寻址20100H(6) MOV AX,ES:[BX] 直接寻址21100H(7) MOV AX,[BP] 寄存器间接寻址20010H(8)MOV AX,[SI] 寄存器间接寻址200A0H(9) MOV AX,[BX+10] 寄存器相对寻址20110H(10)MOV AX,VAL[BX] 寄存器相对寻址20150H(11) MOV AX,[BX][SI] 基址变址寻址201A0H(12) MOV AX,VAL[BX][SI] 相对基相变址寻址201F0H2.书上3.10如TABLE为数据段中0032单元的符号名,其中存放的内容为1234H,试问以下两条指令有什么区别?指令执行完后AX寄存器的内容是什么?(1)MOV AX,TABLE 是把符号地址TABLE里的内容送到AX里,指令执行完后,(AX)=1234H(2)LEA AX,TABLE 是把符号地址TABLE 的有效地址(这里是偏移量)送到指定寄存器AX里,指令执行完后,(AX)=0032H书上3.15求出一下各十六进制数与十六进制数62A0之和,并根据结果设置标志位SF、ZF、CF和OF的值。
汇编语言考试要点1、汇编语言的定义与特点定义:汇编语言是面向机器的语言,是利用计算机所有硬件特性并能直接控制硬件的语言特点:汇编语言是一种采用助记符表示的程序设计语言,它的指令和机器语言的指令在很大程度上是一一对应的,其指令格式及语法、语义等和机器语言也基本一致。
犹豫汇编语言使用一些标示指令操作的英文单词缩写来代替二进制序列,因此便于程序员记忆和编程。
2、80x86微处理器的组成8086/8088微处理器在内部结构上划分成两个功能模块,即总线接口单元(BIU )和执行单元(EU )2、通用寄存器AX :累加器,乘除运算指令规定其中一个操作数必须存放在AX (或AH )寄存器中数据BX :数据寄存器,在一些寻址方式中用做基址寄存器寄存器CX :计数器,在循环指令和串操作指令中作为隐含的计数寄存器DX :在作双字节运算时把DX 和AX 组合在一起共同存放在一个32位双字长的数据,其中DX 存放高16位BP :基址指针。
默认情况下用于存放堆栈中某一单元的偏移地址SI :源变址寄存器DI :目的变址寄存器,SI 和DI 用于存放数据段中某一单元的偏移地址Sp:堆栈指针寄存器.Ip:指令指针寄存器.3、实模式实模式是指采用与8086相同的16位段和偏移量,只能访问1MB 的实存内存,分段最大长度为64KB4、实模式下存储器地址的形成逻辑地址=16位段地址:16位偏移地址物理地址,即20位物理地址=16位段地址左移4位,即末尾添4个0,得到一个20位的段首地址,再与16位的偏移地址右对齐相加5、实模式下的段寄存器(联系P324debug 常用命令)CS :代码段寄存器DS :数据段寄存器SS :堆栈段寄存器ES :附加段寄存器6、堆栈的定义堆栈是一种数据结构,实际上是在寄存器中开辟的一端活动、另一端固定的数据存储区,堆栈的存取顺序是“后进先出”第二章7、指令系统应具备的四方面要求:完备性、有效性、规整性、兼容性8、80x86的几个主要指令:数据传送类指令算术运算类指令逻辑运算类指令程序控制类指令输入/输出类指令处理器控制指令区分第二题通用地址寄存器特权指令9、寻址方式的定义:寻址方式是指形成指令的操作对象的有效地址的方式10、写出五种寻址方式:立即数寻址(常量)、寄存器操作数的寻址、存储器操作数的寻址、[EA=基址+(变址*比例因子)+位移量]11、什么是DOS系统功能调用:答:DOS系统提供了八十多个子程序,按功能可分为三大类,一类是磁盘的读/写和管理,另一类是内存管理,还有一类是基本输入/输出管理以及时间日期的管理。
汇编语言重点知识总结汇编语言是一种低级程序设计语言,它直接操作计算机硬件资源,具有较高的执行效率和灵活性。
本文将重点总结汇编语言的相关知识,涵盖指令集、寻址模式、数据传送和运算、控制流等方面。
一、指令集1. 数据传送指令:包括MOV、LEA等指令,用于在寄存器和内存之间传输数据。
2. 算术运算指令:包括ADD、SUB、MUL、DIV等指令,用于进行加减乘除等数值运算。
3. 逻辑运算指令:包括AND、OR、NOT等指令,用于进行逻辑与、逻辑或、逻辑非等操作。
4. 跳转指令:包括JMP、JZ、JE等指令,用于实现程序的跳转和条件判断。
5. 栈操作指令:包括PUSH、POP等指令,用于实现数据的入栈和出栈操作。
6. 串操作指令:包括MOVSB、CMPSB等指令,用于字符串的复制、比较等操作。
二、寻址模式1. 直接寻址:使用给定的地址访问内存中的数据,如MOV AX, [1234H]。
2. 寄存器间接寻址:使用寄存器中存储的地址访问内存中的数据,如MOV BX, [SI]。
3. 寄存器相对寻址:使用寄存器和偏移量的组合访问内存中的数据,如MOV CX, [BX+DI]。
4. 基址变址寻址:使用基址寄存器和变址寄存器的组合访问内存中的数据,如MOV AX, [BX+SI+10H]。
5. 相对基址变址寻址:使用基址寄存器、变址寄存器和偏移量的组合访问内存中的数据,如MOV AX, [BX+SI+10H+DI]。
三、数据传送和运算1. 数据传送:使用MOV指令将数据从一个位置传送到另一个位置,如MOV AX, BX。
2. 位操作:使用AND、OR、XOR等指令进行位与、位或、位异或等操作。
3. 算术运算:使用ADD、SUB、MUL、DIV等指令进行加减乘除等运算。
4. 位移操作:使用SHL、SHR、ROL、ROR等指令进行位左移、位右移、循环左移、循环右移等操作。
四、控制流1. 无条件跳转:使用JMP指令无条件跳转到指定的地址。
1.汇编语言程序运行步骤(1)用编辑程序建立ASM源文件,以ASM作为扩展名(2)用汇编程序把ASM文件转换成OBJ文件(3)用连接程序把OBJ文件转换成可执行文件(4)在DOS提示符下直接键入可执行文件名即可执行该程序2.什么是中断?什么是中断向量、中断向量表中断是一种使CPU中止正在执行的程序转去处理特殊事件的操作,引起中断的事件称为中断源中断向量:指中断服务程序入口地址或存放中断服务程序的首地址中断向量表:按中断类型号从小到大的顺序存放到存储区的某一区域内,这个存放中断向量的存储区叫做中断向量表,即中断服务程序入口地址表3.中断过程(1)取中断类型号(2)标志寄存器(FLAGS)内容入栈(3)当前代码段寄存器(CS)内容入栈(4)当前指令计数器(IP)内容入栈(5)禁止硬件中断和单步中断(IF=0,TF=0)(6)从中断向量表中取4*N的字内容送IP,取4*N+2中的字内容送CS(7)转中断处理程序4.简述程序中指令和伪指令的区别指令:能被计算机识别并执行的二进制代码,它规定了计算机能完成的某一操作伪指令:对汇编起某种控制作用的特殊命令,其格式与通常的操作指令一样,并可加在汇编程序的任何地方,但它们不产生机器指令5.LEA和OFFSET的区别(1)首先,LEA指令可以使用各种存储器寻址方式,如,LEA BX,[DI],LEA BX,TABLE[DI],LEA SI,[BX+DI]等,这些指令都是把计算出来的有效地址送目的寄存器,而OFFSET不能使用这些寻址方式,它只作用于像TABLE这样的简单变量(或标号)。
(2)其次,对简单变量,OFFSET指示符比LEA执行速度快,因为MOV BX, OFFSET TABLE 指令在汇编时,由汇编程序计算出了TABLE的偏移地址,并被汇编成立即数传送指令,因此效率很高,而LEA指令是在执行时才计算地址,然后再传送到指定寄存器,因此执行速度相对慢一些。
一.汇编基础1.机器语言与汇编语言的区别:机器语言是由机器指令构成的CPU能够直接识别并执行的指令,而汇编语言由汇编指令集,伪指令集及其使用规则的统称2.编译型语言和解释型语言:编译型语言是解释完程序之后生成可执行的程序后,运行后不需要编译程序在场,比如C语言而解释性语言是边解释边执行,比如BASIC和脚本语言,java等3.汇编语言的特点:●占用空间少●执行速度快●直接控制硬件能力强●开发周围长,可移植性差,不易掌握●效率更高,速度更快●减小对存储空间的需求4.冯.诺伊曼的结构:运算器,存储器,控制器,输入设备,输出设备。
具体:数据和程序都以二进制的形式不加区分的放在存储器中,存储位置由地址决定,地址码也是二进制形式5.计算机的组成:硬件+软。
硬件组成:CPU,总线,输入输出设备,存储器;软件组成:系统软件,用户软件6.8086微处理器的结构图,理解掌握这里要解决20位总线和16位寄存器的冲突,方法是物理地址求和,段基址与偏移地址的组合7.寄存器定义:寄存器是CPU内存放操作数的地方,它的操作速度比内存操作数快8.BP和SP,指针寄存器,主要来访问堆栈内的存储单元;BP,可直接存取堆栈中的数据,SP只能访问栈顶9.内存管理模式:●一个字的内容是该地址指向的字节单元与下一个单元拼接而成●一个双子的内容是该地址指向的单元及其后面的3个单元拼接而成的●拼接的原则:高地址存放高位内容,低地址存放低位内容10.段寄存器和指针寄存器的配对使用:CS与IP取指令所用的段寄存器和偏移量,串操作中目标操作数的段寄存器和偏移量一定是ES和DI,堆栈操作中段寄存器和偏移量一定是SS和SP11.标志寄存器就一个FLAG,6个状态标志,3个控制标志,7位保留,控制标志:●IF,中断标志,IF=1则开中断,IF=0,关中断●TF,陷阱标志,TF=1则单步中断●DF,方向标志,在串操作数指令操作中,DF=1则自减,DF=0则自增12.数据表示:,二进制在后面跟B,八进制跟Q,十六进制跟H,十进制跟D,十六进制如果第一个是字母的话必须在前面加013.BCD码,分为压缩和非压缩BCD码●非压缩的BCD码是用一个字节表示一位十进制数,高四位为0000,低四位表示0-9●压缩的BCD码是用一个字节表示两位十进制数,高四位表示十位数字,低四位表示个位数字●14.补码的扩展问题:●正数的符号扩展应该添0补足,负数应该用1补足,n位二进制数补码表示数的范围是-2^n-1<=n<=2^n-1 -115.浮点数的表示方法二.指令系统16.关于操作数●单操作数指令的操作数只能是寄存器操作数或者内存操作数●双操作数指令的目标操作数只能是寄存器操作数或内存操作数,而源操作数可以使三种操作数,但是2种操作数不能同时是内存操作数●内存操作数的关键是找到其所在的地址,即必须找到所在段和相对段首的偏移地址即EA,然后求和得到物理地址17.寻址方式是重点●直接寻址中,可以用变量符号代替数值地址●寄存器间接寻址,依然是利用物理地址寻址,只不过地址存在寄存器里面,比如BX,SI,DI●寄存器相对寻址是前2者的最一般情况,●基址变址寻址方式,BX与DI,SI,BP与SI,DI●相对基址变址就是多一个立即数的偏移量18.指令系统中所关心的有3点:19.一些指令的执行时间,算术运算中IDIV是最多的,其次是乘法IMUL,最快的是mov和移位指令,其次是ADD;加法指令执行时间,最慢的是立即数到存储器,其次是寄存器到存储器,最快的是寄存器到寄存器;各种寻址方式里面,最快的是寄存器间接寻址,最慢的是相对基址变址20.MOV指令的注意事项●MOV指令时使用的最频繁的指令●2种操作数不能同时是存储器,段寄存器●目标操作数不能是立即数,不能是CS●不能直接给段寄存器赋值,必须要通过寄存器来赋值●IP不能是MOV的操作数●MOV不改变FLAG中的值21.堆栈操作POP和PUSH●PUSH CS 合法但是POP CS不合法●PUSH 和POP操作数都不能是立即数●PUSH和POP只能按字来访问堆栈,依然遵守高高低低的原则,不能按字节来访问●PUSH和POP不影响标志位22.XCHG命令●XCHG不影响标志位●操作数不包括段寄存器,也不能是立即数●2个操作数不能同时是存储器23.XLAT(查表转换指令)有2个隐藏的操作数,功能:表首是由DS:BX决定,偏移量为AL,然后取出对应字节数据放到AL中24.IN和OUTHF,将标志寄存器状态标志SF,AF,CF,PF,ZF转送到AH的对应位置,若没有的则AH的位不变;相反SAHF,是将AH的对应位值给标志位。
汇编复习要点知识概括1、硬件基础(1)了解微型计算机的硬件系统组成(5大功能模块)(2)了解CPU的作用(控制指令的执行)(3)了解CPU内部的3个主要组成部分及功能(运算器、控制器、寄存器组)(3)了解ALU的作用(算术和逻辑运算)(4)8088\8086的字长和地址线各是多少?8088\8086CPU可以直接访问的存储范围是多少?(5)8088\8086 CPU 内部的寄存器结构?知道有以下寄存器:通用寄存器:AX\BX\CX\DX基址寄存器:BX\BP变址寄存器SI\DI段寄存器DS\ES\SS\CS专用寄存器:IP\SP\标志寄存器需要掌握以下要点:各个段寄存器的名称和作用哪些寄存器是16位的,哪些寄存器是8位的?指令在内存中的存放位置由CS:IP的值决定,课本习题2.5标志寄存器中常用标志的含义数据在内存中的存放的位置:段地址可以是DS\ES\SS,偏移地址是指令中给出有效地址(注意:何时使用DS作为默认段地址,何时使用SS作为默认段地址)(6)掌握8088\8086系统的存储器结构支持的数据类型:字节、字、双字(各是多少位?)不同类型数据在内存中的存放情况,课本习题2.2 2.3理解存储器的分段管理,掌握什么是逻辑地址、偏移地址、物理地址?掌握如何进行逻辑地址和物理地址的转换。
(逻辑地址是在程序中对存储器地址的一种表示方法,由段地址和段内偏移地址两部分组成,如1234H:0088H。
偏移地址是指段内某个存储单元相对该段首地址的差值,16位二进制表示。
物理地址是20位的,是信息存放在内存中的实际地址。
物理地址是由逻辑地址的段地址左移4位加上偏移地址计算得到的。
)2、DEBUG的使用理解DEBUG是一种调试工具掌握几个常用命令如:R\D\A\U\T命令的作用3、汇编语言上机(1)程序设计语言包括哪几种(机器语言、汇编语言、高级语言)?各自的特点?(2)什么是汇编?汇编程序的作用?连接程序的作用?汇编语言源程序的扩展名是?汇编程序的输入文件是?输出文件是?连接程序的输入文件?输出文件?熟悉上机过程。
汇编语言程序设计必考简答题汇总汇编语言程序设计是计算机科学与技术专业的一门重要课程,对于学生来说,掌握其核心知识和技能是非常关键的。
在学习过程中,我们常常会遇到一些简答题,下面是一些常见的汇编语言简答题汇总,供大家参考和学习。
1. 什么是汇编语言?汇编语言是一种与特定计算机硬件平台相关的低级语言,它使用助记符(mnemonic)来代替机器码,通过汇编器将汇编语言转化为机器码。
汇编语言与机器语言一一对应,较高级语言的汇编指令能直接操作计算机的寄存器和内存,实现更加底层的控制。
2. 汇编语言和高级语言的区别是什么?汇编语言相对于高级语言而言,更加接近底层硬件,操作更为直接。
它使用的指令数量更有限,需要程序员直接控制硬件资源。
而高级语言则更加抽象,更接近人类自然语言,通过编译器或解释器将高级语言转化为汇编语言或机器语言。
高级语言更方便编写和阅读,但是执行效率相对较低。
3. 什么是寄存器?寄存器是计算机内部存储器件之一,用于存储和操作数据,寄存器的操作速度非常快。
不同的计算机平台可能有不同的寄存器数量和功能,比如通用寄存器、专用寄存器等。
在汇编语言中,我们可以通过寄存器来存储临时数据、操作数以及中间结果。
指令是计算机执行的基本操作,通过指令可以实现数据的加载、存储、运算等功能。
在汇编语言中,指令使用助记符来代替机器码,每一行指令对应着计算机执行的一个操作,例如MOV指令用于数据的移动,ADD指令用于数据的加法运算等。
5. 什么是地址模式?地址模式是汇编语言中用于寻址的方式,通过不同的地址模式可以灵活地定位需要读取或写入的数据。
常见的地址模式包括直接寻址、寄存器间接寻址、寄存器相对寻址等。
不同的地址模式对应着不同的指令格式和寻址方式,程序员可以根据具体需求选择合适的地址模式。
6. 什么是程序计数器(PC)?程序计数器是用于存储下一条指令地址的寄存器,它指示了下一条指令的位置。
当执行一条指令后,PC会自动增加,使得它指向下一条指令的地址。
王爽汇编知识点总结一、汇编语言概述1.概念及特点汇编语言是一种低级语言,它直接使用计算机硬件的指令集进行编程。
相对于高级语言,汇编语言更加接近计算机的硬件,编写的程序可以更加高效地执行。
汇编语言的特点包括:直接面向硬件、指令集丰富、程序执行效率高等。
2.编程原理汇编语言的编程原理是通过编写符合计算机指令集的程序代码来实现对计算机硬件的控制。
汇编语言程序需要通过汇编器将其翻译成机器码,然后才能在计算机上执行。
3.应用领域汇编语言在操作系统、驱动程序、嵌入式开发等方面有着广泛的应用。
在一些对程序性能要求很高、对硬件操作要求很精细的场景中,汇编语言仍然是一种非常重要的开发语言。
二、汇编语言基础知识1.寄存器在汇编语言中,寄存器是一种用于临时存储数据的设备。
不同的架构下寄存器的数量和功能都会有所不同,但一般来说,汇编语言中的寄存器包括通用寄存器、段寄存器、标志寄存器等。
2.指令汇编语言的指令是直接面向硬件的控制命令。
不同的指令可以实现对寄存器、内存、I/O设备等的读写操作、逻辑运算、算术运算等。
3.内存管理在汇编语言中,程序需要通过对内存的读写来实现对数据的操作。
因此,对内存的管理和操作是汇编语言编程中的一个重要知识点。
4.程序结构汇编语言程序的结构一般包括数据段、代码段、栈段等部分。
程序的结构对于程序的可读性和执行效率都有着很大的影响。
5.汇编指令集不同的CPU架构有不同的指令集,汇编语言程序需要根据不同的指令集进行编写。
常见的指令集包括x86指令集、ARM指令集等。
三、汇编语言编程技巧1.寄存器的使用在汇编语言编程中,合理地使用寄存器可以减少数据在内存和寄存器之间的频繁传输,提高程序的执行效率。
2.指令的优化对指令的选择和使用可以影响程序的执行效率,因此在编写汇编语言程序时需要选取适当的指令以实现对数据的操作。
3.内存管理合理地管理内存可以避免内存泄露和内存碎片的问题,提高程序的可靠性和执行效率。
4.程序结构的优化合理地设计程序的结构可以提高程序的可读性和维护性,同时也可以提高程序的执行效率。
寄存器:➢寄存器是CPU内部的高速存储单元➢它们为处理器提供各种操作所需要的数据或地址等信息存储器:➢存储器是由大量存储单元组成,需要用编号区别每个单元:编号=地址➢存储器地址是存储器中存储单元的编号➢每个存储单元存放一个字节量的数据➢采用十六进制数来表达地址⏹Intel 8086具有1兆字节(1MB)存储器容量⏹存储器地址表示为:00000H ~FFFFFHIO接口:➢I/O接口电路由接口寄存器组成,需要用编号区别各个寄存器:编号=地址➢I/O地址是接口电路中寄存器的编号⏹Intel 8086支持64K个8位端口⏹I/O地址可以表示为:0000H ~FFFFH计算机语言的发展:机器语言-> 汇编语言->高级语言操作码:⏹助记符(memonic)是便于人们记忆、并能描述指令功能的符号⏹助记符是表明指令功能的英语单词或其缩写操作数:➢符号表示操作数(如寄存器和存储单元地址)汇编语言:汇编格式指令以及使用它们编写程序的规则就形成汇编语言汇编语言程序:用汇编语言书写的程序汇编程序:将汇编语言程序翻译成机器语言程序(目标程序)的程序。
汇编语言和高级语言的比较:汇编语言程序的通用性、可移植性较差高级语言程序是标准化语言,可在多种计算机上编译后执行汇编语言功能有限、涉及硬件细节汇编语言可以直接、有效地控制计算机硬件,易于产生速度快、容量小的高效率目标程序汇编语言是低层语言但是不是低级语言有符号数:表达负整数、0和正整数⏹符号位需要占用一个位⏹常用机器数的最高位,0表示正数、1表示负数⏹有符号整数在计算机中默认采用补码正数:直接表示数值大小(同无符号数)⏹负数补码:将对应正数取反加1ASCII码:标准ASCII码用7位二进制编码,有128个➢不可显示的控制字符前32个和最后一个编码回车CR:0DH 换行LF:0AH响铃BEL:07H➢可显示和打印的字符:20H开始的95个编码⏹数码0~9:30H~39H⏹大写字母A~Z:41H~5AH⏹小写字母a~z:61H~7AH⏹空格:20H8086微处理器:总线接口单元BIU:负责读取指令和操作数执行单元EU :负责指令译码和执行➢8086的16位通用寄存器是:AX BX CX DXSI DI BP SP➢其中前4个数据寄存器都还可以分成高8位和低8位两个独立的寄存器。
汇编语言知识点
嘿,朋友们!今天咱来聊聊超有意思的汇编语言知识点!
就比如说指令集吧,那可真是汇编语言的核心啊!就像我们说话有各种
各样的表达一样,汇编语言也有它特定的指令来完成各种操作。
比如 MOV 指令,就像我们把一个东西从这边搬到那边似的。
比如说:MOV AX, 123,这不就相当于把 123 这个值搬到了寄存器 AX 里嘛!
还有寄存器呢,那可是数据的“临时小窝”呀!想象一下,这些寄存器就像一个个小抽屉,我们可以把重要的数据存放在里面随时取用。
比如AX、BX 这些寄存器,用处可大了!
操作数也很重要哇!它可以告诉汇编语言具体要操作的是什么。
好比你
要去超市买东西,你得知道买啥吧,这操作数就是那个具体要买的“东西”。
比如 ADD AX, BX,这里的 AX 和 BX 就是操作数呀!
汇编语言的语法虽然有点复杂,但是一旦你掌握了它,哇,那感觉就像
你打开了一扇通往神奇编程世界的大门!你难道不想体验一下那种掌控一切的感觉吗?
在学习汇编语言的过程中,我也遇到过很多难题呢。
有时候感觉就像在
一个迷宫里转来转去,但每次攻克一个难题,那成就感简直爆棚!就像打游戏通关一样爽!大家一起学汇编语言的时候,还经常互相讨论,哎呀,那种思维的碰撞真的是太有趣啦!“嘿,你这个指令用得好巧妙啊!”“哈哈,我也是突然想到的。
”
总之呢,汇编语言知识点真的是既有趣又充满挑战。
只要我们用心去学,就一定能发现它的魅力所在!让我们一起在汇编语言的海洋里畅游吧!。
《汇编语言程序设计》必考试题及答案一、选择题1. 汇编语言属于 ____。
A. 高级语言B. 机器语言C. 低级语言D. 自然语言答案:C. 低级语言2. 在汇编语言中,寄存器eax主要用于 ____。
A. 存储返回值B. 存储函数参数C. 存储局部变量D. 存储全局变量答案:A. 存储返回值3. 汇编语言中,jmp指令用于 ____。
A. 设置循环条件B. 调用子程序C. 跳转到指定地址D. 返回主程序答案:C. 跳转到指定地址二、简答题1. 请简述汇编语言与高级语言的区别。
汇编语言是一种低级语言,使用助记符来代表机器指令,每条汇编指令对应一条机器指令。
而高级语言更加抽象,采用更接近人类自然语言的表达方式,通过编译器将高级语言编写的程序转换为机器语言。
2. 请列举汇编语言常用的寄存器及其作用。
汇编语言常用的寄存器包括:- eax:主要用于存储返回值。
- ebx、ecx、edx:通用寄存器,用于暂存计算结果。
- esi、edi:源操作数寄存器和目的操作数寄存器,用于存储数据传输时的源地址和目的地址。
- ebp、esp:用于管理函数调用过程中的栈帧。
- eip:指令指针寄存器,存储下一条将要执行的机器指令的地址。
三、编程题请编写汇编语言程序,实现从键盘输入两个数,并将其相加后输出的功能。
```assemblysection .dataprompt db '请输入两个数,以空格分隔:', 0result db '两数相加的结果为:%d', 0section .bssnum1 resb 4num2 resb 4section .textglobal _start_start:; 输出提示信息mov eax, 4mov ebx, 1mov ecx, promptmov edx, 20int 0x80; 输入第一个数mov ebx, 0mov ecx, num1 mov edx, 4int 0x80; 输入第二个数 mov eax, 3mov ebx, 0mov ecx, num2 mov edx, 4int 0x80; 将两个数相加 mov eax, [num1] mov ebx, [num2] add eax, ebx; 输出结果mov ebx, eaxmov eax, 1mov ecx, resultint 0x80; 退出程序mov eax, 1xor ebx, ebxint 0x80```以上为一个简单的汇编语言程序,实现了从键盘输入两个数,并将其相加后输出的功能。
汇编语言复习要点2009-6-9一、程序员眼中的计算机1.计算机原理组成2.计算机原理的两个核心内容:☞机器指令的寄存器程控方式;☞存储程序式和CPU取指、执行的自动循环。
3.寄存器组各标志位的定义(SF、CF、OF、PF、ZP、AF二、数、码和指令①计算机被二进制机器码驱动且只能接受、认识和处理二进制位串;②一个二进制位串可以是指令、数或某种编码:究竟是什么由位串表征的含义决定;③汇编语言能认识各种进制的数、编码及字符串等其实是编译程序的功能;④溢出的人工判断:☞真正意义上的相加才可能溢出;☞正数相加向符号位进位或负数相加不向符号位进位即为溢出。
补码正负数据的不对称性,如8位补码:80H~07fH⑤转换:☞不同进制数之间的转换;☞数和码(BCD、ASC码)间的转换。
三、存储器寻址和堆栈1.物理地址定位存储单元;2.逻辑地址或地址指针的组成:段基址的高16位和偏移量(或有效地址);①代码段CS:IP;②堆栈段SS:SP;③数据段或扩展段DS/ES:各种存储器寻址方式生成的偏移量3.存储器寻址方式:①直接(使用偏移量)寻址,实际编程主要采用符号地址,即变量的形式;②BX、SI、DI及BP间接寻址;③BX及BP基址和SI及DI变址寻址;位移量的概念;④基址变址寻址。
顺便提及:①CPU内部的寄存器寻址;②在代码段伴随指令的立即数寻址;③I/O接口寻址方式:立即数寻址及使用DX间接寻址。
4.堆栈①堆栈的“生成”和空栈的状态:栈容量、栈顶、栈底;②PUSH和POP的功能和行为方式:栈指针SP变化和数据入、出栈的关系;③PUSHF和POPF的默认操作数:标志寄存器;④堆栈对子程序功能的支持:CALL和RET;CALL FAR PTR SUBPROC⑤堆栈对中断功能的支持:中断响应以非指令方式操作堆栈及IRET和RET的异同。
四、完整的指令集1.指令相关的核心内容包括:①指令的功能;②对标志位的影响;③必须和隐含使用的寄存器。
汇编知识点总结一、基本概念1. 汇编语言是什么?汇编语言是一种直接操作计算机硬件的语言,它是计算机程序设计的一种低级语言。
程序员可以使用汇编语言编写程序,然后由汇编器将汇编语言转换成机器语言,最终由计算机的CPU执行。
2. 汇编语言的特点汇编语言的特点包括可读性强、执行速度快、对计算机硬件直接控制等。
由于其语法规则严格,并且与特定架构相关,因此在不同的硬件平台上需要使用不同的汇编语言。
3. 汇编语言的优缺点汇编语言的优点包括执行速度快、对硬件控制能力强、代码维护相对简单等。
而其缺点包括语法复杂、编写难度大、可移植性差等。
二、指令集1. 汇编语言指令的分类汇编语言的指令可以分为数据传送指令、运算指令、逻辑指令、转移指令、比较指令等。
这些指令可以用于实现各种计算、判断、控制等功能。
2. 指令的格式汇编语言指令通常由操作码、寄存器或内存地址和操作数等部分组成。
操作码用来表示具体的操作,寄存器或内存地址用来表示操作的对象,操作数则是操作的参数。
3. 指令的执行过程汇编语言指令在执行时,需要经历取指令、译码、执行和访存等阶段。
在不同的硬件架构上,这些阶段的具体实现方式可能有所不同。
三、寻址方式1. 直接寻址直接寻址是指指令中的地址字段直接给出操作数的地址。
在程序执行时,CPU会直接访问指定地址的数据。
2. 间接寻址间接寻址是指指令中给出的地址字段并不是操作数的真实地址,而是另一个地址的地址。
CPU在执行指令时,需要先访问指定地址获取实际操作数的地址,然后再进行操作。
3. 寄存器寻址寄存器寻址是指指令中给出的地址字段是一个寄存器的标识,CPU在执行指令时,直接从寄存器中获取操作数的地址。
4. 寻址方式的选择不同的寻址方式在不同的情况下有不同的优势。
程序员需要根据具体的应用场景,选择合适的寻址方式来编写程序。
四、程序结构1. 汇编语言程序的基本结构汇编语言程序通常由数据段、代码段和堆栈段组成。
数据段用来存放程序中使用的数据,代码段用来存放程序的指令,堆栈段用来存放函数调用的参数和局部变量等。
汇编语言重点知识总结汇编速查手册汇编语言总结概要寄存器与存储器1.寄存器功能.寄存器的一般用途和专用用途.CS:IP 控制程序执行流程.SS:SP 提供堆栈栈顶单元地址.DS:BX(SI,DI)提供数据段内单元地址.SS:BP 提供堆栈内单元地址.ES:BX(SI,DI)提供附加段内单元地址.AX,CX,BX 和CX 寄存器多用于运算和暂存中间计算结果,但又专用于某些指令(查阅指令表)。
.PSW 程序状态字寄存器只能通过专用指令(LAHF,SAHF)和堆栈(PUSHF,POPF)进行存取。
2.存储器分段管理.解决了16位寄存器构成20位地址的问题.便于程序重定位.20位物理地址=段地址*16+偏移地址.程序分段组织:一般由代码段,堆栈段,数据段和附加段组成,不设置堆栈段时则使用系统内部的堆栈。
3.堆栈.堆栈是一种先进后出的数据结构,数据的存取在栈顶进行,数据入栈使堆栈向地址减小的方向扩展。
.堆栈常用于保存子程序调用和中断响应时的断点以及暂存数据或中间计算结果。
.堆栈总是以字为单位存取指令系统与寻址方式1.指令系统.计算机提供给用户使用的机器指令集称为指令系统,大多数指令为双操作数指令。
执行指令后,一般源操作数不变,目的操作数被计算结果替代。
.机器指令由CPU 执行,完成某种运算或操作,8086/8088指令系统中的指令分为6类:数据传送,算术运算,逻辑运算,串操作,控制转移和处理机控制。
2.寻址方式.寻址方式确定执行指令时获得操作数地址的方法.分为与数据有关的寻址方式(7种)和与转移地址有关的寻址方式(4)种。
.与数据有关的寻址方式的一般用途:(1)立即数寻址方式--将常量赋给寄存器或存储单元(2)直接寻址方式--存取单个变量(3)寄存器寻址方式--访问寄存器的速度快于访问存储单元的速度计算机、电子信息、通信工程专业适用涉及微机原理、单片机原理本资料结合知识点整理了近年来各名校复试真题考研 专业课复试 高频考点复习指导8086对存储器进行访问取指令时,物理地址可由(CS和IP )组合产生。
设SS=3300H,SP=1140H,在堆栈中压入5个字数据后,又弹出两个字数据,则SP=(113AH )。
利用DOS系统功能调用的9号(AH=9)功能,显示一个字符串,其入口参数应为(DS:DX=字符串首地址)。
在指令MOV AX,0 执行后,CPU状态标志位ZF的取值(不改变)执行MOV PSW,#10H是将MCS-551的工作寄存器位置为(第2组)某数存于内存数据段中,已知该数据段的段地址为2000H,而数据所在单元的偏移位置为0120H,该数据在内存的物理地址为(20120H )MCS-51单片机的堆栈区应建立在(片内数据存储区的高128字节单元)MCS-51单片机的位寻址区位于内部RAM的(20H-2FH)单元(4)寄存器间接寻址方式--访问数组元素(5)变址寻址方式(6)基址变址寻址方式(7)相对基址变址寻址方式(5),(6),(7)都便于处理数组元素.与数据有关的寻址方式中,提供地址的寄存器只能是BX,SI,DI 或BP.与转移地址有关的寻址方式的一般用途:(1)段内直接寻址--段内直接转移或子程序调用(2)段内间接寻址--段内间接转移或子程序调用(3)段间直接寻址--段间直接转移或子程序调用(4)段间间接寻址--段间间接转移或子程序调用汇编程序和汇编语言1.汇编程序.汇编程序是将汇编语言源程序翻译成二进制代码程序的语言处理程序,翻译的过程称为汇编。
2.汇编语言.汇编语言是用指令助记符,各种标识变量,地址,过程等的标识符书写程序的语言,汇编语言指令与机器指令一一对应。
.伪指令,宏指令不是由CPU 执行的指令,而是由汇编程序在汇编期间处理的指令。
.伪指令指示汇编程序如何完成数据定义,存储空间分配,组织段等工作。
.宏指令可简化程序并减少程序书写量。
.条件汇编伪指令的功能是确定是否汇编某段源程序,而不是实现程序分支,对未汇编的程序将不产生相应的目标代码。
.结构作为一种数据结构可将一组类型不同但有逻辑关联的数据组织在一起,便于整体处理数据。
.记录可用于提高存储单元的利用率,将若干不足一个字节或字且有逻辑关联的信息压缩存放在一个字节或字中。
.指令中的表达式在汇编期间计算,并且只能对常量或地址进行计算。
程序设计基础1.分支程序设计.程序分支由条件转移指令或无条件转移指令实现.存放若干目的转移地址或跳转指令的跳转表常用于实现多路分支.条件转移指令只能实现偏移量为-128至+127字节范围的转移.无条件转移指令根据寻址方式可实现短转移(偏移量为-128至+127字节),段内转移,段间转移。
2.循环程序设计对变址寻址[BP+0AH],其默认的段寄存器是(SS )# 表示立即取数; @ 表示间接取数,取数据段的地址(类似指针)M OVX A,@R0指令中,源操作数寻址方式及指令作用区间是(寄存器间接,外部数据存储器).可由循环控制指令或条件转移指令组织循环结构.内层循环结构必须完全包含在外层循环结构内,并不能发生从循环结构外向循环结构内的转移。
3.子程序设计.子程序中应保护寄存器内容,并正确使用堆栈,成对执行PUSH 和POP 指令,保证执行RET 指令时堆栈栈顶为返回地址。
.主程序可通过寄存器,参数表,或堆栈传递参数给子程序4.EXE 文件和COM 文件.二者都是可执行文件.COM 文件源程序的特点是:第一条可执行指令的起始存放地址必须是100H,不能分段,不用定义堆栈,所有过程为NEAR 类型,直接用INT 20H 指令返回DOS 。
5.DOS 功能调用与BIOS 中断调用.二者都是完成DOS 系统提供给用户的输入/输出等常用功能,通过执行软中断指令完成一次软中断服务。
.DOS 功能调用的中断服务程序是操作系统的一部分,存于RAM 中;而BIOS 中断调用的中断服务程序存放在ROM 中。
输入/输出与中断系统1.输入/输出的方式.程序直接I/O 方式:用IN 和OUT 指令直接在端口级上进行I/O 操作,数据传送方式分为无条件传送方式和查询传送方式。
.中断传送方式:由CPU 响应中断请求完成中断服务。
.DMA 传送方式:直接在存储器与外设之间传送数据。
2.有关中断的概念.中断、中断源、中断请求、中断服务、中断向量、中断向量表、中断响应过程、中断指令、开中断、关中断、内部中断、外部中断、可屏蔽中断、非屏蔽中断。
3.键盘I/O 、显示器I/O 操作.键盘的输入操作用BIOS 的16H 中断调用控制,也可直接访问60H 端口(数据端口),61H 端口(状态端口)检测键盘的按键操作。
.对于特殊键(如Shift ,Ctrl ,Alt ,NumLock ,ScrollLock 等键)的按动情况,可以直接从来40:17H 单元取得有关信息。
.显示器的图形显示可以用BIOS 的10H 中断调用实现,另一种速度更快的方法是直接读写视频缓冲区。
4.打印机I/O 操作由INT 17H 中断调用实现,串行通讯口操作由INT 14H 中断调用实现。
CLD Clear the direction flag (set to forward direction)采用两片可编程中断控制器8259A级联使用,可以使CPU的可屏蔽中断扩大到(15级)下面是某8086微机内存中的部分数据,则中断类型号为11H的中断服务程序的入口地址是(F000:F84D )。
0000:0040 B3 18 8A CC 4D F8 00 F0 41 F8 00 F0 C5 18 8A CC 0000:0050 39 E7 00 F0 A0 19 8A CC 2E E8 00 F0 D2 EF 00 F0属于8051单片机与输入输出设备进行信息交换方式的是(无条件传送方式、查询方式、中断方式)MCS-51 单片机定时/计数器的(模式1)是配置为16位的定时/计数器模式根据串行通信规程规定,收发双方的(波特率)必须保持相同。
在串行异步数据传送时,如果格式规定8位数据位,1位奇偶校验位,1位停止位,则异步数据总共有(11)位,即还有1位(异步状态)。
PCI总线是(32/64位)总线。
将方向标志置0,使si 和di 增量,串处理从低地址向高地址处理8088汇编速查手册一、数据传输指令它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据.1.通用数据传送指令.MOV 传送字或字节.MOVSX 先符号扩展,再传送.MOVZX 先零扩展,再传送.PUSH 把字压入堆栈.POP 把字弹出堆栈.PUSHA 把AX,CX,DX,BX,SP,BP,SI,DI 依次压入堆栈.POPA 把DI,SI,BP,SP,BX,DX,CX,AX 依次弹出堆栈.PUSHAD 把EAX,ECX,EDX,EBX,ESP,EBP,ESI,EDI 依次压入堆栈.POPAD 把EDI,ESI,EBP,ESP,EBX,EDX,ECX,EAX 依次弹出堆栈.BSWAP 交换32位寄存器里字节的顺序XCHG 交换字或字节.(至少有一个操作数为寄存器,段寄存器不可作为操作数)CMPXCHG 比较并交换操作数.(第二个操作数必须为累加器AL/AX/EAX )XADD 先交换再累加.(结果在第一个操作数里)XLAT 字节查表转换.──BX 指向一张256字节的表的起点,AL 为表的索引值(0-255,即0-FFH);返回AL 为查表结果.([BX+AL]->AL )2.输入输出端口传送指令.IN I/O 端口输入.(语法:IN 累加器,{端口号│DX})OUT I/O 端口输出.(语法:OUT {端口号│DX},累加器)输入输出端口由立即方式指定时,其范围是0-255;由寄存器DX 指定时,其范围是0-65535.3.目的地址传送指令.LEA 装入有效地址.例:LEA DX,string ;把偏移地址存到DX.LDS 传送目标指针,把指针内容装入DS.例:LDS SI,string ;把段地址:偏移地址存到DS:SI.LES 传送目标指针,把指针内容装入ES.例:LES DI,string ;把段地址:偏移地址存到ES:DI.LFS 传送目标指针,把指针内容装入FS.例:LFS DI,string ;把段地址:偏移地址存到FS:DI.LGS 传送目标指针,把指针内容装入GS.例:LGS DI,string ;把段地址:偏移地址存到GS:DI.LSS 传送目标指针,把指针内容装入SS.例:LSS DI,string;把段地址:偏移地址存到SS:DI.4.标志传送指令.LAHF标志寄存器传送,把标志装入AH.SAHF标志寄存器传送,把AH 内容装入标志寄存器.PUSHF 标志入栈.8086执行指令 MOV AL,[BX],其中BX=2041H时,BHE和A0的输出是(0,1)在堆栈内,有效地址为2500H到2505H单元内依次存放10H、20H、30H、40H、50H、60H 六个数,已知SP=2502H,执行POP BX指令后,有(SP=2504H、BX=4030H )下列指令中,能完成将AL寄存器清零的有(3)条。