Forum: Mikrocontroller und Digitale Elektronik Rechnerinterne Darstellung von großer Zahl


von BrassBoss (Gast)


Lesenswert?

Hallo,

ich würde gerne wissen wie in einem 8bit System 155 * 10^6 dargestellt 
wird.
Wie erscheint es binär im Rechnerinternen?

Danke

von Route_66 H. (route_66)


Lesenswert?

Das kann völlig unterschiedlich gehandhabt werden.

Suche dir Etwas aus!

von Ralf D. (doeblitz)


Lesenswert?

Das kommt darauf an, wie du solche Zahlen darstellen willst. Üblich sind 
für diese Größenordnung 32bit Integer, 32bit Float, 64bit Double und 
diverse MP-Libs, die beliebig große Zahlen darstellen können.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Tja, kommt halt drauf an ob als Floatingpoint oder Integer oder 
vielleicht gar String.
Als Integer wahrscheinlich in 4 aufeinanderfolgenden Bytes mit diesen 
Werten:
0x09 0x3d 0x1c 0xc0 - oder vielleicht auch genau andersrum.

Bei floatingpoint wirds neben den Standards sicher auch die ein oder 
andere abweichende Darstellung geben. Spontan faellt mir da der Sinclair 
ZX81 ein, dessen floating point darstellung immer 5 byte lang war, iirc.

Gruss
WK

von Axel S. (a-za-z0-9)


Lesenswert?

BrassBoss schrieb:
>
> ich würde gerne wissen wie in einem 8bit System 155 * 10^6 dargestellt
> wird. Wie erscheint es binär im Rechnerinternen?

Anhand der Notation "155 * 10^6" vermute ich, daß du von einer 
Fließkommazahl sprichst. Dann lies:

https://de.wikipedia.org/wiki/IEEE_754

von Amateur (Gast)


Lesenswert?

Das kann man mit jedem, handelsüblichem Würfel ausknobeln.

Da man mit 8 Bit nicht allzu flexibel ist, haben sich im Laufe der Jahre 
etliche interne Formate etabliert.
Das im Grunde genommen recht einfache Prinzip lautet: Nimm so viele 
Bytes, wie Du glaubst zu benötigen und fasse sie einfach zusammen.
Der zu erwartende Platzbedarf und die geforderte Genauigkeit haben hier 
zu den verschiedensten Formaten geführt.
Welche interne Repräsentation jetzt in Deinem Fall verwendet wird kannst 
Du der Eingangszeile entnehmen.

von Dirk B. (dirkb2)


Lesenswert?

Axel S. schrieb:
> Anhand der Notation "155 * 10^6" vermute ich, daß du von einer
> Fließkommazahl sprichst. Dann lies:
>
> https://de.wikipedia.org/wiki/IEEE_754

Zum rumspielen gibt es auch ein paar Webseiten.
Z.B.: https://www.h-schmidt.net/FloatConverter/IEEE754de.html

von Jacko (Gast)


Lesenswert?

Am günstigsten geht das in 2 Bytes:
Byte A = 155 (kann 0...255 sein)
Byte B =   6 (kann die Zehnerpotenz 0..255, oder -128..127 sein)

Man muss sich natürlich darüber klar sein, was Byte A und B
bedeuten - und dass man damit nicht einfach weiterrechnen kann.

Aber selbst diese Darstellung könnte bei sehr geringer
Genauigkeitsanforderung für minimalen Speicherbedarf ihre
Berechtigung haben.

Also: Was willst du machen?

von Wolfgang (Gast)


Lesenswert?

Jacko schrieb:
> Am günstigsten geht das in 2 Bytes:

Ob Zehnerpotenzen in einem binär arbeitende System so günstig sind, wage 
ich mal zu bezweifeln.

von Zahl (Gast)


Lesenswert?

Wolfgang schrieb:
> Jacko schrieb:
>> Am günstigsten geht das in 2 Bytes:
>
> Ob Zehnerpotenzen in einem binär arbeitende System so günstig sind, wage
> ich mal zu bezweifeln.

Geht noch günstiger:

Mit der Kodierung
1 = 155 * 10^6
0 = nicht 155 * 10^6

könnte man die Zahl mittels einem Bit "1" repräsentieren.

In deine 8 bit würdest du damit sogar 8x diese Information rein 
bekommen!

von Jacko (Gast)


Lesenswert?

Der Wolfgang(Gast) macht sich Sorgen -
der/die Zahl(Gast) hat's kapiert. :-)

Und der TO weiß nicht, was er will.

Gute Nacht!

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.