title: Python Modbus String decoding issue
body: <p>I have an issue with the pymodbus decoder with strings. For example, when I try to read 'abcdefg' pymodbus gives me 'badcfehg'. The byteorder and the wordorder don't change the result.</p>
  
  <p>Here is my code: </p>
  
  <pre><code>result=client.read_holding_registers(25000,4)
  decoder = BinaryPayloadDecoder.fromRegisters(result.registers,byteorder=Endian.Little,wordorder=Endian.Big)
  decoder.decode_string(8)
  </code></pre>
  
  <p>Can someone explain why the order does not change the result? I try with the builder and it's the same problem. However, I don't have this problem with 32 bits floats for example.</p>
  
  <p>I also tried with an older version of pymodbus and it works:</p>
  
  <pre><code>decoder = BinaryPayloadDecoder.fromRegisters(registers,endian=Endian.Little)
  </code></pre>
  
  <p>Note: I already read the following topic: <a href="https://stackoverflow.com/questions/54709624/pymodbus-issue-reading-string-multiple-type-of-data-from-modbus-device">pymodbus: Issue reading String &amp; multiple type of data from Modbus device</a> but I don't have any access to the modbus server.</p>