《宏汇编语言小结》PPT课件.ppt
《《宏汇编语言小结》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《宏汇编语言小结》PPT课件.ppt(55页珍藏版)》请在三一办公上搜索。
1、母亲卡,宏汇编语言 小结,宏汇编语言格式表达式(*)8086基本指令系统 常用的汇编伪指令,宏汇编语言格式,1 指令语句格式2 伪指令语句格式,1 指令语句格式,指令语句的一般格式如下:标号:指令助记符 操作数;注释标号:标号是机器指令语句存放地址的符号表示,代表该指令目标代码的第一个字节地址,后面必须紧跟冒号“:”。指令助记符:指令助记符为语句的核心成分,表示了该语句的操作类型。操作数:操作数表示指令助记符的操作对象。注释:注释均以分号开始,它可占一行或多行,一般放在一条语句的后面。,2 伪指令语句格式,伪指令语句格式如下:符号名 伪指令符 操作数;注释符号名:符号名是伪指令语句的一个可选项
2、。伪指令符:伪指令符指定汇编程序要完成的具体操作,如数据定义伪指令DB、DW、DD,段定义伪指令SEGMENT,假定伪指令ASSUME等。操作数:伪指令后面的操作数可以是常数、字符串、变量、表达式等,其个数由具体的伪指令决定,各个操作数之间必须以“逗号”分隔。注释:伪指令的注释必须以“;”开始,其作用同指令语句中的注释部分。,汇编语句表达式,1 常量2 数值表达式3 变量4 标号,1 常量,1)数值常量2).符号常量,1)数值常量,表3.1 各种形式数字常量格式对照表,数值类型常量有二进制、八进制、十进制和十六进制数字形式和字符串形式的常量。,字符串常量是用单引号或双引号引起来的一个或多个字符
3、。字符串常量是以各字符的ASC码表示的。如A用41H 表示,字符串A1B2用41H,31H,42H,32H表示。,字符串形式的常量,2).符号常量,对经常使用的数值常量可以先为它定义一个名字,然后在语句中用名字来表示该常量。符号常量需要用等价伪指令EQU和等号伪指令“=”来定义。,等价伪指令的基本格式为:,符号名 EQU 表达式例:VAL EQU 100;表达式为一个常数 NUM EQU VAL+50;表达式为一个数值表达式 OPE EQU ADD;表达式为一个指令助记符,等号伪指令的基本格式为:,符号名=常数表达式例:COUNT=50 MOV BX,COUNT;等价于MOV BX,50,注意
4、:EQU语句不能重复定义,而“=”伪指令可以重复定义,其作用域从定义点到重新定义之前。,2 数值表达式,数值表达式,算术运算符包括:(加)、(减)、*(乘)、(除)、MOD(求模)几种,它既可以用于数值表达式又可用于地址表达式。,1)算术运算符,算术操作符例:,逻辑运算符包括:逻辑乘(AND)、逻辑加(OR)、按位加(XOR)、逻辑非(NOT)四种运算;另外还有SHL(左移)、SHR(右移)运算。由于逻辑运算是按位操作,且在汇编过程中完成,因而运算的结果仍为整数常量。,2)逻辑运算符,;AND AX,1,IN AL,PORT_VAL;61HOUT PORT_VAL AND 0FEH,AL;60
5、H,MOV AX,0FFFFH SHL 2,;MOV AX,0FFFCH,关系运算符包括:相等(EQ),不等(NE),小于(LT),大于(GT),小于等于(LE)及大于等于(GE)。【例】用关系运算符进行数值表达式运算。NUM1DB10 LT 5;NUM1=0NUM2DB0AAAAH GT 7FFFH;NUM2=0FFH MOVAX,A EQ 41H;0FFFFHAX MOVBX,NUM2 LT NUM1;0BX,3)关系运算符,4)数值回送操作符 OFFSET、SEG、TYPE、LENGTH、SIZE,SIZE 变量功能:LENGTH*TYPE,OFFSET/SEG 变量/标号功能:回送变量
6、或标号的偏址/段址,TYPE 变量/标号/常数 DB DW DD DF DQ DT NEAR FAR 常数 1 2 4 6 8 10-1-2 0,LENGTH 变量功能:回送由DUP定义的变量的单元数,其它情况回送1,ARRAY DW 100 DUP(?)TABLE DB ABCD ADD SI,TYPE ARRAY;ADD SI,2ADD SI,TYPE TABLE;ADD SI,1MOV CX,LENGTH ARRAY;MOV CX,100MOV CX,LENGTH TABLE;MOV CX,1MOV CX,SIZE ARRAY;MOV CX,200MOV CX,SIZE TABLE;MO
7、V CX,1,属性操作符 PTR、段前缀操作符、SHORT、THIS、HIGH、LOW、HIGHWORD、LOWWORD,HIGH和LOW CONS EQU 1234H MOV AH,HIGH CONS MOV AL,LOW CONS,类型 PTR 表达式 MOV WORD PTR BX,5段前缀操作符 MOV ES:BX,ALSHORT 标号 JMP SHORT NEXT,THIS 类型 TA EQU THIS BYTE TD DW 1234H NEXT EQU THIS FAR MOV AX,2,3 变量,1)变量2)变量的定义,(1)段属性(2)偏移地址属性(3)类型属性,1)变量,变量
8、是一个数据存储单元的名字。由于汇编语言中存储单元是分段使用的,所以变量具有三个属性:,变量定义伪指令:在汇编语言中变量的主要类型有字节(BYTE)、字(WORD)、双字(DWORD)、四字(QWORD)和十字节(TBYTE)。对应的变量定义伪指令即有:DB、DW、DD、DQ、和DT。,2)变量的定义,格式:变量名 变量定义伪指令 表达式,表达式:表达式项是给变量或指定存储单元赋予初值,它有以下几种形式:(1)数值表达式(2)字符串表达式(3)地址表达式(只适用DW和DD两个伪指令)(4)?表达式(5)带DUP的表达式,变量定义伪指令可以为一个或连续的存储单元设置数值初值。【例】为数据段分配存储
9、单元。DATASEGMENTADB11H,12H,13HBDW1122H,3344HCDD12345678HDATAENDS上述变量的存储单元分配及初始化情况如下图3.1所示。,(1)数值表达式,图3.1 数据段中数据存储分配图,字符串表达式中的字符串必须用引号引起来。DB、DW、DD伪指令将字符串中的各字符均以ASC码形式存放在相应的存储单元,但表示形式各不相同。【例】为字符串分配存储单元。DATASEGMENTSTR1DB1234STR2DWAB,CD,ASTR3DDABDATAENDS其存储单元分配如下图3.2所示。,(2)字符串表达式,图3.2 数据段存储分配图,(3)地址表达式(只适
10、用DW和DD两个伪指令)如果该地址表达式为一变量(或标号)名,用DW伪指令则是取它的偏移地址来初始化变量,用DD伪指令则是取它的段首址和偏移地址来初始化变量。例如:BUF1DWA BUF2DDB,在表达式中使用重复数据操作符DUP,可以为连续的存储单元提供重复数据,其格式为:N DUP(表达式)其中N为重复因子,只能取正整数,表示定义了N个重复数据存储单元,其类型由它前面的数据定义伪指令确定,而每个数据存储单元中的初值由DUP后面圆括号中的表达式给定。例如:BUF DB 100 DUP(0)以上语句定义了以BUF为首址,大小为100个字节,初值为0的数据存储单元。,(5)带DUP的表达式,综合
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 宏汇编语言小结 汇编语言 小结 PPT 课件
链接地址:https://www.31ppt.com/p-5493502.html