Negative Zahl in Bytes prüfen
Verfasst: Mittwoch 18. Februar 2026, 15:47
Hallo zusammen,
dieses mal geht es bei mir wieder um Bytes.
Ich bekomme zum Beispiel:
`b'q'`ist zur Prüfung, ob es sich um die Nachricht handelt, die ich erwarte. Die 3 `xff` werden immer zum Schluss gesendet und dazwischen befindet sich meine Zahl im little Endian.
Die Zahl -7000 wird mir so zurück gegeben:
Wenn ich das richtig verstanden habe, dann beginnt eine negative Zahl mit `xff` und da ich little Endian habe und "alle" negativen Zahlen, die ich getestet habe, mit `xff` enden, bin ich auf dem richtigen Weg(denke ich).
Es wäre doch aber falsch, nur dieses Byte gegen `xff` zu prüfen? Denn dasss ist ja grundsätzlich erst mal valide, weil ich vielleicht die Zahl 4294967295 benötige. Oder sagt man, dass man mit der Anzahl an Bytes nur eine gewisse größe an Zahl darstellen kann und wenn es größer ist, ist es negativ?
Danke und Grüße
Dennis
dieses mal geht es bei mir wieder um Bytes.
Ich bekomme zum Beispiel:
Code: Alles auswählen
b'qX\x1b\x00\x00\xff\xff\xff'Code: Alles auswählen
>> value = b'qX\x1b\x00\x00\xff\xff\xff'
>> int.from_bytes(value[1:5], 'little')
7000Code: Alles auswählen
b'q\xa8\xe4\xff\xff\xff\xff\xff']/code]
[code="python"]>> value = b'q\xa8\xe4\xff\xff\xff\xff\xff'
>> int.from_bytes(value[1:5], 'little')
4294960296Es wäre doch aber falsch, nur dieses Byte gegen `xff` zu prüfen? Denn dasss ist ja grundsätzlich erst mal valide, weil ich vielleicht die Zahl 4294967295 benötige. Oder sagt man, dass man mit der Anzahl an Bytes nur eine gewisse größe an Zahl darstellen kann und wenn es größer ist, ist es negativ?
Danke und Grüße
Dennis