Modbus protocol description and set-up – KROHNE ALTOSONIC V12 EN User Manual
Page 124

10
MODBUS PROTOCOL DESCRIPTION AND SET-UP
124
ALTOSONIC V12
www.krohne.com
04/2013 - 4002643502 - MA ALTOSONIC V12 R02 en
10.6.4 Double precision floating point (64 bit), transmit sequence
Double precision floating-point numbers are stored in 64-bit registers, represented using the
IEEE 754 encoding. In IEEE 754-2008 the 64-bit base 2 format is officially referred to as binary64.
It was called double in IEEE 754-1985.
The IEEE 754 standard specifies a binary64 as having:
• Sign bit: 1 bit
• Exponent width: 11 bits
• Significant (also known as mantissa) precision: 53 (52 explicitly stored)
The true significant (mantissa) includes an implicit leading bit with value 1 unless the exponent
is stored with all zeros. Thus only 52 bits of the significand (mantissa) appear in the memory
format but the total precision is 53 bits (equivalent to log10(253) ≈ 16 decimal digits). The bits are
laid out as follows:
Double precision bits
Double precision bits 2
Example
The double number 4.125000001862645 will give the IEEE representation:
double number example
A positive sign
A biased exponent of 1025 (401 hexadecimal) is exp. 2
Mantissa = 4 + 1/8 + 1/536870912. Note that the first bit is not stored!
Doubles could be transmitted in two ways. The transmit order in both modes:
Sign +
(Biased)
Exponent
Exponent +
Mantissa
Mantissa 6
Mantissa 5
SEEE EEEE
EEEE MMMM
MMMM
MMMM
MMMM
MMMM
Mantissa 4
Mantissa 3
Mantissa 2
Mantissa 1
MMMM
MMMM
MMMM
MMMM
MMMM
MMMM
MMMM
MMMM
Sign
Exponent
Mantissa
0
100 0000 0001
(1)0000 1000 0000 0000 0000 0000
0000 0010 0000 0000 0000 0000
0000