3.3 VHDL语言要素 

3.3.2VHDL操作符

    VHDL的各种表达式由操作数和操作符组成,其中操作数时各种运算的对象,而操作符则规定运算的方式。

    在VHDL中,由四类操作符,即逻辑操作符(Logic Operator)、关系操作符(Relational Operator)和算术操作符(Arithmetic Operator),此外还有重载操作符(Overloading Operator)。前三类操作符是完成逻辑和算术运算的最基本的操作符的单元,重载操作符是对基本操作符作了重新定义的函数型操作符。各种操作符所要求的操作数的类型详见下表。

                          VHDL操作符列表

      类型

    操作符

      功   能

      操作数数据类型

    算术操作符

整数

整数

&

并置

一维数组

*

整数和实数(包括浮点数)

/

整数和实数(包括浮点数)

MOD

取模

整数

REM

取余

整数

SLL

逻辑左移

BIT或布尔型一维数组

SRL

逻辑右移

BIT或布尔型一维数组

SLA

算术左移

BIT或布尔型一维数组

SRA

算术右移

BIT或布尔型一维数组

ROL

逻辑循环左移

BIT或布尔型一维数组

ROR

逻辑循环右移

BIT或布尔型一维数组

**

乘方

整数

ABS

取绝对值

整数

+

整数

-

整数

    关系操作符

等于

任何数据类型

/=

不等于

任何数据类型

<

小于

枚举与整数类型,及对应的一维数组

>

大于

枚举与整数类型,及对应的一维数组

<=

小于等于

枚举与整数类型,及对应的一维数组

>=

大于等于

枚举与整数类型,及对应的一维数组

    逻辑操作符

AND

BIT,BOOLEAN,STD_LOGIC

OR

BIT,BOOLEAN,STD_LOGIC

NAND

与非

BIT,BOOLEAN,STD_LOGIC

NOR

或非

BIT,BOOLEAN,STD_LOGIC

XOR

异或

BIT,BOOLEAN,STD_LOGIC

XNOR

异或非

BIT,BOOLEAN,STD_LOGIC

NOT

BIT,BOOLEAN,STD_LOGIC

 

                          VHDL操作符优先级

            运 算 符

              优 先 级

NOT, ABS, **

             最高优先级

*, /, MOD, REM

 

+(正号), -(负号)

+, -, &

SLL, SLA, SRL, SRA, ROL, ROR

=, /=,<,<=,>,>=

AND, OR, NAND, NOR, XOR, XNOR

              最低优先级

上一页  下一页  返回