Verilog语法之Verilog中求反运算符


verilog中,

“!”表示逻辑求反,“~”表示按位求反。

当对位宽为1的变量进行操作时,这两个操作符的作用是一样的,都是求反。

当对位宽为2的变量a[1:0]进行操作时,这两个操作符的作用就不一样了:“!”表示~(a[0] | a[1]),只有当a的每一位都为0时,结果才为1,条件判断中 if(!a) 等价于 if(a == 0);“~”表示对每一位按位取反,只有当a的每一位都为1时,结果才为0。
 

 

【1】! 意思是Logical negation,逻辑取反.结果只有0和1
【2】~ 意思是 Bit-wise negation,按bit取反.结果按照位进行取反。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM