赋值符“<=”左右两边的数据类型必须相同。
逻辑运算符:not,and,or,nand(no and),nor(no,or或非),xor(异或)
使用规则:
1,只有数据类型为std_logic,std_logic_vector,bit这三种类型可以调用这六种逻辑运算符注意不包括bit_vector,只能使用数据类型转换函数TO_STDLOGICVECTOR()将bit_vector转化为std_logic_vector
2,运算符的左边,右边以及代入的信号的数据类型必须相同。
算术操作符:加减运算的两个操作数必须类型相同,且只能为INTEGER和REAL。
3,关系运算符,结果为布尔数据类型,同样要求数据类型要相同,大于小于大于等于,小于等于适用于integer,real,bit,bit_vector以及数组类型的比较,如果要比较std_logic_vector必须调用std_logic_unsigned程序包。
4,移位操作符:SLL:左移,跟进位补零;SRL:右移,跟进位补零;ROL,ROR:他们将移出的位依次填补移空的位,自循环。SLA,SRA是算术移位操作符,其移空位最处的首位来填补。
移位操作符适用对象:BIT,BIT_VECTOR,BOOLEAN
使用方法: 移位操作符 整数(移动的位数)
eg:dout<=“00000001” ROL CONV_INTEGER(DIN); 自循环1