СПРАВОЧНИК ПО ЯЗЫКУ VHDL
4cab9ef0

ТИП С ПЛАВАЮЩЕЙ ТОЧКОЙ


Обьекты типа с плавающей точкой используются для представления абстрактных числовых значений. Тип real является предопределенным. Добавочные типы с плавающей точкой могут быть обьявлены явно заданием диапазона значений, допустимых для обьектов данного типа. Рассмотрим пример обьявлений типа с плавающей точкой. type Probability is range 0.0 to 1.0; Отметим, что диапазоны задаются либо убывающей, либо возрастающей последовательностью значений. Границы диапазона могут быть произвольными выражениями. Рассмотрим обьявления, которые используют эти типы. constant alpha_level: Probability:=0.75; variable beta_level: Probability; Заметим, что константе должно быть присвоено значение в момент обьявления. Аналогично начальное значение может быть присвоено переменной. Литералы с плавающей точкой представляют значения любого типа с плавающей точкой и всегда содержат десятичную точку или отрицательную экспоненту: например, 3.14159, -23.0, 1E-. Запись с экспонентой может быть использована для любого вида числовых литералов: 9Е-целое, а 0.324Е- - с плавающей точкой. Для формирования выражения может быть использована комбинация имен обьектов, литералов и операторов. Все обычные арифметические операторы и операторы отношения являются предопределенными для типа с плавающей точкой. Тем не менее, оба аргумента оператора должны быть одного типа. Предопределенный оператор > не работает с операндами различных типов даже если они имеют одинаковый диапазон. Тем ни менее, все целые типы и типы с плавающей точкой являются тесно связанными типами (closely related types) и VHDL обеспечивает для этих типов преобразование (conversion) между любыми парами. Значение выражения одного типа преобразуется к значению тесно связанного типа указанием перед выражением, заключенным в скобках, имени типа, к которому преобразуется выражение. При преобразовании между типом с плавающей точкой и целым типом будет выполняться округление до ближайшего целого.



Содержание раздела