Forum: Digitale Signalverarbeitung / DSP / Machine Learning Sättigung umrechnen


von Mike M. (mikercy)


Lesenswert?

Hi,
Kann jemand mir erklären, wie wird eine Zahl mit Sättigung umgerechnet?
Also, Z = -2,375 und in Zahlenformat Q2.3 lautet: 101,101 
(2er.Komplement)
Das Zahlenbereich ist [-2^2, 2^2-2^(-3)], also [-4, +3,875]
Nun wird diese Zahl nach rechts um 1 Stelle geschiftet, dann habe ich:
(1)011,010 und Überlauf entsteht.
Die Frage ist: "Welche Zahl würde der DSP für die Operation im Falle der 
Sättigung ausgeben?"
Die Lösung ist: 100,000 (Dezimalwert: -4,0)

Ich weiss nicht, wie kann man diese Lösung finden?
Vielen Dank :)

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Bei Zweierkomplement ists immer so, dass binaer gesehen die groesste 
Zahl aus einer Null und danach lauter Einsen besteht und die kleinste 
Zahl (also die negativste) aus einer Eins und dann dem Rest Nullen 
besteht.

Was das dann spaeter tatsaechlich (z.b. in Dezimal/Fixpunkt/ASCII/.../ 
bedeutet, ist wieder unterschiedlich. Hier bei dir halt jetzt grad' [-4, 
+3,875].

Gruss
WK

von Mike M. (mikercy)


Lesenswert?

Hi, vielen Dank für die Antwort
Das heißt, mit Zahlenbereich = [-4, +3,875], wenn Ergebnis > +3,875 (zB 
100,110 = +4,75) dann Ergebnis mit Sättigung = genau +3,875 = 011,111. 
Wenn Ergebnis < -4 (z.B (1)110,110 = -6,75) dann mit Sättigung = genau 
-4 = (1)100,000 oder?

Wenn Ergebnis im Bereich [-4, +3,875] liegt dann braucht das keine 
Sättigung, aber wenn man mit Sättigung möchtet, dann soll das = genau -4 
(für negative Zahl) oder = genau +3,875 (für positive Zahl) ?

Also, wie meine Bsp am Anfang, das Ergebnis = (1)011,010 = -3,75, noch 
im Zahlenbereich liegt, dann braucht man keine Sättigung aber die Frage 
ist suche mit Sättigung dann die Lösung ist = genau -4 = (1)100,000 und 
mit Zahlenformat dann lautet 100,000 ?

MfG

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Das mit der Saettigung ist halt so ein Notbehelf, wenn's Kind schon in 
den Brunnen gefallen ist, sprich das Ergebnis nicht mehr in die 
Darstellung passt.
Eigentlich sollte das bei Berechnungen ja nicht vorkommen, denn egal ob 
mit oder ohne Saettigung: Die Rechnung stimmt ja dann nicht mehr. Man 
versucht halt, durch die Saettigung den Fehler kleiner zu halten, bzw. 
wenigstens das Vorzeichen des (falschen) Ergebnisses noch "richtig" zu 
haben.
Wenn das Ergebnis noch in die Darstellung passt, ist's egal ob ich mit 
oder ohne Saettigung rechne. Dann kommt ja eh' "das Richtige" raus.

Gruss
WK

von Mike M. (mikercy)


Lesenswert?

Ich habe ja endlich verstanden, wieso benutzt man Sättigung in DSP ^^ 
Vielen Dank Wk
Also auch mit Hilfe dieser Quelle:
https://books.google.de/books?id=qefwAwAAQBAJ (seite 269)
https://de.wikipedia.org/wiki/Arithmetischer_%C3%9Cberlauf

MfG
Mike

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.