Verilog与SystemVerilog学习记录(1):操作符

if(&a)  if(|a)

&a表示a信号按位与(即a=111,则&a=1&1&1=1)

|a表示a信号按位或(即a = 111,则|a = 1|1|1)

如果结果为1则条件成立;如果a是单bit信号,则a为1条件就成立。

 

^a用法:

(1)

^a操作就是将a中的每一位按位逐一进行异或,例如a=4'b1010,则b=1^0^1^0=0,由此可以判断a中为1的位数是奇数还是偶数,是一个便捷的操作。

(2)

快速交换两个整数的值

a = 9;
b = 11;

a=a^b;    #1001^1011=0010
b=b^a;    #1011^0010=1001
a=a^b;    #0010^1001=1011

a = 11;
b = 9;

你可能感兴趣的:(Verilog,编程)