汇编语言运算符_第1页
汇编语言运算符_第2页
汇编语言运算符_第3页
汇编语言运算符_第4页
汇编语言运算符_第5页
已阅读5页,还剩21页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、汇编语言运算符第1页,共26页,2022年,5月20日,8点50分,星期四运算符EQNELTLEGTGE运算格式运算功能表达式1 EQ 表达式2表达式1 NE 表达式2表达式1 LT 表达式2表达式1 LE 表达式2表达式1 GT 表达式2表达式1 GE 表达式2两个表达式相等为真两个表达式不相等为真表达式1 表达式2为真表达式1 表达式2为真表达式1 = 表达式2为真3. 关系运算符注:若真设为全1,假设为全0。 比较时,若为常数按无符号数比较,如果是变量按偏移量比较。第8章 汇编语言基础第2页,共26页,2022年,5月20日,8点50分,星期四例8:MOVAX , 0FH EQ 1111

2、BMOVDX , 05H GE 1111B等价于: MOV AX, 0FFFFH MOV DX, 0第8章 汇编语言基础第3页,共26页,2022年,5月20日,8点50分,星期四例9:DATA SEGMENT ORG 10H NUM1=1234 NUM2=1234H DA_BYTE DB10HDUP(0) DA_WORDDW10HDUP(0) DA_VAR1DW NUM2+DA_BYTEGT NUM1+DA_WORD DA_VAR2DBNUM1 LE NUM2DATA ENDS.MOVAX , NUM1 LT NUM2MOVBL , NUM1 GE NUM2MOV CX , DA_WORD

3、GT DA_BYTE第8章 汇编语言基础第4页,共26页,2022年,5月20日,8点50分,星期四格式: 运算对象是存储器操作数,由变量名或标号组成地址表达式SEG: 返回变量所在的段值OFFSET: 返回变量所在偏移量TYPE: 返回变量的类型LENGTH: 返回数组变量的元素个数SIZE: 返回数组变量所占的总字节数 SIZE= TYPE* LENGTH4.数值返回运算符第8章 汇编语言基础第5页,共26页,2022年,5月20日,8点50分,星期四例10:假设DATA的段基值是7A4EHDATASEGMENTORG30HDA1DB20HDUP(12H)DA2DWDA1.DATAENDS

4、.MOVAX , SEGDA1MOVBX , SEGDA2MOVSI , OFFSETDA1MOVCX , DA2MOVDI , OFFSETDA2MOVDX , OFFSET DA1+4MOVAX , 7A4EHMOVBX , 7A4EHMOVSI , 30HMOVCX , 7A9EHMOVDI , 50HMOVDX , 34H第8章 汇编语言基础第6页,共26页,2022年,5月20日,8点50分,星期四 TYPE 运算符变量标号类型属性运算结果BYTEWORDDWORD124NEARFAR-1-2用数字形式表示变量和标号的类型属性4.数值返回运算符(续)第8章 汇编语言基础第7页,共26

5、页,2022年,5月20日,8点50分,星期四例11:DA_BYTE DB 12HDA_WORD DW 3456HDA_DWORD DD789AH.MOVAL , TYPEDA_BYTEMOVBL , TYPE DA_WORDMOVCL , TYPE DA_DWORD.MOVAL , 1MOVBL , 2MOVCL , 4第8章 汇编语言基础第8页,共26页,2022年,5月20日,8点50分,星期四LENGTH与SIZE运算符LENGTH运算符返回数组变量的元素个数。如果变量用DUP定义,Length为外层DUP的值。如果没有DUP定义,结果为1。SIZE运算符数组变量所占的总字节数。SIZ

6、E是LENGTH和TYPE的乘积。4.数值返回运算符(续)第8章 汇编语言基础第9页,共26页,2022年,5月20日,8点50分,星期四例12:DATASEGMENTVAR1DB10HDUP(0)VAR2DB10H,20H,30H,40HVAR3DW10HDUP(A, 4 DUP(3)VAR4DBCOMPUTERDATAENDS.MOVAL , LENGTHVAR1;MOVAH , SIZEVAR1;MOVBL , LENGTHVAR2;MOVBH , SIZEVAR2;MOVCL , LENGTHVAR3;MOVCH , SIZEVAR3 ;MOVDL , LENGTHVAR4;MOVDH

7、 , SIZEVAR4;(AL)=10H(AH)=10H(BL)=1(BH)=1(CL)=10H(CH)=20H(DL)=1(DH)=1第8章 汇编语言基础第10页,共26页,2022年,5月20日,8点50分,星期四 求数组ARRAY的各数据项的累加和,从数组最后一个数据项开始进行累加。ARRAY DW06HDUP(4).XORAX , AXMOVSI , OFFSET ARRAYADDSI , SIZE ARRAY - TYPE ARRAYMOVCX , LENGTH ARRAYLOP:ADDAX , SISUBSI , TYPE ARRAYLOOPLOP例13:第8章 汇编语言基础第11

8、页,共26页,2022年,5月20日,8点50分,星期四5. 属性运算符PTR:类型 PTR 地址表达式类型可以是:BYTE ,WORD,DWORD 或NEAR,FAR仅在当前语句中有效,是一种临时设置。DA_BYTE DB 20H DUP(0)DA_WORD DW 10H DUP(0) MOV WORD PTR DA_BYTE 10H, AX ADD BYTE PTR DA_WORD DI, BL INC BYTE PTR SI SUB WORD PTR BX,30H JMP FAR PTR SUB1第8章 汇编语言基础第12页,共26页,2022年,5月20日,8点50分,星期四5. 属性

9、运算符(续)第8章 汇编语言基础 THIS:THIS 类型 THIS常与等值语句EQU一起用,形成新变量名或标号,使它们具有THIS后所指的类型,而段基值和偏移量与紧接的变量名或标号相同。例14: DATA _BYTE EQU THIS BYTE DATA _WORD DW 20H DUP(0) JUMP_FAR EQU THIS FAR JUMP_NEAR : XOR AX, AX第13页,共26页,2022年,5月20日,8点50分,星期四6.分离字节运算符第8章 汇编语言基础 HIGH 表达式 LOW 表达式 分离运算对象的高字节和低字节部分。 表达式必须具有常量值,如常数、地址表达式,

10、不能是存储器操作数或寄存器内容。第14页,共26页,2022年,5月20日,8点50分,星期四例14:DATASEGMENTORG20HCONSTEQU0ABCDHDATA1DB10HDUP(?)DATA2DW20HDUP(?).DATAENDS.MOVAH , HIGHCONSTMOVAL , LOWCONSTMOVBH , HIGH(OFFSETDATA1)MOVBL , LOW(OFFSETDATA2)MOVCL , LOW(CONSTSHL3)MOVAH , 0ABHMOVAL , 0CDHMOVBH , 0MOVBL , 30HMOVCL , 68H第8章 汇编语言基础第15页,共2

11、6页,2022年,5月20日,8点50分,星期四7.运算符的优先级第8章 汇编语言基础优先级别(最高) 123456789(最低) 10运算符LENGTH , SIZEPTR , OFFSET, SEG , TYPE , THISHIGH , LOW+, (单项运算符)* , / , MOD , SHR , SHL+ , EQ , NE , LT , LE , GT , GENOTANDOR , XOR第16页,共26页,2022年,5月20日,8点50分,星期四 符号定义语句第8章 汇编语言基础8.4 伪指令语句1.等值语句格式: 符号 EQU 表达式 表达式:常数或数值表达式 地址表达式

12、变量或标号CONST EQU 10ADR1 EQU DS:BP+14HADR2 EQU CONST +10COUN EQU VAR 为变量名VAR另定义一个别名 同一符号不能用EQU重新定义。 汇编时,作为替代符号用,不产生目标代码,不占 有存储单元。第17页,共26页,2022年,5月20日,8点50分,星期四 符号定义语句(续)第8章 汇编语言基础2. 等号语句格式: 符号 = 表达式 CONT=5 NUM=10H NUM=NUM+20H COUNT=VAR ;COUNT是变量VAR的别名 COUNT=NUM ;COUNT是常数NUM的别名表达式形式同上,但可多次重新定义同一符号。第18页

13、,共26页,2022年,5月20日,8点50分,星期四 数据定义语句第8章 汇编语言基础保留存储空间,并可以完成数据的初始化。字节BYTE1字WORD2双字DWORD 4四字QWORD 8十字节TBYTE 10DBDWDDDQDT格式: 变量名 DB/DW/DD 表达式1,表达式2,.第19页,共26页,2022年,5月20日,8点50分,星期四例15:DATASEGMENT DA1DB9AH DA2DW5678H DA3DD12345678HDATAENDS变量的属性: 段属性 偏移属性 类型属性第8章 汇编语言基础第20页,共26页,2022年,5月20日,8点50分,星期四表达式:数值D

14、A_BYTE1DB50HDA_BYTE2DB10H,20H,30H,40HDA_WORD1DW0A34HDA_WORD2DW1234H,5678H,9ABCHDA_DWORDDD12345678H,9ABCDEFH格式: 变量名 DB/DW/DD 表达式1,表达式2,. 数据定义语句(续)第8章 汇编语言基础第21页,共26页,2022年,5月20日,8点50分,星期四格式: 变量名 DB/DW/DD 表达式1,表达式2,. 数据定义语句(续)第8章 汇编语言基础表达式:字符/字符串字符串必须用引号括起来DB时一个字符串可以连续书写小于255个字;DW、DD时每一个字符串表达式由1-2个字符构

15、成;STRING1DBSTRINGSTRING2DWST,RI,NGSTRING3DDST,RI,NG第22页,共26页,2022年,5月20日,8点50分,星期四STRING1535452494E47545352494E47STRING2545352494E47STRING3000000000000STRING1 DBSTRINGSTRING2 DWST,RI,NGSTRING3 DD ST,RI,NG例16:第8章 汇编语言基础第23页,共26页,2022年,5月20日,8点50分,星期四格式: 变量名 DB/DW/DD 表达式1,表达式2,. 数据定义语句(续)第8章 汇编语言基础表达式:?表达式:分配相应数量的存储单元,但不初始化。 DA_BYTE3DB?,?DA_WORD3DW?,?第24页,共26页,2022年,5月20日,8点50分,星期四格式: 变量名 DB/DW/DD 表达式1,表达式2,. 数据定义语句(续)第8章 汇编语言基础表达式:带DUP的表达式DA_B1DB10HDU

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论