常数(2) 上 3.符号常数 。 包括:EQU和= (1)EQU赋值伪指令 。 格式:符号常数名EQU表达式 ● 功能:将表达式的值赋给符号常数。 说明:表达式可以是有效的操作数格式,也可以是任何可求出数值 常数的表达式,还可以是任何有效的符号(如操作符、寄存器名、 变量名等)。 EQU定义的一个符号常数名在程序中只能定义一次。 例:DATA1EQU88 NEW_CX EQU CX DATA2 EQU DATA1+12 (2)=伪指令 格式:符号常数名=表达式 功能:将表达式的值赋给符号常数。 =定义的一个符号常数名在程序中可以重复定义多次。 例:… DATA1 =88 DATA1 DATA1or99China COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 一、常数(2) 3.符号常数 • 包括:EQU和= (1)EQU赋值伪指令 • 格式:符号常数名 EQU 表达式 • 功能:将表达式的值赋给符号常数。 • 说明:表达式可以是有效的操作数格式,也可以是任何可求出数值 常数的表达式,还可以是任何有效的符号(如操作符、寄存器名、 变量名等)。 • EQU定义的一个符号常数名在程序中只能定义一次。 • 例: DATA1 EQU 88 NEW_CX EQU CX DATA2 EQU DATA1+12 (2)=伪指令 • 格式:符号常数名 = 表达式 • 功能:将表达式的值赋给符号常数。 • =定义的一个符号常数名在程序中可以重复定义多次。 • 例:… DATA1 = 88 … DATA1 =DATA1+99
二、 表达式 (1) 表达式:常数、寄存器、 标号、变量与一些运算 符相组合的序列。 ● 包括:数值表达式,地址表达式。 1.运算符 六种运算:算术运算、逻辑运算、 移位运算、关 系运算、返回值运算、 属性运算。 (1)算术运算符 ·算术运算符:有5个,加(+)、 减(·)、乘 (×)、除(/)和取余(MOD)。 (2)逻辑运算符 逻辑运算符:4个,与(AND)、或(OR)、 非(NOT)和异或(XOR)。 Ji Lin University China COMPUTEP SCIRNCE AND T里CHO是OGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 二、表达式 (1) • 表达式:常数、寄存器、标号、变量与一些运算 符相组合的序列。 • 包括:数值表达式,地址表达式。 1.运算符 • 六种运算:算术运算、逻辑运算、移位运算、关 系运算、返回值运算、属性运算。 (1)算术运算符 • 算术运算符:有5个,加(+)、减(-)、乘 (×)、除(/)和取余(MOD)。 (2)逻辑运算符 • 逻辑运算符:4个,与(AND)、或(OR)、 非(NOT)和异或(XOR)
CHINA 二、表达式 (2) ((3)移位运算符 移位运算符:2个,左移(SHL)和右移(SHR)。 例: MOV AL,0 MOV BL,11011000B MOV AL, BL SHR3;(A)=00011011B MOV CL,I BL SHL6;(CL)=11000000B (4)关系运算符 。 关系运算符:6个,等于(EQ)、不等(NE)、小于 (T)、大于(GT)、小于等于(LE)、大于等于 (GT)。 功能:关系运算符的两个操作数的计算结果应为逻辑值, 结果为真(关系成立),表示为0 FFFFH,结果为假(关 系不成立),表示为0。 ● 例: MOV AX2T79X☒=0 FFFFH SCIENCE AND TECHNOLOG型
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 二、表达式 (2) (3)移位运算符 • 移位运算符:2个,左移(SHL)和右移(SHR)。 • 例: MOV AL, 0 MOV BL, 11011000B MOV AL, BL SHR 3 ; (AL)=00011011B MOV CL, BL SHL 6 ; (CL)=11000000B (4)关系运算符 • 关系运算符:6个,等于(EQ)、不等(NE)、小于 (LT)、大于(GT)、小于等于(LE)、大于等于 (GT)。 • 功能:关系运算符的两个操作数的计算结果应为逻辑值, 结果为真(关系成立),表示为0FFFFH,结果为假(关 系不成立),表示为0。 • 例: MOV AX, 2 LT 7 ; (AX)=0FFFFH
二、 表达式 (3) (5)返回值运算符 ● 返回值运算符:5个,返回变量或标号的段地址(SEG)、返回 变量或标号的偏移地址(OFFSET)、返回变量或标号的类型值 CTYP)、返回变量的单元数(LENGTH)、返回变量的孝节 数(SIzE)。 ①SEG返回变量或标号的段地址运算符 格式:操作数SEG变量/标号 功能:将变量/标号所在段的段基址值赋给操作数。 ②OFFSET返回变量或标号的偏移地址运算符 。 格式:操作数OFFSET变量/标号 4 功能:将变量/标号所在段中的偏移值赋给操作数。 ③TYPE返回变量或标号的类型值运算符 。 格式:操作数TYPE变量/标号 功能:将代表变量/标号类型的值赋给操作数。 说明:如果是变量,则汇编程序将根据变量对应的数据定义伪指 令回送类型值(即变量类型代表的字节数):DB为1,DW为2 DD为4,DF为6,DQ为8,DT为10。返回以字节数表示的类型 常数返回0。如果是标号,则汇编程序将向送代表该标号类型的 数值:NEAR为-1,FAR为-2。 Ji Lin University China COMPUTEP SCIENCE AND T里CYO是OG
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 二、表达式 (3) (5)返回值运算符 • 返回值运算符:5个,返回变量或标号的段地址(SEG)、返回 变量或标号的偏移地址(OFFSET)、返回变量或标号的类型值 (TYPE)、返回变量的单元数(LENGTH)、返回变量的字节 数(SIZE)。 ①SEG返回变量或标号的段地址运算符 • 格式:操作数 SEG 变量/标号 • 功能:将变量/标号所在段的段基址值赋给操作数。 ②OFFSET返回变量或标号的偏移地址运算符 • 格式:操作数 OFFSET 变量/标号 • 功能:将变量/标号所在段中的偏移值赋给操作数。 ③TYPE返回变量或标号的类型值运算符 • 格式:操作数 TYPE 变量/标号 • 功能:将代表变量/标号类型的值赋给操作数。 • 说明:如果是变量,则汇编程序将根据变量对应的数据定义伪指 令回送类型值(即变量类型代表的字节数):DB为1,DW为2, DD为4,DF为6,DQ为8,DT为10。返回以字节数表示的类型, 常数返回0。如果是标号,则汇编程序将回送代表该标号类型的 数值:NEAR为-1,FAR为—2
二、表达式 (4) ④LENGTH:返回变量的单元数运算符 。 格式:操作数LENGTH变量 ● 功能:将代表变量的单元数赋给操作数。 说明:<1>返回一次数据定义的第一个元素的长度,DUP 时返回重复次数,其他情况返回1。 ● <2>对于变量中使用DUP的情况 ,汇编程序将回送分 配给该变量的单元数(按类型TYPE算) 而对于其他情况 则均送1。,只对DUP定义的变量有意义, 返回分配给该变 量的元素的个数。只返回第,个DUP前的元素个数,与 DUP括号内的数据无关,认为只是一组数据而己,若与 DUP并列地定义了其它数据,就只能返回1。 ⑤SIZE返▣变量的字节数运算符 格式:操作数SZE变量 功能:将代表变量的字节数赋给操作数。 说明:<1>就是返回LENGTH×TYPE的结果。 ● <2>汇编程序将回送分配给该变量的字节数。 只对 DUP定义的变量有意义。 Ji Lin University China COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 二、表达式 (4) ④LENGTH返回变量的单元数运算符 • 格式:操作数 LENGTH 变量 • 功能:将代表变量的单元数赋给操作数。 • 说明:<1>返回一次数据定义的第一个元素的长度,DUP 时返回重复次数,其他情况返回1。 • <2>对于变量中使用DUP的情况,汇编程序将回送分 配给该变量的单元数(按类型TYPE算),而对于其他情况, 则均送1。只对DUP定义的变量有意义,返回分配给该变 量的元素的个数。只返回第一个DUP前的元素个数,与 DUP括号内的数据无关,认为只是一组数据而已,若与 DUP并列地定义了其它数据,就只能返回1。 ⑤SIZE返回变量的字节数运算符 • 格式:操作数 SIZE 变量 • 功能:将代表变量的字节数赋给操作数。 • 说明:<1>就是返回LENGTH×TYPE的结果。 • <2>汇编程序将回送分配给该变量的字节数。只对 DUP定义的变量有意义