【2017年整理】汇编语言符号及教材符号汇总大全

上传人:德****1 文档编号:1030574 上传时间:2017-05-26 格式:DOC 页数:20 大小:94KB
返回 下载 相关 举报
【2017年整理】汇编语言符号及教材符号汇总大全_第1页
第1页 / 共20页
【2017年整理】汇编语言符号及教材符号汇总大全_第2页
第2页 / 共20页
【2017年整理】汇编语言符号及教材符号汇总大全_第3页
第3页 / 共20页
【2017年整理】汇编语言符号及教材符号汇总大全_第4页
第4页 / 共20页
【2017年整理】汇编语言符号及教材符号汇总大全_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《【2017年整理】汇编语言符号及教材符号汇总大全》由会员分享,可在线阅读,更多相关《【2017年整理】汇编语言符号及教材符号汇总大全(20页珍藏版)》请在金锄头文库上搜索。

1、 教材符号 +、-、* 、/算术运算符。 & 宏处理操作符。宏扩展时不识别符号和字符串中的形式参数,如果在形式参数前面加上一个& 记号,宏汇编程序就能够用实在参数代替这个形式参数了。 $地址计数器的值记录正在被汇编程序翻译的语句地址。每个段均分配一个计数器,段内定义的所有标号和变量的偏移地址就是当前汇编地址计数器的值。 ?操作数。在数据定义语句中,操作数用?,其作用是分配并保留存储空间,但不存入确定的数据。 等号伪指令符号定义。对符号进行定义和赋值,功能与 EQU 相似,但允许(重复)再定义。 :修改属性运算符(操作符)段操作符。用来临时给变量、标号或地址表达式指定一个段属性(不用缺省的段寄存

2、器),自动生成一个“跨段前缀字节”。注意,段寄存器 CS 和 ES不能被跨越,堆栈操作时也不能跨越 SS。 ;注释符号。 % 特殊宏操作符,用来将其后的表达式(通常是符号常数,不能是变量名和寄存器名)转换成它所代表的数值,并将此数值的 ASCII 码嵌入到宏扩展中。 ( )1.运算符用来改变运算符的优先级别。2.教材符号,表示括号内存储单元(或寄存器)的内容。 宏调用时用来将带间隔符(如空格,逗号等)的字符串(作为实参)括起来。 1.运算符。方括号括起来的数是数组变量的下标或地址表达式。带方括号的地址表达式必须遵循下列原则,只有 BX、BP、SI、DI 这四个寄存器可在方括号内出现;BX 或

3、BP 可单独出现在各方括号中,也可以与常数、SI 或 DI 一起出现在方括号内,但不允许 BX 和 BP出现在同一个方括号内;SI 和 DI 可以单独出现在各方括号内,也可以与常数、 BP 或 BX 一起出现在方括号内,但不允许 SI 和 DI 出现在同一个方括号内; 一个方括号内包含多个寄存器时,它们只能作加法运算;若方括号内包含基址指针 BP,则隐含使用堆栈段寄存器 SS 提供段基址,否则均隐含使用数据段寄存器 DS 提供段基址。 2.教材符号,表示其中的内容可省略。 .LIST 伪指令。用于打开列表文件输出。 .RADIX伪指令。把缺省的基数改为 2-16 范围内的任意基数。 .RADI

4、X 不影响DD、DQ、DT 伪指令,在这些伪指令中,输入的数值只要没有加上数据类型就认为是十进制数。 .XLIST伪指令。用于关闭列表文件输出。 %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 中的高四位。任

5、何一个 AF 之间的数加上 6 以后,都会使 AL 低 4 位产生 0-9 之间的数,从而达到调整的目的。 AAD 指令助记符除法的 ASCII 调整(非压缩的 BCD 码)。在执行除法操作前,必须利用 AAD 指令将非压缩型 BCD 码表示的数转换成二进制数送 AL。步骤是,先将被除数的高位数(AH 中的内容)乘以 10,然后加到 AL 的低位数中,接着将 AH 清零。 AAM 指令助记符乘法的 ASCII 调整(非压缩的 BCD 码)。用于将字节乘法的积转换成两个合法的十进制非压缩码。AAM 不带操作数,假定成绩在 AH 和 AL 中,并将调整后的非压缩码送回 AH 和 AL。为了保证 A

