数字在VHDL中有什么数据类型 A
整数文本是匿名预定义类型数字在VHDL中有什么数据类型 A,vhdl,Vhdl,整数文本是匿名预定义类型universal\u Integer。它们被隐式转换为操作员所需的(子)类型,例如integer或natural。另见IEEE标准1076-2008,第。5.2.3.1 因此,如果指定术语-3,它将被解析为由减号-和抽象(十进制)文字3组成的简单表达式。数字3的类型为通用整数,应用符号运算符后,它仍然是相同的类型。(感谢@user1155120的澄清。) 之后,如果操作员需要自然,表达式-3的转换将失败 这同样适用于匿名预定义类型的浮点文本universal\u rea
universal\u Integer
。它们被隐式转换为操作员所需的(子)类型,例如integer
或natural
。另见IEEE标准1076-2008,第。5.2.3.1
因此,如果指定术语-3
,它将被解析为由减号-
和抽象(十进制)文字3组成的简单表达式。数字3的类型为通用整数
,应用符号运算符后,它仍然是相同的类型。(感谢@user1155120的澄清。)
之后,如果操作员需要自然
,表达式-3
的转换将失败
这同样适用于匿名预定义类型的浮点文本universal\u real
,另请参见第。5.2.5.1
任何整数类型的操作数都可以转换为任何浮点类型,反之亦然。从浮点到整数的转换使用舍入到最接近的整数。小数部分为0.5的浮点值向上或向下舍入,另见第。9.3.6.整数文本,如您的
3
是一个通用整数integer
和natural
是通用整数的子类型。感谢您的澄清。@user1155120修复了它,我希望。如果标准中有第。5.2.3.1应提前提及第。15.5(如术语表所示)。对我来说,整数也包括负数,但这里不是真的。@user1155120是的,整数类型可以包括负数。但是,名为integer的BNF规则不能扩展,因为它只扩展到数字和下划线(15.5.2)。因此,整数文本可以是正的,也可以是零。这就是我在书面文本中感到困惑的地方。当然,形式符号是明确的。
A <= 3 * B;