14.11.2005, 12:08
Hallo zusammen,
kennt jemand einen bequemen Weg, wie man aus einer 8-Bit-Zahl (0 bis 255) unter Beachtung des MSB als Anzeige für das Vorzeichen der Zahl, das Ergebnis (-128 bis 127) ausgeben kann?
Beispiele:
a) Übergeben wird die Zahl 130 (dezimal) = 10000010 (binär).
Da das MSB hier 1 ist, handelt es sich um eine negative Zahl. Das 2er-Komplement (alle Bits negieren und das ganze +1) wäre folglich 1111110 (binär) = -126 (dezimal).
B) Übergeben wird die Zahl 100 (dezimal) = 01100100 (binär). Da hier das MSB 0 ist, handelt es sich um eine positive Zahl. Damit ist der übergebene Wert tatsächlich +100.
Genau diese Umwandlung mit der Unterscheidung positiv/ negativ soll so einfach wie möglich umgesetzt werden
Wer kann helfen? Wer hat eine Idee? Danke im Voraus.
kennt jemand einen bequemen Weg, wie man aus einer 8-Bit-Zahl (0 bis 255) unter Beachtung des MSB als Anzeige für das Vorzeichen der Zahl, das Ergebnis (-128 bis 127) ausgeben kann?
Beispiele:
a) Übergeben wird die Zahl 130 (dezimal) = 10000010 (binär).
Da das MSB hier 1 ist, handelt es sich um eine negative Zahl. Das 2er-Komplement (alle Bits negieren und das ganze +1) wäre folglich 1111110 (binär) = -126 (dezimal).
B) Übergeben wird die Zahl 100 (dezimal) = 01100100 (binär). Da hier das MSB 0 ist, handelt es sich um eine positive Zahl. Damit ist der übergebene Wert tatsächlich +100.
Genau diese Umwandlung mit der Unterscheidung positiv/ negativ soll so einfach wie möglich umgesetzt werden
Wer kann helfen? Wer hat eine Idee? Danke im Voraus.