Элементарные типы данных (BOOL, INT, REAL, STRING и т.д.) — КиберПедия 

Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...

Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...

Элементарные типы данных (BOOL, INT, REAL, STRING и т.д.)

2020-04-01 878
Элементарные типы данных (BOOL, INT, REAL, STRING и т.д.) 0.00 из 5.00 0 оценок
Заказать работу

 

6.4.2.1 Спецификация элементарных типов данных

Настоящий стандарт устанавливает набор (предопределенных) элементарных типов данных.

Элементарные типы данных, ключевое слова для каждого типа данных, число битов на элемент данных и диапазон значений для каждого элементарного типа данных приведены в таблице 10.


Таблица 10 - Элементарные типы данных

         
Номер Описание Ключевое слово Неявное начальное значение Длина (бит)
1 Логический BOOL 0, FALSE 1
2 Короткое целое SINT 0 8
3 Целое INT 0 16
4 Двойное целое DINT 0 32
5 Длинное целое LINT 0 64
6 Короткое целое без знака USINT 0 8
7 Целое без знака UINT 0 16
8 Двойное целое без знака UDINT 0 32
9 Двойное целое без знака ULINT 0 64
10 Действительные числа REAL 0.0 32
11 Длинные целые LREAL 0.0 64
12a Продолжительность времени TIME T#0s --
12b Продолжительность времени LTIME LTIME#0s 64
13a Дата (отдельно) DATE Примечание --
13b Длинная дата (отдельно) LDATE LDATE#1970-01-01 64
14a Время суток (отдельно) TIME_OF_DAY или TOD TOD#00:00:00 --
14b Время суток (отдельно) LTIME_OF_DAY или LTOD LTOD#00:00:00 64
15a Дата и время суток DATE_AND_TIME или DT Примечание --
15b Дата и время суток LDATE_AND_TIME или LDT LDT#1970-01-01-00:00:00 64
14a Время суток (отдельно) TIME_OF_DAY или TOD TOD#00:00:00 --
14b Время суток (отдельно) LTIME_OF_DAY или LTOD LTOD#00:00:00 64
15a Дата и время суток DATE_AND_TIME или DT Примечание --
15b Дата и время суток LDATE_AND_TIME или LDT LDT#1970-01-01-00:00:00 64
16a Строка однобайтовых символов переменной длины STRING (пустая) 8
16b Строка двухбайтовых символов переменной длины WSTRING (пустая) 16
17a Однобайтовый символ CHAR 8
17b Двухбайтовый символ WCHAR 16
18 Битовая строка длины 8 BYTE 16#00 8
19 Битовая строка длины 16 WORD 16#0000 16
20 Битовая строка длины 32 DWORD 16#0000_0000 32
21 Битовая строка длины 64 LWORD 16#0000_0000_0000_0000 64

Примечание - Определяется разработчиком, так как специальное стартовое значение отлично от 0001-01-01.

Значения в данной колонке интерпретируются как описано в подстрочных примечаниях к таблице.

Диапазон значений и точность представления в данных типах данных определяются разработчиком.

Диапазон значений переменных данного типа данных от - (2) до (2)-1.

Диапазон значений переменных данного типа данных от 0 до (2) -1.

Диапазон значений переменных данного типа данных определяется в МЭК 60559 для основного формата с плавающей точкой одинарной точности. Результаты арифметических команд с ненормализованными значениями, бесконечным значением и нечисловыми значениями определяются разработчиком.

Значение переменных данного типа данных определяется в МЭК 60559 для основного формата с плавающей точкой двойной точности. Результаты арифметических команд с ненормализованными значениями, бесконечным значением и нечисловыми значениями определяются разработчиком.

Числовой диапазон значений не применяется к данному типу данных.

Возможные значения переменных этого типа данных: 0 и 1, соответствующие ключевым словам FALSE и TRUE соответственно.

Значение N указывает на число битов или символов для этого типа данных.

Значение N указывает на число битов в битовой строке для этого типа данных.

Допустимая переменных типов STRING и WSTRING определяется разработчиком.

Типов CHAR, STRING, WCHAR и WSTRING используется кодировка по ИСО/МЭК 10646 (см. 6.3.3).

Тип данных LTIME является 64-битовым целым числом со знаком, значение задается в наносекундах.

Тип данных LDATE является 64-битовым целым числом со знаком, значение задается в наносекундах, с начальной датой 1970-01-01.

Тип данных LTOD является 64-битовым целым числом со знаком, значение задается в наносекундах, начальное время с полуночи TOD#00:00:00.

Точность обновления значений данного формата времени определяется разработчиком; то есть значение указывается в наносекундах, но оно может обновляться через микросекунду или миллисекунду.

6.4.2.2 Элементарные строковые типы данных (STRING, WSTRING)

Максимальная поддерживаемая длина элементов типа STRING и WSTRING задается разработчиком и определяет максимальную длину STRING и WSTRING, которая поддерживается средствами программирования и отладки.

Явная максимальная длина определяется максимальной длиной (которая не должна превышать поддерживаемое максимальное значение, определенное разработчиком), приведенной в скобках в соответствующем объявлении данных.

Доступ к отдельным символам строки в элементах данных CHAR или WCHAR осуществляется указанием в квадратных скобках позиции символа в строке, начиная с позиции 1.

Ошибка возникает, если к строкам двухбайтовых символов осуществляется доступ с использованием однобайтовых символов или если к строкам однобайтовых символов осуществляется доступ с использованием двухбайтовых символов.

Пример 1 - Типы STRING, WSTRING и CHAR, WCHAR

 

a) Объявление

VAR

END_VAR

 

b) Использование типов STRING и CHAR

 

c) Использование типов WSTRING и WCHAR

 

d) Эквивалентные функции (см. 6.6.2.5.11)

Char1:= String1[2];

Эквивалентно

Char1:= STRING_TO_CHAR(Mid(IN:= String1, L:= 1, P:= 2));

aWStrings[1][3]:= WChar1;

Эквивалентно

REPLACE(IN1:= aWStrings[1], IN2:= WChar1, L:= 1, P:=3);

 

E) Случаи ошибки

Char1:= String1[2]; // смешивание типов WCHAR,

STRING String1[2]:= String2;

// требует неявного преобразования STRING_TO_CHAR, которое не разрешено

Примечание - Типы данных для отдельных символов (CHAR и WCHAR) могут содержать только один символ. Строки могут содержать несколько символов; поэтому строки могут содержать дополнительную информацию для управления, которая не нужна для отдельных символов.


Пример 2 - Если тип STR10 объявлен как

то максимальная длина STR10 равна 10 символам, начальное значение по умолчанию равно и начальная длина элементов данных типа STR10 равна шести символам.

 

Родовые типы данных

В дополнение к элементарным типам данных, приведенным в таблице 10, в спецификации входных и выходных переменных стандартных функций и функциональных блоков можно использовать иерархию родовых типов данных, показанных на рисунке 5. Родовые типы данных определяются по префиксу "ANY".

При использовании родовых типов данных следует соблюдать следующие правила:

 

1 Родовой тип прямо порожденного типа является таким же, как родовой тип элементарного типа, из которого он порожден.

 

2 Порожденным типом типа-диапазона является ANY_INT.

Родовым типом всех других порожденных типов, приведенных в таблице 11, является ANY_DERIVED.

Использование родовых типов данных в определенных пользователем программных компонентов находится вне области действия настоящего стандарта.


Рисунок 5 - Иерархия родовых типов данных

             

Родовые типы данных

Родовые типы данных Группы элементарных типов данных

ANY

g)

 

ANY_DERIVED

 

ANY_ELEMENTARY

ANY_MAGNITUDE

 

ANY_NUM

ANY_REAL h) REAL, LREAL
ANY_INT ANY_UNSIGNED USINT, UINT, UDINT, ULINT
ANY_SIGNED SINT, INT, DINT, LINT
 

ANY_DURATION

  TIME, LTIME

ANY_BIT

  BOOL, BYTE, WORD, DWORD, LWORD

ANY_CHARS

   
 

ANY_STRING

  STRING, WSTRING
 

ANY_CHAR

  CHAR, WCHAR

ANY_DATE

  DATE_AND_TIME, LDT, DATE, TIME_OF_DAY, LTOD


Рисунок 5 - Иерархия родовых типов данных


Поделиться с друзьями:

Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...

Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...

Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.028 с.