32-BIT Modbus Integer

Modbus 32-Bit Register Converter

Combine two 16-bit Modbus registers into one 32-bit integer or split a 32-bit integer into high and low Modbus register words. View UINT32, INT32, hexadecimal and binary representations.

2 × 16-Bit UINT32 INT32 Hex Binary ABCD Order
32-Bit Register Converter High Word First
First 16-bit Modbus register.
Second 16-bit Modbus register.
Choose how the entered 32-bit integer is interpreted.
Range: 0 to 4294967295.
This calculator uses high-word-first ABCD order. The first register contains bits 31–16 and the second register contains bits 15–0.
32-Bit Register Result
Unsigned UINT32
Signed INT32
High Register
Low Register
High Word Hex
Low Word Hex
32-Bit Hex
Register Order ABCD
32-Bit Binary

What Is a Modbus 32-Bit Register Value?

A standard Modbus register contains 16 bits. When an application needs a 32-bit integer, two consecutive registers can be combined to create one 32-bit data value.

The resulting 32-bit pattern may be interpreted as an unsigned UINT32 integer or as a signed INT32 two’s-complement integer, depending on the device register definition.

How Two 16-Bit Registers Form a 32-Bit Integer

With the high-word-first convention used by this calculator, the first register contributes the upper sixteen bits and the second register contributes the lower sixteen bits.

32-bit value = High Register × 65536 + Low Register

For example:

High Register = 1
Low Register = 0

32-bit value = 1 × 65536 + 0

= 65536

Modbus Register Combination Example

Suppose the high register contains 4660 and the low register contains 22136.

High register: 4660
Hex = 1234

Low register: 22136
Hex = 5678

Combined hex: 12345678

Unsigned decimal: 305419896

This demonstrates how two independent 16-bit register words become one continuous 32-bit binary value.

Split a 32-Bit Integer Into Modbus Registers

The reverse operation divides a 32-bit integer into its upper and lower sixteen-bit words.

32-bit integer: 305419896

Hex: 12345678

High register: 1234 hex = 4660

Low register: 5678 hex = 22136

These two register values can then represent the original 32-bit integer when the receiving system uses the same word order.

UINT32 vs INT32

The same 32 bits can represent either an unsigned or signed integer. The bit pattern itself does not change; only its interpretation changes.

Type Minimum Maximum
UINT32 0 4,294,967,295
INT32 -2,147,483,648 2,147,483,647

Signed 32-Bit Modbus Example

When all 32 bits are set, the raw unsigned value is 4294967295. Interpreting the same pattern as signed two’s complement gives -1.

High register: 65535 = FFFF

Low register: 65535 = FFFF

32-bit hex: FFFFFFFF

UINT32: 4294967295

INT32: -1

32-Bit Register Binary Layout

The high register occupies bits 31 through 16, while the low register occupies bits 15 through 0.

High Register bits 31 …….. 16
|
1234

Low Register bits 15 …….. 0
|
5678

Combined: 12345678

Displaying the complete binary representation is useful when examining masks, status fields, counters and raw device values.

Why 32-Bit Modbus Integers Are Used

A single 16-bit register can represent only 65,536 different unsigned states. Applications that require larger counters, accumulated measurements, timestamps or identifiers may therefore store a value across two registers.

This pattern is encountered in PLCs, industrial meters, process controllers, sensors, automation gateways and other devices that expose larger integer values through Modbus registers.

Modbus 32-Bit Integer vs Float32

Both a 32-bit integer and a Float32 occupy 32 bits and may therefore use two Modbus registers. However, their bit interpretations are completely different.

Data Type Width Interpretation
UINT32 32 bits Unsigned integer
INT32 32 bits Two’s-complement signed integer
Float32 32 bits IEEE 754 floating point

For that reason, this calculator handles integer register values only and does not perform floating-point decoding.

Important Modbus 32-Bit Register Notes

Important: this calculator combines exactly two 16-bit Modbus registers.

The first register is treated as the high 16-bit word.

The second register is treated as the low 16-bit word.

UINT32 uses the range 0 through 4,294,967,295.

INT32 uses the range -2,147,483,648 through 2,147,483,647.

Signed values use standard 32-bit two’s-complement representation.

This calculator does not decode IEEE 754 floating-point values.

It does not rearrange Modbus byte or word order.

Always verify the data type and register order specified by the device manufacturer.

Modbus 32-Bit Register Converter FAQs

How many Modbus registers are required for a 32-bit integer?
Two standard 16-bit Modbus registers are required to hold one 32-bit integer.
How are two Modbus registers combined?
With high-word-first ordering, multiply the high register by 65536 and add the low register.
What is the maximum unsigned 32-bit value?
The maximum UINT32 value is 4,294,967,295.
What is the signed INT32 range?
INT32 ranges from -2,147,483,648 through 2,147,483,647.
Can this converter split a 32-bit integer into two registers?
Yes. It extracts the high 16-bit word and low 16-bit word from the entered 32-bit integer.
Does this converter support negative numbers?
Yes. In split mode you can choose signed INT32 and enter a value within the signed 32-bit range.
Is this the same as a Modbus Float32 converter?
No. Float32 uses IEEE 754 floating-point encoding, while this calculator interprets the 32 bits as an integer.
Does this calculator change byte order?
No. It uses high-word-first ABCD order only.
Why does my PLC show a different 32-bit value?
The device may use a different word or byte order, or the register may use a different data type. Check the manufacturer’s register map.
Scroll to Top