Forum: Mikrocontroller und Digitale Elektronik Zahl im Zweierkomplement darstellen


von Fragling (Gast)


Lesenswert?

Hallo Forum,

ich muss die Zahl 2^10 -3 im Zweierkomplement bei 11 Stellen angeben.
Die Lösung habe ich bereits hier, allerdings weiß ich nicht, wie ich 
soetwas angehe.

Hier steht:

01111111111 = 2^10 -1
01111111101 = 2^10 -3

Ich verstehe nicht wirklich, wie man darauf kommt. Auch den schritt von 
-1 zu -3 ist mir nicht begreiflich.


Könnte mir das vll. jemand erläutern ? Wäre sehr nett.

Viele Grüße

Fragling.

: Verschoben durch Moderator
von Helmut S. (helmuts)


Lesenswert?

Vielleicht ist das verständlicher:

01111111111 = 1023
01111111101 = 1021

11111111111 = -1
11111111101 = -3

von Wilhelm F. (Gast)


Lesenswert?

Fragling schrieb:

> Könnte mir das vll. jemand erläutern ? Wäre sehr nett.

Einerkomplement: Zahl binär invertieren.

Zweierkomplement: Zahl binär invertieren, und 1 addieren.

http://de.wikipedia.org/wiki/Zweierkomplement

von Fragling (Gast)


Lesenswert?

Manchmal hat man echt Bäume vor dem Kopf ^^
Jetzt ist es klar

Danke euch !

von Mammut (Gast)


Lesenswert?

Der Post von Wilhelm Ferkes ist zwar so gesehen korrekt, hilft aber 
jetzt hier nicht wirklich weiter. Denn: Positive Zahlen lassen sich ohne 
Umwege im Zweierkomplement darstellen (und die Zahl ist positiv). Die 
Umwandlung ins Zweierkomplement ist nur nötig, wenn es sich um eine 
negative Zahl handelt (Vergleiche einen Zahlenkreis im Zweierkomplement 
-> google).

Du brauchst da oben auch nix großes rechnen... nur komme verschieben und 
ein bisschen binäres rechnen. Erstmal:

2^10

Das bedeutet, das wir 10 x die 0 haben und vorne eine 1 dran hängen.

10000000000

So klappt das bei bei bei jeder binärzahl!

Jetzt addieren wir erstmal -1

= 011111111111

und nochmal -2  damit wir auf die -3 kommen.
Das kann man jetzt hanchriftlich rechnen, oder wir wissen das die zweite 
stelle von rechtes den dezimalwert 2 hat. Dann müssen wir die 1 dort 
einfach negieren.

= 01111111101

So einfach kanns gehen :-) !

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.