Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Technische Informatik » Mantisse einer nicht Gleitkommazahl » Antwort erstellen » Hallo Gast [Anmelden|Registrieren]

Antwort erstellen
Benutzername: (du bist nicht eingeloggt!)
Thema:
Nachricht:

HTML ist nicht erlaubt
BBCode ist erlaubt
Smilies sind erlaubt
Bilder sind erlaubt

Smilies: 21 von 33
smileWinkDaumen hoch
verwirrtAugenzwinkerngeschockt
Mit ZungeGottunglücklich
Forum Kloppebösegroßes Grinsen
TanzentraurigProst
TeufelSpamWillkommen
LehrerLOL HammerZunge raus
Hilfe 
aktuellen Tag schließen
alle Tags schließen
fettgedruckter Textkursiver Textunterstrichener Text zentrierter Text Hyperlink einfügenE-Mail-Adresse einfügenBild einfügen Zitat einfügenListe erstellen CODE einfügenPHP CODE farbig hervorheben
Spamschutz:
Text aus Bild eingeben
Spamschutz

Die letzten 4 Beiträge
as_string

Du musst doch aber das Komma eine Stelle verschieben (diesmal nach rechts), also Exponent ist -1, also als 127-1 = 126 dargestellt, also 0111 1110.
Nochmal kurz: 0,5 dezimal -> 0,1 Dualsystem -> 1*2^(-1)

Gruß
Marco

PS: Die Mantisse ist hier komplett 0, weil die einzige 1 vor dem Komma ja weg gelassen wird.

PPS: Wenn Du Dir unsicher bist: Such mal im Netz nach IEEE 754, da gibt es genug Webseiten, die eine Umwandlung von Dizimal in Gleitkomma machen und manchmal auch noch etwas erklären, wie man drauf kommt und so.
nature6

Hey! danke für die rasche antwort. Wink damit konnte ich weiter kommen. jetzt stehe ich aber vor einem neuen problem. hoffentlich kennst du zu meiner frage auch die antwort.

ich muss die 0,5 in floating point überführen. dabei stelle ich fest das der ja beim umrechnen nur eine 1 hat, also 0 für das positive vorzeichen und die 1. Also 0.1 ist laut der normalisierung jetzt die 2^{1} oder 2^{0}? Da ich ja im Prinzip die kommastelle gar nicht verschoben habe? Ich gehe mal davon aus das es 2^{0} ist. Jetzt zu meinem Problem, wird jetzt der Bias (127) mit 0 addiert oder mit 0 subtrahiert? verwirrt
as_string

83 (dez) in binär: 101 0011
Komma so weit nach links verschieben, bis vor dem Komma die erste 1 stehen bleibt:
1,010011
Das waren 6 stellen nach links.
Hinter dem Komme ist jetzt die Mantisse: 010011 (die 1 vorm Komma lässt man weg, da muss ja immer eine 1 stehen, wenn man das Komma immer so weit verschiebt, außer die Zahl ist genau 0)
zu der 6 zählt man noch den Exponent Offset dazu, das kommt jetzt drauf an, wieviele Bit der Exponent hat. Angenommen es wären 8 Bit, dann kann man damit ja Zahlen zwischen 0 und 255 darstellen. Um auch negative Zahlen darstellen zu können, verwendet man hier nicht das 2-er-Complement, sondern man zieht addiert zu der Zahl einfach 127 (also 2^7-1) dazu. Wenn man nur 6 Bit für den Exponent hätte, dann würde man 2^5-1, also 31 addieren, also immer "ungefähr" die Hälfte (abgerundet) von der maximal darstellbaren Zahl.
Also hat man 127 + 6 = 133. 133 in Binärdarstellung sind dann 1000 0101
Dann ist die Zahl positiv, also ist das erste Bit 0. Kommt dann so raus:
0 | 10000101 | 01001100000000000000000

Vorzeichen, Exponente und Mantisse. für ein 32-bit IEEE 754 float (also ein single)

Gruß
Marco
nature6 Mantisse einer nicht Gleitkommazahl

Ich muss zwei dezimalzahlen miteinander verrechnen, die eine Zahl ist eine durchweg positive Zahl ohne nachkommastelle, die andere hingegen hat nachkommastellen.

Damit ich die zahlen miteinander verrechnen kann nach dem IEEE 754 standard, muss ich wissen was der Exponent und die Mantisse von der nicht gleitkommazahl ist? wie finde ich das bei einer zahl wie 83 raus verwirrt