# SignedMost Significant Word Multiply Subtract.

**The math register initially contains the dividend of the DDV operation. Upon execution the unrounded quotient is placed in the most significant word of the math register. The remainder is placed in the least significant word of the math register.**

## sum1 var word ' most significant word

### MSB - the most significant word

This lack of standardization for values larger than 16 bits has resulted in a situation where Modbus implementers have to make an arbitrary choice as to which address of the register pair contains the most significant word of 32-bit values such as IEEE-754 single-precision floats and signed or unsigned 32-bit integers. Most programs for communicating with Modbus slaves can be configured for either register word order.

### MSW - Most Significant Word | AcronymFinder

**When rung condition is true, this output instruction divides Source A by Source B and stores the result in the destination and the math register. The value stored in the destination is rounded. The value stored in the math register consists of the unrounded quotient (placed in the most significant word) and the remainder (placed in the least significant word).**

Signed Most significant word Multiply, Signed Most significantword Multiply with Accumulation, and Signed Most significant wordMultiply with Subtraction. These instructions have 32-bit operandsand produce only the most significant 32-bits of the result.The parameters specify the format of the data. many words areread, each bytes. can be 1 for most significant wordfirst or -1 for least significant first. Within each word can be1 for most significant byte first, -1 for least significant first, or 0 forthe native endianness of the host CPU. The most significant bitsof each word are skipped, this can be 0 to use the full words.If is non-zero then the most significant word produced will be non-zero. If is zero then the count returned will be zero and nothing written to . If is in this case, no block is allocated, just is returned. Note that in the Modbus spec, and the function documentation below, a register is specifically a 16-bit value. In our Modbus Map we define some 32-bit values, and these are often referred to as a register, but when looking at the details of Modbus protocol realize that these are actually 2 registers. For example, AIN0 is defined as a 32-bit value that is read starting at address 0. AIN0 is actually stored in 2 registers: the MSW (most significant word) is at address 0 and the LSW (least significant word) is at address 1.The parameters specify the format of the data produced. Each word will be bytes and can be 1 for most significant word first or-1 for least significant first. Within each word can be 1 formost significant byte first, -1 for least significant first, or 0 for thenative endianness of the host CPU. The most significant bits ofeach word are unused and set to zero, this can be 0 to produce full words.