Verilog HDL操作符集
发布时间:2008/5/28 0:00:00 访问次数:845
verilog hdl中的操作符可以分为下述类型:
1) 算术操作符
2) 关系操作符
3) 相等操作符
4) 逻辑操作符
5) 按位操作符
6) 归约操作符
7) 移位操作符
8) 条件操作符
9) 连接和复制操作符
下表显示了所有操作符的优先级和名称。操作符从最高优先级(顶行)到最低优先级(底行)排列。同一行中的操作符优先级相同。
除条件操作符从右向左关联外,其余所有操作符自左向右关联。下面的表达式:
a + b - c
等价于:
(a + b ) - c //自左向右
而表达式:
a ? b : c ? d : f
等价于:
a ? b : (c ? d : f) //从右向左
圆扩号能够用于改变优先级的顺序,如以下表达式:
(a ? b : c) ? d : f
4.2.1 算术操作符
算术操作符有:
* +(一元加和二元加)
* -(一元减和二元减)
* *(乘)
* /(除)
* %(取模)
整数除法截断任何小数部分。例如:
7/4 结果为 1
取模操作符求出与第一个操作符符号相同的余数。
7%4 结果为 3
而:
- 7%4 结果为 -3
如果算术操作符中的任意操作数是x或z,那么整个结果为x。例如:
'b10x1 + 'b01111 结果为不确定数'bxxxxx
具体介绍请看本站其他内容. 温馨提醒!
verilog hdl中的操作符可以分为下述类型:
1) 算术操作符
2) 关系操作符
3) 相等操作符
4) 逻辑操作符
5) 按位操作符
6) 归约操作符
7) 移位操作符
8) 条件操作符
9) 连接和复制操作符
下表显示了所有操作符的优先级和名称。操作符从最高优先级(顶行)到最低优先级(底行)排列。同一行中的操作符优先级相同。
除条件操作符从右向左关联外,其余所有操作符自左向右关联。下面的表达式:
a + b - c
等价于:
(a + b ) - c //自左向右
而表达式:
a ? b : c ? d : f
等价于:
a ? b : (c ? d : f) //从右向左
圆扩号能够用于改变优先级的顺序,如以下表达式:
(a ? b : c) ? d : f
4.2.1 算术操作符
算术操作符有:
* +(一元加和二元加)
* -(一元减和二元减)
* *(乘)
* /(除)
* %(取模)
整数除法截断任何小数部分。例如:
7/4 结果为 1
取模操作符求出与第一个操作符符号相同的余数。
7%4 结果为 3
而:
- 7%4 结果为 -3
如果算术操作符中的任意操作数是x或z,那么整个结果为x。例如:
'b10x1 + 'b01111 结果为不确定数'bxxxxx
具体介绍请看本站其他内容. 温馨提醒!