位运算符位运算符位运算符是位运算符,如果原始操作数有几个位,则结果为几个位。 如果两个操作数的位数不同,则位数短的操作数的左端会自动完成。
逐位反转: ~位和:逐位或: |逐位异或: ^逐位相同或: ^~或~^缩进运算符(递归运算符)缩进运算符是单眼运算符,按位进行逻辑运算时,结果为1位
缩进运算符:或缩进运算符: |异或缩进运算符: ^and,或组合异或和非运算符的复合运算符:|,~^逻辑运算符(逻辑and:|逻辑非(!
逻辑积和逻辑或双目运算符,逻辑不是单眼运算符。 如果操作数为多位,则操作数被视为整体。
如果操作数的各位为0,则为逻辑0的值; 如果操作数中有1,则为位逻辑1的值。 为什么想写这篇文章呢?
HDLBits有这样的主题。
当时,考虑输出信号out_or_logical时,错误地混淆了逻辑运算符和退化运算符。
所以有以下不正确的问题。
module top _ module (input [ 2:0 ] a,input [2:0] b,output [2:0] out_or_bitwise,output out _ or _ or _ b assignout_or_logical=(|a )|) b; assign out_not[5:0]={~b,~a}; endmodule其实应该是这样的。
module top _ module (input [ 2:0 ] a,input [2:0] b,output [2:0] out_or_bitwise,output out _ or _ or _ b assign out_or_logical=a||b; assign out_not[5:0]={~b,~a}; 结束模块