Vhdl 这是什么意思;向量(向量高)=&x27;1'&引用;?

Vhdl 这是什么意思;向量(向量高)=&x27;1'&引用;?,vhdl,Vhdl,我知道'HIGH'是一个数据属性,返回数组的上索引,但是括号外的向量我不知道。它与向量“高”相同 如果有人需要更多信息或其他信息,请告诉我。它会将向量中最高下标的元素与'1'进行比较。为了进行比较,vector(3)将是恰好具有下标3的向量元素。让我们按部分进行: vector'high:如果在数组上使用,则属性'high返回可用于索引该数组的最高值。一个更正式的定义是:它是一个。因此,如果vector的范围为(7到0),vector'high等于7 vector(X):返回vector中位置

我知道'HIGH'是一个数据属性,返回数组的上索引,但是括号外的向量我不知道。它与向量“高”相同


如果有人需要更多信息或其他信息,请告诉我。

它会将
向量中最高下标的元素与
'1'
进行比较。为了进行比较,
vector(3)
将是恰好具有下标3的向量元素。

让我们按部分进行:

  • vector'high
    :如果在数组上使用,则属性'high返回可用于索引该数组的最高值。一个更正式的定义是:它是一个。因此,如果
    vector
    的范围为(7到0),
    vector'high
    等于7
  • vector(X)
    :返回
    vector
    中位置X处元素的值(这是一个简单的数组索引)
  • 因此,
    vector(vector'high)
    返回
    vector
  • 最后,
    vector(vector'high)='1'
    将该元素的值与文字位值'1'进行比较
举一个具体的例子,如果您有:

constant vector: standard_logic_vector(7 downto 0) = "1000_000X";
然后:

vector(vector'high)
将等于
'1'

我个人认为,如果我们有一个预定义的属性(返回具有最高下标的元素的值),那就太好了


最后,为了完整起见,
'high
可以与受约束数组(似乎是您的情况)或类型一起使用。如果在类型标识符上使用,它将提供该类型的最高值。例如:
bit'high
-->
'1'
std_logic'high
-->
'-'

它只是向量的一个普通索引

vector'high
为您提供一个定义为向量中最高位位置的数字

所以像
vector(2)
一样给你向量位置2的位,所以
vector(vector'high)
返回最高位的值