"&"在Verilog中的含义
3个回答
展开全部
您好!运算符&"是算术运算当中的按位与"操作!
按位与运算就是将两个操作数的相应位进行与运算,
运算规则见下表:
& 0 1 x
0 0 0 0
1 0 1 x
x 0 x x
使用方法如下及例子:
assign a = b & c;
或者
a < = 3'b011 & 3'b001;
a结果等于3‘b001!
谢谢,楼主!
按位与运算就是将两个操作数的相应位进行与运算,
运算规则见下表:
& 0 1 x
0 0 0 0
1 0 1 x
x 0 x x
使用方法如下及例子:
assign a = b & c;
或者
a < = 3'b011 & 3'b001;
a结果等于3‘b001!
谢谢,楼主!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一般表示两个操错数的“与”操作,例如:c&din,表示c和din逐位相与。希望帮到你!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一个“&”放在两个数据之间时,表示按位与,用于两个多位宽数据操作。例如:
reg [31:0] a;
reg [31:0] b;
wire c;
assign c = a | b;
以上代码表示“a”与“b”先按位分别与,再把结果交给“c”。
如果一个“&”放在一个操作数前面,则表示缩位与。例如:
assign c = &a;
如果是“&&”放在两个数之间,则表示逻辑与,逻辑与操作只能是两个1位宽的数。对于多位宽的数据进行逻辑与操作,则不能的编译器和综合器对其有不同的解释,所以应该避免这样用。
两个“&&”不能放在一个数之前进行操作。
reg [31:0] a;
reg [31:0] b;
wire c;
assign c = a | b;
以上代码表示“a”与“b”先按位分别与,再把结果交给“c”。
如果一个“&”放在一个操作数前面,则表示缩位与。例如:
assign c = &a;
如果是“&&”放在两个数之间,则表示逻辑与,逻辑与操作只能是两个1位宽的数。对于多位宽的数据进行逻辑与操作,则不能的编译器和综合器对其有不同的解释,所以应该避免这样用。
两个“&&”不能放在一个数之前进行操作。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询