VHDL 的运算符号 VHDL 中主要有六类运算符号: 赋值运算、逻辑运算、算术运算 关系运算、连接运算、移位运算 运算符号主要用于各类表达式中; 运算可以分为单目运算(只有一个运算量)和双目运算(针对两个运算量); 进行双目运算时,两个运算量必须类型相同; VHDL 中运算没有左右优先级差别,同一表达式中进行多个运算时必须用括号表达先后差别; 在同类运算中,单目运算优先; 在所有运算符号中,NOT 的优先级别最高; 在一般运算中,优先顺序排列为:算术— 关系— 逻辑 可以通过加括号来改变运算的优先顺序; 赋值运算符 数组内部分元素赋值; 适用类型: 所有数据类型; 赋值号两边的数据类型原则上应该相同; 逻辑运算符 NOT AND OR NAND NOR XOR 适用类型: STD_LOGIC STD_LOGIC_VECTOR BIT BIT_VECTOR BOOLEAN 逻辑运算结果为同类型逻辑量; 对数组类型进行逻辑运算时,参与运算的两个数据位数必须相等,所做运算为对应位进行; 算术运算: / (除)* (乘) + (加) - (减) MOD(求模)REM(取余) **(指数) ABS (绝对值) 适用类型: INTEGER REAL BIT BIT_VECTOR TIME 加/减运算的结果为同类型算术量; 注意:算术运算大多数只用于抽象的编程(行为设计); 只有少数算术运算符能够进行综合,应尽量只使用加/减; 对数组类型进行算术运算时,两边位数必须相同; 关系运算: => (大于等于) (大于)< (小于) /= (不等于) = (等于) 适用类型: 等于和不等于适用于所有类型; 其他运算适用于整数、实数、位、位矢量,以及枚举类型和数组类型; 可比较位长度不相同的情况(从左向右逐位比较); 关系运算的结果为boolean 类型: false tru e 注意: 小于等