97BPLC concepts
4.4 Data types
S7-1200 Programmable controller
88
System Manual, 11/2011, A5E02486680-05
4.4.2
Integer data types
Table 4- 17 Integer data types (U = unsigned, S = short, D= double)
Data type
Bit size
Number Range
Constant examples
Address
examples
USInt
8
0 to 255
78, 2#01001110
SInt
8
-128 to 127
+50, 16#50
MB0, DB1.DBB4,
Tag_name
UInt
16
0 to 65,535
65295, 0
Int
16
-32,768 to 32,767
30000, +30000
MW2, DB1.DBW2,
Tag_name
UDInt
32
0 to 4,294,967,295
4042322160
DInt
32
-2,147,483,648 to
2,147,483,647
-2131754992
MD6, DB1.DBD8,
Tag_name
4.4.3
Floating-point real data types
Real (or floating-point) numbers are represented as 32-bit single-precision numbers (Real),
or 64-bit double-precision numbers (LReal) as described in the ANSI/IEEE 754-1985
standard. Single-precision floating-point numbers are accurate up to 6 significant digits and
double-precision floating point numbers are accurate up to 15 significant digits. You can
specify a maximum of 6 significant digits (Real) or 15 (LReal) when entering a floating-point
constant to maintain precision.
Table 4- 18 Floating-point real data types (L=Long)
Data type Bit size Number range
Constant Examples
Address examples
Real
32
-3.38 to -1.175 495e-38,
±0,
+1.175 495e-38 to +3.38
123.456, -3.4, 1.0e-5
MD100, DB1.DBD8,
Tag_name
LReal
64
-1.7976931348308 to
-2.2250738585072014e-308,
±0,
+2.2250738585072014e-308 to
+1.7976931348308
12345.123456789e40,
1.2E+40
DB_name.var_name
Rules:
No direct addressing
support
Can be assigned in an
OB, FB, or FC block
interface table
Can be assigned in a
global or instance data
block , only when the data
block is created as the
"optimized" type (symbolic
access only)
Calculations that involve a long series of values including very large and very small numbers
can produce inaccurate results. This can occur if the numbers differ by 10 to the power of x,
where x > 6 (Real), or 15 (LReal). For example (Real): 100 000 000 + 1 = 100 000 000.