我不确定这个运算符是如何工作的。
例如,如果我有:
signal vector_a : std_logic_vector(4 downto 0) :=(others => '0');
vector_a <= vector_a(3 downto 0) & '1';
结果会是"0 0 0 0 1"
还是"1 0 0 0 0"
?
如果使用3 to 0
代替3 downto 0
,结果会改变吗?
我不确定这个运算符是如何工作的。
例如,如果我有:
signal vector_a : std_logic_vector(4 downto 0) :=(others => '0');
vector_a <= vector_a(3 downto 0) & '1';
结果会是"0 0 0 0 1"
还是"1 0 0 0 0"
?
如果使用3 to 0
代替3 downto 0
,结果会改变吗?
"&"
是连接运算符,从左到右连接项目。所以在你的例子中,结果
vector_a
将是0 0 0 0 1
使用不同的范围不会产生任何影响,结果仍然是
0 0 0 0 1
从左到右打印时的结果。但这会影响索引值。