2022年2022年汇编语言符号及教材符号汇总大全 .pdf





《2022年2022年汇编语言符号及教材符号汇总大全 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年汇编语言符号及教材符号汇总大全 .pdf(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 教材符号+、-、*、/算术运算符。&宏处理操作符。宏扩展时不识别符号和字符串中的形式参数,如果在形式参数前面加上一个&记号,宏汇编程序就能够用实在参数代替这个形式参数了。$地址计数器的值 记录正在被汇编程序翻译的语句地址。每个段均分配一个计数器,段内定义的所有标号和变量的偏移地址就是当前汇编地址计数器的值。?操作数。在数据定义语句中,操作数用?,其作用是分配并保留存储空间,但不存入确定的数据。等号伪指令 符号定义。对符号进行定义和赋值,功能与EQU 相似,但允许(重复)再定义。:修改属性运算符(操作符)段操作符。用来临时给变量、标号或地址表达式指定一个段属性(不用缺省的段寄存器),自动生成一
2、个“跨段前缀字节”。注意,段寄存器CS 和 ES 不能被跨越,堆栈操作时也不能跨越SS。;注释符号。%特殊宏操作符,用来将其后的表达式(通常是符号常数,不能是变量名和寄存器名)转换成它所代表的数值,并将此数值的ASCII码嵌入到宏扩展中。()1.运算符 用来改变运算符的优先级别。2.教材符号,表示括号内存储单元(或寄存器)的内容。宏调用时用来将带间隔符(如空格,逗号等)的字符串(作为实参)括起来。1.运算符。方括号括起来的数是数组变量的下标或地址表达式。带方括号的地址表达式必须遵循下列原则,只有BX、BP、SI、DI 这四个寄存器可在方括号内出现;BX 或 BP 可单独出现在各方括号中,也可以
3、与常数、SI 或 DI 一起出现在方括号内,但不允许BX 和 BP 出现在同一个方括号内;SI 和 DI 可以单独出现在各方括号内,也可以与常数、BP 或 BX 一起出现在方括号内,但不允许SI 和 DI 出现在同一个方括号内;一个方括号内包含多个寄存器时,它们只能作加法运算;若方括号内包含基址指针BP,则隐含使用堆栈段寄存器SS 提供段基址,否则均隐含使用数据段寄存器DS 提供段基址。2.教材符号,表示其中的内容可省略。.LIST 伪指令。用于打开列表文件输出。.RADIX伪指令。把缺省的基数改为2-16范围内的任意基数。.RADIX不影响 DD、DQ、DT伪指令,在这些伪指令中,输入的数值
4、只要没有加上数据类型就认为是十进制数。.XLIST 伪指令。用于关闭列表文件输出。名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 20 页 -%OUT 伪指令。在汇编时显示其后的信息。AAA 指令助记符 加法运算后的ASCII调整(非压缩的BCD 码)。无操作数,调整的加法结果在AL 中。AF 和 CF 的状态改变说明结果大于9。检查 AL 的低四位是否为合法的BCD码(0-9),如果合法就清除AL 的高四位以及AF 和 CF 标志。当AL 的低四位表示的数大于9或 AF1 时,将 AL 加 6,AH 加 1,并使 AF 和 CF 置位,清除AL 中的高四位。任何一个AF 之间的
5、数加上6 以后,都会使AL 低 4 位产生 0-9 之间的数,从而达到调整的目的。AAD 指令助记符 除法的 ASCII调整(非压缩的BCD 码)。在执行除法操作前,必须利用 AAD 指令将非压缩型BCD 码表示的数转换成二进制数送AL。步骤是,先将被除数的高位数(AH 中的内容)乘以10,然后加到AL 的低位数中,接着将AH 清零。AAM 指令助记符 乘法的 ASCII调整(非压缩的BCD 码)。用于将字节乘法的积转换成两个合法的十进制非压缩码。AAM 不带操作数,假定成绩在AH 和 AL 中,并将调整后的非压缩码送回AH 和 AL。为了保证AAM 得到正确的结果,原乘数和被乘数必须是合法的
6、非压缩码。指令执行时,AAM用 10(0AH)除 AL 寄存器,并将除得的商和余数分别送AH 和 AL 寄存器,实现转换。AAS 指令助记符 减法运算后的ASCII调整(非压缩的BCD 码)。检查AL 的低四位是否为合法的BCD 码(0-9),如果合法就清除AL 的高四位以及AF 和 CF 标志。当AL 的低四位表示的数大于9 或 AF1 时,将 AL 减 6,AH 减 1,并使 AF 和 CF 置 1,清除 AL 中的高四位。ADC 指令助记符 带进位加法(把CF 的值加上)。用于多字节数的高字节加法运算。ADD 指令助记符 加法。参与运算的二操作数应该同时带符号或不带符号,并且长度一致。操
7、作数可以是寄存器、存储器或立即数,但不能同时为存储单元或段寄存器,立即数也不能作为目的操作数。AF AuxiliaryCarryFlag,辅助进位标志,在标志寄存器的第4 字节。记录运算时第3 位(半个字节)产生的进位值(置1)。该标志用于对BCD 码的加减运算中。AND 逻辑运算符(在语句的操作数部分,汇编时完成)或逻辑操作指令助记符(在语句的操作码部分,其运算在执行指令时完成)按位与。只有相“与”的两位全为1,结果才为1。某数自己与自己相“与”,操作数不变,进位标志CF 清 0。ASSUME 段定义伪指令 设定分段寄存器,格式为 ASSUME段寄存器:段名,段寄存器名:段名 。在代码段的开
8、始用来指出所有段与段寄存器的关系,确定某个段分配给哪个段寄存器。ASSUME只指出各段寄存器的分配,并没有把段地址装入相应的段寄存器。为此,在代码段中,还必须把数据段和附加数据段的段地址装入相应的寄存器中。AT 伪指令 段定义(组合类型)。该段按绝对地址定位,段基址为数值表达式的值,位移量为 0。不能指定代码段。名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 20 页 -AX Accumulator,通用寄存器,算术运算的主要寄存器。另外,所有的I/O指令都使用这一寄存器与外部设备传送信息。其中AH 是高 8 位,AL 是低 8 位。B 数据类型后缀,表示二进制常量。BPBase
9、 Pointer,基址指针寄存器。可以与SS 寄存器联用来确定堆栈中任一存储单元的地址。它指示堆栈中任一单元的偏移量。非堆栈进出指令要访问堆栈,只能通过BP 进行。BX Base,通用寄存器。在计算存储器地址时,经常用作基址寄存器。其中BH 是高8 位,BL 是低8 位。BYTE 伪指令 段定义(定位类型)。本段起始单元可以从任一地址开始,段间不留空隙,存储器利用率最高。CALL 指令助记符 程序调用。一、段内直接调用:格式为 CALL过程名。先把 IP 内容(子程序的返回地址,即CALL下一条指令的地址)压入堆栈,然后IP 转移到子程序的入口地址。二、段内间接调用:格式为 CALL WORD
10、PTR OPD。先把 IP 的内容压入堆栈,然后IP指向(转到)由寻址方式决定的EA。三、段间直接调用。格式为CALLFAR PTR过程名 。先把 CS 和 IP 的内容压入堆栈,然后在 CS 中装入新的段地址,IP 指向段内偏移地址。四、段间间接调用:格式为CALLDWORDPTR OPD。先把 CS 和 IP 的内容压入堆栈,然后把寻址方式确定的有效地址所指定的一个字储存单元的内容送入IP,下一个字存储单元的内容(段首址)送入CS。CBW 指令助记符 字节转换为字。把AL 中字节的符号扩展到AH 中,若(AL)的最高有效位为 0,则(AH)00;若(AH)的最高有效位为1,则(AH)0FF
11、H。CFCarryFlag,进位标志,在标志寄存器的第0 字节,记录运算时从最高有效位产生的进位值(置 1)。作加法时,CF 位可以用来表示无符号数的溢出(有符号数溢出用OF 表示)。CLC 指令助记符 标志(进位)设置。设置CF0。CLD 指令助记符 清方向标志。使DF0。这样,当执行字节串操作指令时,地址自动增 1;当执行字串操作指令时,地址自动增2。CLI 指令助记符 中断允许标志设置。设置IF 0。CMC 指令助记符 标志(进位)设置。CF 取反。CMP 指令助记符 比较。对于“CMP AX,BX”,如果是两个无符号数比较(减),若结果没有产生借位,即CF0,则(AX)(BX);若 C
12、F 1,则(AX)(BX)。如果是两个带符号数比较,则当没有溢出(OF0)时,若SF 0,则(AX)(BX)若 SF名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 20 页 -1,则(AX)(BX)当产生溢出(OF1)时,若SF0,则(AX)(BX)多 SF 1,则(AX)(BX)简炼的结论,若OF异或SF 0,则(AX)(BX)若 OF异或SF1,则(AX)(BX)CMPS 指令助记符 串比较。通常用CMPSB 或 CMPSW。CMPSB 指令助记符 串比较。将DS 段 SI 指出的字节数据减去ES 段 DI 指出的字节数据(不保存结果),然后根据相减结果设置标志位(两个数据相
13、等,则ZF 1)。并由方向标志 DF 修改 SI和 DI 中的地址,即当DF 0 时,地址都加1;当 DF1 时,地址都减1。CMPSW 指令助记符 串比较。将 DS 段 SI 指出的字数据减去ES 段 DI 指出的字数据(不保存结果),然后根据相减结果设置标志位(两个数据相等,则ZF 1)。并由方向标志DF修改 SI和 DI 中的地址,即当DF 0 时,地址都加2;当 DF 1 时,地址都减2。COMMON 伪指令 段定义(组合类型)。该段与其它模块中所有也说明为COMMON的同名,同 类别 段共享相同的存储区域,即这些段的起始地址都相同,共享的公共存储区域的长度是各模块同名段中最大的长度。
14、使用COMMON方式可以使不同模块中的不同变量或标号作用于相同的存储单元。CSCodeSegment,代码段寄存器,存放当前运行的代码段起始地址(高16 位)。代码段存放当前正在运行的程序。CWD 指令助记符 字转换为双字。把AX 中字节的符号扩展到DX 中,若(AX)的最高有效位为0,则(DX)0000;若(AX)的最高有效位为1,则(DX)0FFFFH。CXCount,通用寄存器。在循环和串处理指令中用作隐含的计数器。其中CH 是高8 位,CL是低8 位。DAA 指令助记符 加法的十进制调整(压缩的BCD 码)。无操作数,调整的加法结果在 AL 中。调整方法是,如果AL 的低4 位大于 9
15、 或 AF1,则加6 到 AL 并置 AF1;如果 AL 的高4 位大于9 或 CF1,则加 60H到 AL,并置 CF1。DAS 指令助记符 减法的十进制调整(压缩的BCD 码)。调整方法是,若AF 1 或 AL的低 4 位为 AF,则(AL)减 06H,且 AF 置 1;若 CF1 或 AL 的高4 位为 AF,则(AL)减 60H,且 CF 置 1。DB 伪指令 定义字节。其后的每个操作数占用一个字节。若是字符串,必须用引号 括起来,字符串不能超过255 个字符,字符串自左至右以字符的 ASCII码按地址递增的顺序依次存放。DD 伪指令 定义双字。其后的每个操作数占用二个字(低字在前)。
16、DD 还可以把其后的变量或标号的偏移地址和所在段首址存入存储器内指定的双字单元(即 DD 前面的变量)中,第一个字中存放DD 后的变量的偏移地址,第二个字中存放该变量所在段的段首址。名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 20 页 -DEC 指令助记符 减 1。操作数可以是寄存器或存储器单元,但不能是段寄存器或立即数。DF DirectionFlag,方向标志,在标志寄存器的第10 字节,在串处理指令中控制处理信息的方向。DF 为 1 时是反向,每次操作后使SI 和 DI 减量(这样就使串处理从高地址向低地址方向处理);当 DF 为 0 时是正向,使SI 和 DI 增量。
17、DI DestinationIndex,目的变址寄存器。与ES 联用,用来确定数据段中某一存储单元的偏移地址。在串处理指令中,DI 指出目的操作数的地址,隐含段为当前的附加段。DIV 指令助记符 无符号数除法。对于字节操作,16 位被除数(若被除数为8 位,需用符号扩展的方法,即用 CBW指令扩展到 16 位)放在AX 中,8 位除数为源操作数,相除结果,8 位商在 AL 中,而8 位余数在 AH 中。对于字操作,32 位被除数(若被除数为16 位,用 CWD指令扩展到32 位)放在 DX 和AX 中,16 位除数为源操作数,相除结果,字(16 位)商在AX 中,字余数在DX 中。源操作数不能
18、是立即操作数,指令执行后,源操作数的值不变。如果商超过目标寄存器能存放的最大数值时,系统产生0 类中断。被除数若需要转换为双精度值时,一定不能用符号扩展,而只能将高16 位送 0(MOVDX,0)。DQ 伪指令 定义四字。其后的每个操作数占用四个字。DS DataSegment,数据段寄存器。存放数据段的起始地址(高16 位)。数据段存放当前运行程序所用的数据,如果程序中使用了串处理指令,则其源操作数也存放在数据段中。DT 伪指令 定义十字节。其后的每个操作数占用十个字节。DUP 复制操作符。DUP前面的常量或表达式的值(正整数)指明DUP后面的括号中的操作数之重复次数。DW 伪指令 定义字。
19、其后的每个操作数占用一个字(低字节在前,高字节在后)。DW可以给两个字符组成的字符串(用 括起来)分配两个字节的存储单元(前一个字符在高字节)。DW 还可以把其后的变量或标号的偏移地址存入存储器的指定单元(即DW 前的变量)。DX Data,通用寄存器。在作双字长运算时,把DX 和 AX 组合在一起存放一个双字数,DX 用来存放高位字。此外,对某些 I/O操作,DX 可用来存放I/O的端口地址。其中 DH 是高8 位,DL 是低8 位。EA 教材符号-某一存储单元的偏移地址,即该单元到它所在段首址的字节距离。ELSE 伪指令 条件。条件不满足时汇编ELSE 至 ENDIF之间的程序块。END
20、伪指令 程序模块结束。主程序模块结束,END后要接标号(存储器地址),指出程名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 20 页 -序开始执行的地址。子程序不用。ENDIF 伪指令 条件(结尾)。ENDM 宏指令 宏定义(结尾)。重复块(结尾)。ENDP 伪指令 过程(子程序)定义(结尾)。ENDS 伪指令 段定义或结构定义(结尾)。ESExtraSegment,附加段寄存器。用于存放附加段的起始地址(高16 位)。附加段是一个辅助的数据区,也是串处理指令的目的操作数据存放区。ESC 指令助记符 交权给外部协处理器。是在大模式下使用的一条指令,它可以使外部协处理器从8086/
21、8088指令流中获得一个操作码和一个操作数,并使用 8086/8088的寻址方式。指令后的操作码是一个6 位的立即数,其中3 位用来指明哪一个协处理器工作,另外3 位指明这个处理器执行什么指令。随后的源操作数若是寄存器,则8086/8088直接将其内容放置在数据总线上;如果这个源操作数是存储变量,则8086/8088从存储器中取出操作数并放到数据总线上,从而使外部协处理器可以获取这个操作数,对它进行运算。EQ 关系运算符 相等。若满足条件,输出结果为全1(所有的位),否则为全0。EQU 等价伪指令。格式为 符号名EQU表达式.EQU 可以把它前面的符号定义为一个常量或一个能求出常数值的表达式,
22、或定义为别的符号名,甚至定义为一条可执行的命令。不得重复定义。例一,新变量名EQU THISDWORD,该语句将紧跟其后的变量重新定义为双字类,以新变量名命名。数据存储区首址不变。例二,新变量名EQU WORDPTR 旧变量名,该语句将旧变量重新定义为字类型,以新变量名命名。数据存储区首址不变。EVEN 伪指令。它使此语句后面的程序或数据块的起始地址为偶数。EXTRN 伪指令 定义外部符号。格式是EXTRN符号名:类型。表示本模块中需要引用但却是在其他模块中定义说明为PUBLIC的那些符号(符号常量、变量、标号以及过程名)。符号类型必须与他们在其他模块定义时的符号类型保持一致。FLAGS 标志
23、寄存器(即PSW)。GE 关系运算符 大于等于。若满足条件,输出结果为全1(所有的位),否则为全0。GROUP 伪指令 分组。把模块中若干不同名的段集合成一个组,并赋予一个组名,使它们都装在一个物理段中(64KB)。可以得到较紧凑的代码,组内各段间的跳转都可以看作是段内跳转。格式是组名GROUP段名 1,段名 2,名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 20 页 -GT 关系运算符 大于。若满足条件,输出结果为全1(所有的位),否则为全0。H 数据类型后缀,表示十六进制常量。HIGH 字节分解运算符(操作符)。用来从运算对象(一个数或地址表达式)中分离出(取)高字节。HL
24、T 指令助记符 停机。该指令使处理器处于暂停状态,该状态可以由复位信号、非屏蔽中断请求信号以及IF 1情况下可屏蔽中断信号清除。IDIV 指令助记符 带符号数除法。对于字节操作,16 位被除数(若被除数为8 位,需用符号扩展的方法,即用CBW指令扩展到16 位)放在AX 中,8 位除数为源操作数,相除结果,8 位商在 AL 中,而8 位余数在 AH 中。对于字操作,32 位被除数(若被除数为16 位,用 CWD指令扩展到32 位)放在DX 和 AX 中,16 位除数为源操作数,相除结果,字(16 位)商在AX 中,字余数在DX 中。余数的符号必须和被除数的符号相同。IFInterruptFla
25、g,中断标志,在标志寄存器的第9 字节,当 IF 为 1 时,允许中断,即 CPU响应外设的中断请求。伪指令 条件(表达式的值不等于0 为真)。若条件成立,则汇编整个程序块;但中间若有ELSE 命令,则只汇编到ELSE;当条件不成立时,只汇编从ELSE 到ENDIF之间的程序块。IF1 伪指令 条件(若是第一趟扫描,条件为真)。IF2 伪指令 条件(若是第二趟扫描,条件为真)。IFB 伪指令 条件(若其后的参数对应的实参存在,为真)。IFDEF 伪指令 条件(若其后的符号已定义或被说明为外部符号,则条件为真)。IFDIF 伪指令 条件(若两个字符串参数不相同,则条件为真)。IFE 伪指令 条件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年汇编语言符号及教材符号汇总大全 2022 汇编语言 符号 教材 汇总 大全

限制150内