Vinzenz Mai: negative Zahlen mit toString in Dual wandeln

Beitrag lesen

Hallo Roger,

Ich vermute, Du möchtest etwas ganz anderes. Kann es sein, dass Du Deine negative Zahl so darstellen möchtest, wie die Bits einer entsprechenden vorzeichenbehafteten Ganzzahl? Das ist architektur- und typabhängig :-)

wie kann ich es trotzdem anstellen? Das auch das Vorzeichen auch in einem Bit angezeigt wird?

Du musst Dich auf einen Datentyp und eine Architektur einigen :-)

Beispiel: Eine 8-Bit-Signed Integer:
-3: wird dargestellt durch 1111 1101

Beispiel: Eine 16-Bit-Signed Integer:
-3 wird wie folgt dargestellt: 1111 1111 1111 1101 (Wertigkeit)

Auf einer Little-Endian-Maschine (wie z.B. der PC-Architektur) liegt das niederwertige Byte zuerst im Speicher, d.h. -3 sieht im Speicher wie folgt aus:

low byte  high byte
1111 1101 1111 1111

auf einer Big-Endian-Machine dagegen

high byte low byte
1111 1111 1111 1101

Ich vermute, dass Dich eher die Reihenfolge in der Wertigkeit als die Ablage im Speicher interessiert, so dass Dir Big-Endian reichte. Zur Darstellung der Zahlen kommst Du über das Zweierkomplement.

Freundliche Grüße

Vinzenz