Тип данных переменной определяет род информации, диапазон представления и множество допустимых операций. Все рассмот- ренные в прошлой главе стандартные языки программирования ПЛК – LD, FBD, SFC, IL и ST (SCL) – используют идеологию стро- гой проверки типов данных. Это означает, что любую переменную можно использовать только после ее объявления.
Типы данных МЭК разделяются на две категории – элементар- ные и составные. Элементарные, или базовые, типы являются ос- новой для построения составных типов.
Элементарные типы данных:
целые (целочисленные);
с плавающей точкой;
типы времени;
строки;
битовые.
Целочисленные переменные отличаются различным диапазоном сохраняемых данных и, естественно, различными требованиями к памяти. Подробно данные характеристики представлены в табл. 1.
Таблица 1
Целочисленные типы данных
Тип
данных
|
Подробное
название
|
Диапазон
возможных значений
|
SINT
|
Short Integer
|
–128…127
|
INT
|
Integer
|
–32 768…32 767
|
DINT
|
Double Integer
|
–231…231 – 1
|
LINT
|
Long Integer
|
–263…263 – 1
|
USINT
|
Unsigned Short Integer
|
0…255
|
UINT
|
Unsigned Integer
|
0…216 – 1
|
LDINT
|
Long Double Integer
|
0…232 – 1
|
ULINT
|
Unsigned Long Integer
|
0…264 – 1
|
Нижний предел диапазона целых чисел без знака равен 0, верх- ний предел определяется как (2n – 1), где n – число разрядов числа. Для чисел со знаком нижний предел составляет –2n, верхний пре- дел составляет (2n – 1).
Наименования целых типов данных образуются с применением префиксов, выражающих отношение разрядности представления данных к 16-разрядным словам: S – short, «короткое» (16×1/2), D – double, «двойное» (16×2), L – long, «длинное» (16×4). Префикс U (unsigned) указывает на представление целых без знака.
При начальной инициализации целочисленные переменные по- лучают нулевые значения. Если необходимо задать другие началь- ные значения, это можно сделать при объявлении переменной.
Применение широкого спектра типов целочисленных перемен- ных позволяет программисту оптимизировать код программы – добиться меньшего времени ее выполнения и (или) меньшего объ- ема требуемого ОЗУ при соблюдении требований по точности вычислений. Скорость вычислений зависит от того, как микро- процессор оперирует переменными того или иного типа. Так, 16- разрядный процессор выполняет сложение двух 16-разрядных значений одной командой. Сложение же двух значений 32- разрядных переменных будет выполняться уже подпрограммой из нескольких команд. В общем случае меньшие по диапазону пред- ставляемых значений типы переменных требуют меньше памяти,
меньше кода и вычисления с их участием выполняются значи- тельно быстрее.
Переменные типов BYTE, WORD, DWORD и LWORD опреде- ляются стандартом как битовые строки. Они представляют собой последовательности из 8, 16 и 32 бит соответственно. Помимо об- ращения с такими переменными как с единым целым, их можно использовать побитно.
Таблица 2
Битовые типы данных
Тип данных
|
Подробное название
|
Диапазон
возможных значений
|
BOOL
|
Boolean
|
1 bit
|
BYTE
|
Byte
|
8 bits
|
WORD
|
Word
|
16 bits
|
DWORD
|
Double Word
|
32 bits
|
LWORD
|
Long Word
|
64 bits
|
Логические переменные объявляются ключевым словом BOOL. Они могут принимать только значение логического нуля или логи- ческой единицы. При начальной инициализации по умолчанию значения этих переменных принимаются равными логическому нулю.
Действительные типы – REAL и LREAL – представляют веще- ственные, то есть как целые, так и не целые переменные. Перемен- ные действительных типов представляются как числа с плавающей запятой, то есть с помощью мантиссы и порядка. Переменные типа REAL представляют действительные числа в диапазоне ±10±38. Из 32 бит, занимаемых числом, мантисса занимает 23 бит. В ре- зультате точность представления будет приблизительно на уровне 6–7-десятичных разрядов после запятой. Длинный формат LREAL при представлении действительных чисел занимает 64 бита. Число содержит 52-битовую мантиссу. Точность представления чисел при этом будет на уровне 15–16-десятичных разрядов после запятой. Диапазон чисел длинного действительного ±10±307. Числа с пла- вающей запятой записываются в формате с точкой (14.0, –120.2, 0.33) или в экспоненциальной форме (–1.2Е10 или 3.1е7).
Таблица 3
Типы данных с плавающей точкой (вещественные)
Тип данных
|
Подробное название
|
Диапазон возможных значений
|
REAL
|
Real Numbers
|
±10±38
|
LREAL
|
Long Real Numbers
|
±10±308
|
Достарыңызбен бөлісу: |