6、AM 得到正确的结果,原乘数和被乘数必须是合法的非压缩码。指令执行时,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 的值加上)。用于多字节数的高字节加法运算。

7、ADD 指令助记符加法。参与运算的二操作数应该同时带符号或不带符号 ,并且长度一致。操作数可以是寄存器、存储器或立即数,但不能同时为存储单元或段寄存器,立即数也不能作为目的操作数。 AF Auxiliary Carry Flag,辅助进位标志,在标志寄存器的第 4 字节。记录运算时第 3 位(半个字节)产生的进位值(置 1)。该标志用于对 BCD 码的加减运算中。 AND逻辑运算符(在语句的操作数部分,汇编时完成)或逻辑操作指令助记符(在语句的操作码部分,其运算在执行指令时完成)按位与。只有相“与”的两位全为 1 ,结果才为 1。某数自己与自己相“与” ,操作数不变,进位标志 CF 清 0 。

8、 ASSUME段定义伪指令设定分段寄存器,格式为ASSUME 段寄存器:段名, 段寄存器名:段名。在代码段的开始用来指出所有段与段寄存器的关系,确定某个段分配给哪个段寄存器。ASSUME 只指出各段寄存器的分配,并没有把段地址装入相应的段寄存器。为此,在代码段中,还必须把数据段和附加数据段的段地址装入相应的寄存器中。 AT 伪指令段定义(组合类型)。该段按绝对地址定位,段基址为数值表达式的值,位移量为 0 。不能指定代码段。 AX Accumulator,通用寄存器,算术运算的主要寄存器。另外,所有的 I/O 指令都使用这一寄存器与外部设备传送信息。其中 AH 是高 8 位,AL 是低 8 位

9、。 B 数据类型后缀,表示二进制常量。 BPBase Pointer, 基址指针寄存器。可以与 SS 寄存器联用来确定堆栈中任一存储单元的地址。它指示堆栈中任一单元的偏移量。非堆栈进出指令要访问堆栈,只能通过 BP 进行。 BX Base,通用寄存器。在计算存储器地址时,经常用作基址寄存器。其中 BH 是高 8 位,BL 是低 8 位。 BYTE伪指令段定义(定位类型)。本段起始单元可以从任一地址开始,段间不留空隙,存储器利用率最高。 CALL指令助记符 程序调用。一、段内直接调用:格式为 CALL 过程名。先把 IP 内容(子程序的返回地址,即CALL 下一条指令的地址)压入堆栈,然后 IP

10、 转移到子程序的入口地址。二、段内间接调用:格式为 CALL WORD PTR OPD。先把 IP 的内容压入堆栈,然后IP 指向(转到)由寻址方式决定的 EA。三、段间直接调用。格式为CALL FAR PTR 过程名。先把 CS 和 IP 的内容压入堆栈,然后在 CS 中装入新的段地址,IP 指向段内偏移地址。四、段间间接调用:格式为CALL DWORD PTR OPD。 先把 CS 和 IP 的内容压入堆栈,然后把寻址方式确定的有效地址所指定的一个字储存单元的内容送入 IP,下一个字存储单元的内容(段首址)送入 CS。 CBW 指令助记符字节转换为字。把 AL 中字节的符号扩展到 AH 中

11、,若(AL)的最高有效位为 0 ,则( AH)00 ;若(AH)的最高有效位为 1, 则(AH)0FFH。 CFCarry Flag,进位标志,在标志寄存器的第 0 字节 ,记录运算时从最高有效位产生的进位值(置 1)。 作加法时, CF 位可以用来表示无符号数的溢出(有符号数溢出用 OF 表示)。 CLC 指令助记符标志(进位)设置。设置 CF0 。 CLD 指令助记符清方向标志。使 DF0 。这样,当执行字节串操作指令时,地址自动增 1 ;当执行字串操作指令时,地址自动增 2 。 CLI 指令助记符 中断允许标志设置。设置 IF0 。 CMC 指令助记符 标志(进位)设置。CF 取反。 C

12、MP 指令助记符比较。对于“ CMP AX,BX” ,如果是两个无符号数比 较(减),若结果没有产生借位,即 CF0, 则(AX)(BX);若 CF 1,则(AX)(BX)。 如果是两个带符号数比较,则 当没有溢出(OF0 )时,若 SF0,则(AX )(BX ) 若SF1,则( AX)(BX) 当产生溢出(OF 1)时,若 SF0,则(AX)(BX) 多SF1,则( AX)(BX) 简炼的结论,若 OF 异或 SF0,则(AX)(BX) 若 OF 异或 SF1,则(AX)(BX) CMPS指令助记符串比较。通常用 CMPSB 或 CMPSW。 CMPSB 指令助记符串比较。将 DS 段 SI

13、 指出的字节数据减去 ES 段 DI 指出的字节数据(不保存结果),然后根据相减结果设置标志位(两个数据相等,则 ZF1)。 并由方向标志 DF 修改 SI 和 DI 中的地址,即当 DF0 时,地址都加 1; 当 DF1 时, 地址都减 1 。 CMPSW 指令助记符串比较。将 DS 段 SI 指出的字数据减去 ES 段 DI 指出的字数据(不保存结果),然后根据相减结果设置标志位(两个数据相等,则 ZF1)。 并由方向标志 DF 修改 SI 和 DI 中的地址,即当 DF0 时,地址都加 2; 当 DF1 时, 地址都减 2 。 COMMON伪指令 段定义(组合类型)。该段与其它模块中所有

14、也说明为 COMMON 的同名,同类别段共享相同的存储区域,即这些段的起始地址都相同,共享的公共存储区域的长度是各模块同名段中最大的长度。使用 COMMON 方式可以使不同模块中的不同变量或标号作用于相同的存储单元。 CSCode Segment,代码段寄存器,存放当前运行的代码段起始地址(高 16 位)。代码段存放当前正在运行的程序。 CWD 指令助记符字转换为双字。把 AX 中字节的符号扩展到 DX 中,若(AX)的最高有效位为 0 ,则( DX)0000;若(AX)的最高有效位为 1, 则(DX)0FFFFH。 CXCount, 通用寄存器。在循环和串处理指令中用作隐含的计数器。其中 C

15、H 是高 8 位,CL 是低 8 位。 DAA 指令助记符加法的十进制调整(压缩的 BCD 码)。 无操作数,调整 的加法结果在 AL 中。调整方法是,如果 AL 的低 4 位大于 9 或 AF1 ,则加 6 到 AL 并置 AF1 ;如果 AL 的高 4 位大于 9 或 CF1 ,则加 60H 到 AL,并 置 CF1 。 DAS 指令助记符减法的十进制调整(压缩的 BCD 码)。 调整方法是,若 AF1 或AL 的低 4 位为 AF,则(AL)减 06H,且 AF 置 1;若 CF1 或 AL 的高 4 位为 AF,则(AL)减 60H,且 CF 置 1。 DB 伪指令 定义字节。其后的每个操作数占用一个字节。若是字符串, 必须用引号 括起来,字符串不能超过 255 个字符,字符串自左至右以 字符的 ASCII 码按地址递增的顺序依次存放。 DD 伪指令定义双字。其后的每个操作数占用二个字(低字在前)。 DD 还可以把其后的变量或标号的偏移地址和所在段首址存入存储器内指定 的双字单元(即 DD 前面的变量) 中,第一个字中存放 DD 后的变量的偏移地址, 第二个字中存放该变量所在段的段首址。 DEC 指令助记符减 1 。操作数可以是寄存器或存储器单元,但不能是段 寄存器或立即数。 DFDirection Flag,方向标志,在标志寄存器的第 10

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号