This DataType defines a decimal value. The format of this value conforms to the following formula
(-1)sign x coefficient x 10exponent
Attribute |
Value |
||||
BrowseName |
Decimal |
||||
IsAbstract |
False |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
|
Subtype of the SByte defined in OPC 10000-3 |
For this release the OPC UA stacks and infrastructure does not support Decimal as a base type, thus this type must be mapped to a ByteString and the ByteString must be passed to the SDK and/or Stack. This DataType has to be handled by the application.
Decimal can be encoded in a number of ways and can be defined to have 32, 64 and 128 varieties. Since the OPC UA stacks do not natively support this encoding only a single Decimal type is being defined. This will allow the stacks in the future to be expanded to support Decimal32, Decimal64 and Decimal128. The encoding of decimal is also defined by more than one group using different encodings. The binary encoding being used for this release (and will always be used for the plain decimal binary string encoding) is a string that is 128 bit and follows the IEC TR 24732 definition for a decimal. It is summarised in the table below.
Parameter |
decimal |
k, storage width in bits |
128 |
p, precision in digits |
34 |
6144 |
|
6176 |
|
sign bit |
1 |
17 |
|
t, trailing significant field width in bits |
110 |
k, storage width in bits |
128 |
|
|