sv中 “==“与“===”详解

两者都是相等或比较运算符。“==”检查二值逻辑相等,而“===”检查四值逻辑相等。

使用“==”比较四值逻辑,如果出现x或者z,则结果为x。

使用“===”比较四值逻辑,如果出现或者z,则结果为0或1,能够正确的进行比较。

program ic_test;

initial begin
    $display(4'b0011 == 4'b1010);
    $display(4'b0011 != 4'b1x10);
    $display(4'b1010 == 4'b1x10);
    $display(4'b1x10 == 4'b1x10);
    $display(4'b1z10 == 4'b1z10);

    $display(4'b01zx === 4'b01zx);
    $display(4'b01zx !== 4'b01zx);
    $display(4'b01zx === 4'b0011);
    $display(4'b01zx !== 4'b11zx);
end

endprogram

  执行结果如下:

运行结果显示,“==”比较出现x或者z时,比较结果无一例外均是x。“===”比较四值逻辑时,能够出现正确的比对结果。

当“==”比较四值逻辑时,第一位就不相等时,即使有x或者z打印结果也是0,因为仅根据第一位的比较已经确定不相等了。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值