1.Verilog中的操作符按照功能分为以下几种类型:
算数运算符
关系运算符
逻辑运算符
条件运算符
位运算符
移位运算符
拼接运算符
1).算数运算符
注:除法运算(/):整数与整数相处的结果为整数
2).关系运算符
3).逻辑运算符
&&:左右两边同时为1,则结果为1
||:左右两边同时为0,则结果为0
4).条件运算符(三目运算符)
如:result = a >= b ? a : b;
5).位运算符(二进制运算)
~(取反):0变1,1变0
&(位与):同时为1,则结果为1
|(位或):有1,则1
^(异或):相同为0.不同为1
注意:如果位运算左右两边变量的位宽不同,则比较小的位宽高位补0
6).移位运算符
注意:两种移位运算符都用0来填补移出的空位。
左移时,位宽增加;右移时,位宽不变。
如:4'b1001 << 2 = 6'b100100;
4'b1001 >> 1 = 4'b0100;
7).拼接运算符
如:c [ 11 : 0 ] = { a [ 7 : 0] , b [ 3 : 0 ] } c12位 = a8位+b4位
2.运算符的优先级:
注意:不清楚直接用小括号提高优先级
3.常用关键字: