Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Топ:
Процедура выполнения команд. Рабочий цикл процессора: Функционирование процессора в основном состоит из повторяющихся рабочих циклов, каждый из которых соответствует...
Особенности труда и отдыха в условиях низких температур: К работам при низких температурах на открытом воздухе и в не отапливаемых помещениях допускаются лица не моложе 18 лет, прошедшие...
Выпускная квалификационная работа: Основная часть ВКР, как правило, состоит из двух-трех глав, каждая из которых, в свою очередь...
Интересное:
Национальное богатство страны и его составляющие: для оценки элементов национального богатства используются...
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Наиболее распространенные виды рака: Раковая опухоль — это самостоятельное новообразование, которое может возникнуть и от повышенного давления...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
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. | ||||
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 - Иерархия родовых типов данных
|
|
|
Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!