Forum: Mikrocontroller und Digitale Elektronik Wie heissen die Anteile einer Kommazahl?


von Jan (Gast)


Lesenswert?

Find nichts im Netz. Und es geht nicht um Fliesskommazahlen.

Wie nennt man den Teil vor dem Komma und den Teil nach dem Komma. 
Nachkommazahl habe ich schonmal gelesen, Vorkommazahl klingt noch 
dämlicher.

Geht um vernünftige Variablennamen.

von Ich (Gast)


Lesenswert?

Wenn nicht Fließkommazahl was ist eine Kommazahl? Jedenfalls findet man 
damit seine Antwort.

von H. H. (Gast)


Lesenswert?

Integer und Fraction?

von Jan (Gast)


Lesenswert?

Fraction klingt schonmal gut. Könnte man mit f abkürzen. Aber Integer 
bezeichnet doch eine für sich genommen vollständige natürliche Zahl? 
Glaube nicht, dass das korrekt ist.

von (prx) A. K. (prx)


Lesenswert?

Passt schon. Deutsch: ganzzahliger Anteil, Englisch: integer/integral 
part. Dahinter ist dann der Nachkomma(an)teil oder die Nachkommastellen, 
fractional part.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?


von Adam P. (adamap)


Lesenswert?

Ich schrieb:
> Wenn nicht Fließkommazahl was ist eine Kommazahl?

Es gibt ja Fließkommazahl = Gleitkommazahl und dann noch Festkommazahl.

Bei Fließkommazahl bzw. Gleitkommazahl spricht man dann aber von:
- Mantisse
- Basis
- Exponent

Vorkommastellen oder Nachkommastellen gibt es dort nicht.

von Stefan M. (interrupt)


Lesenswert?

Vorkomma und Nachkomma

von S. Landolt (Gast)


Lesenswert?

Mein hp48 kennt, kurz&bündig, die Befehle 'IP' und 'FP': Integer Part 
Function bzw. Fractional Part Function.

von W.S. (Gast)


Lesenswert?

Jan schrieb:
> Geht um vernünftige Variablennamen

Dann benenne deine Variablen nicht nach der Art von Kommas o.ä., sondern 
nach dem, was sie in der Anwendung sein sollen, als z.B. 'Breite', 
'Periodendauer', 'Gewicht' oder so etwas.

W.S.

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

W.S. schrieb:
> Dann benenne deine Variablen nicht nach der Art von Kommas o.ä., sondern
> nach dem, was sie in der Anwendung sein sollen, als z.B. 'Breite',
> 'Periodendauer', 'Gewicht' oder so etwas.

Mal wieder lesen verlernt und hauptsache irgendein Mist geschrieben?
Es geht erstmal explizit um den Vor/Nachkommateil einer Zahl und dessen 
Benennung.
Das hat hinz schon beantwortet.
Den "Gruppen"name wird er schon kennen.
Hier gehts also um sowas wie "width_fraction".

von . Siehe Bildformate. (Gast)


Lesenswert?

dezimalzahl: nicht ganze?

 signifikante KOMMA dezimale



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

von Dyson (Gast)


Lesenswert?

Euro und Cent.

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


Lesenswert?

Mw E. schrieb:
> W.S. schrieb:
>> Dann benenne deine Variablen nicht nach der Art von Kommas o.ä., sondern
>> nach dem, was sie in der Anwendung sein sollen, als z.B. 'Breite',
>> 'Periodendauer', 'Gewicht' oder so etwas.
>
> Mal wieder lesen verlernt und hauptsache irgendein Mist geschrieben?
> Es geht erstmal explizit um den Vor/Nachkommateil einer Zahl und dessen
> Benennung.

Hier muß ich W.S. ausnahmsweise(!) mal recht geben. Es gibt keinen 
nachvollziehbaren Grund, Vor- und Nachkommastellen in getrennten 
Variablen zu halten. Eine Fließkomma- (oder Festkomma) Variable. Ein 
Name. Vor allen, wenn es im Kontext

Jan schrieb:
> Geht um vernünftige Variablennamen.

steht

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Das hatte W.S. aber in seinem Post nicht geschrieben, sondern wieder nur 
das übliche Gemurmel aus seiner Ecke.
Wenn deine Ausführungen in seinem Post gestanden hätten, ja dann hätte 
der Post von W.S. sinnvoll sein können.

von Rolf M. (rmagnus)


Lesenswert?

Adam P. schrieb:
> Ich schrieb:
>> Wenn nicht Fließkommazahl was ist eine Kommazahl?
>
> Es gibt ja Fließkommazahl = Gleitkommazahl und dann noch Festkommazahl.

Wobei "Fließkomma" eine Fehlübersetzung ist. "float" heißt nicht 
"fließen", sondern gleiten oder z.B. auf dem Wasser treiben. Da das 
Komma nicht flüssig ist und damit auch nicht zerfließt, sondern sich 
lediglich verschiebt, also quasi "gleitet", ist "Fließkomma" nicht 
richtig.

Axel S. schrieb:
> Hier muß ich W.S. ausnahmsweise(!) mal recht geben. Es gibt keinen
> nachvollziehbaren Grund, Vor- und Nachkommastellen in getrennten
> Variablen zu halten.

Woher willst du das wissen? Du denkst, dass es pauschal niemals nie eine 
Situation geben kann, in der sowas benötigt wird?
Vielleicht will er es ausgeben und muss dazu den Vor- und den 
Nachkomma-Teil getrennt von einander haben. Ist aber eigentlich auch 
egal, da für die Beantwortung der Frage nicht wirklich von Bedeutung.

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


Lesenswert?

Rolf M. schrieb:
> Axel S. schrieb:
>> Hier muß ich W.S. ausnahmsweise(!) mal recht geben. Es gibt keinen
>> nachvollziehbaren Grund, Vor- und Nachkommastellen in getrennten
>> Variablen zu halten.
>
> Woher willst du das wissen? Du denkst, dass es pauschal niemals
> nie eine Situation geben kann, in der sowas benötigt wird?

Nein. Es mag Gründe geben, die dafür sprechen. Aber er gibt ja keinen 
Grund an. Bis zum Beweis des Gegenteils halte ich das für einen Fall von 
"den Wald vor lauter Bäumen nicht sehen".

> Vielleicht will er es ausgeben und muss dazu den Vor- und den
> Nachkomma-Teil getrennt von einander haben.

Nun, dafür müßte er sie nicht in getrennten Variablen speichern. Und 
sich auch noch Gedanken darüber machen, wie die heißen sollen. Oh und 
abgesehen davon: das gibt dicken Ärger, wenn er beim Nachkommateil die 
führenden Nullen "vergißt" auszugeben. A'la
1
  printf("%d.%6d seconds", tm.sec, tm.usec)

@Jan: nenn deine Variable einfach foo und bar. Nein, noch besser. 
Nenne den Teil der die Vorkommastellen enthält za. Und den Rest mit 
den Nachkommastellen hl. Dann ist za.hl deine Zahl :)

von Siehe Bildformate. (Gast)


Lesenswert?

. Siehe Bildformate. schrieb:
> dezimalzahl: nicht ganze?
>
>  signifikante KOMMA dezimale
>
>

Ne signifikanz ist die Zahl der relevanten stellen hinter führenden 
Nullen ;)


Nochmal,
>> es geht nicht um Fliesskommazahlen.
>> Wie nennt man den Teil vor dem Komma und den Teil nach dem Komma.

ganzzahliger Teil - dezim. Trennzeichen - gebrochener Teil

"dezimale"/dezimalstellen stimmt aber schon,
noch mal eine Runde 5. Klasse ....


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




Was auch immer das mit Variablennahmen zu tun haben soll.

von Jan (Gast)


Lesenswert?

Axel S. schrieb:
> "den Wald vor lauter Bäumen nicht sehen".

Bin Assemblerprogrammierer.

von W.S. (Gast)


Lesenswert?

Rolf M. schrieb:
> Woher willst du das wissen?

Wenn man eine Variable hat, die quasi intern aus 2 Teilen besteht, dann 
will man diese Variable für gewöhnlich auch als solche ansprechen, ohne 
sich der Gefahr auszusetzen, bei 2 Teilvariablen mit unterschiedlichen 
Namen irgendwo einen Schusselfehler zu machen. Allenfalls könnte man so 
eine Variable als struct machen, sodaß dort innerhalb des struct's 2 
Teile vorhanden sind, die Variable als solche jedoch nur unter einem 
Namen angesprochen wird - und möglichst sollte dieser Name ein bissel 
aussagekräftig sein und zum Thema der Software passen.

W.S.

von Adam P. (adamap)


Lesenswert?

Rolf M. schrieb:
> Adam P. schrieb:
>> Ich schrieb:
>>> Wenn nicht Fließkommazahl was ist eine Kommazahl?
>>
>> Es gibt ja Fließkommazahl = Gleitkommazahl und dann noch Festkommazahl.
>
> Wobei "Fließkomma" eine Fehlübersetzung ist. "float" heißt nicht
> "fließen", sondern gleiten oder z.B. auf dem Wasser treiben. Da das
> Komma nicht flüssig ist und damit auch nicht zerfließt, sondern sich
> lediglich verschiebt, also quasi "gleitet", ist "Fließkomma" nicht
> richtig.

Ja da gebe ich dir Recht!
Es heißt ja auch Gleitkommazahl, jedoch verwenden viele den Begriff 
Fließkommazahl. Deshalb dieses Gleichzeichen.
Ja, hätte ich anders formulieren können.

edit:

"Eine Gleitkommazahl – häufig auch Fließkommazahl genannt (englisch 
floating point number oder kurz float, wörtlich Zahl mit flottierendem 
Punkt oder auch [wohl weiter lehnübersetzt] Gleitpunktzahl) – ist eine 
angenäherte Darstellung einer reellen Zahl."

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

von Spess53 (Gast)


Lesenswert?

Hi

>Bin Assemblerprogrammierer.

Dann passt doch das hier:

The following functions are only defined in AVRASM2:

INT(expression) Truncates a floating point expression to integer (ie 
discards fractional part)
FRAC(expression) Extracts fractional part of a floating point expression 
(ie discards integer part).

MfG Spess

von Dirk B. (dirkb2)


Lesenswert?

Vielleicht hilft die Beschreibung der Funktion modf(), die eine 
Fließkommazahl  aufteilt:

https://linux.die.net/man/3/modf

von Jan (Gast)


Lesenswert?

Ich denke int und frac sind gute Namen. Abgekürzt i und f. i ist ein 
wenig gewöhnungsbedürftig, und ein grosses I kann man wegen der 
Verwechslungsgefahr mit einer 1 nicht nehmen. Z.B. adcval0I liest sich 
grottig. Stand wäre also, für zwei 48-Bit Festkommazahlen mit 16-Bit 
Kommaanteil, die in den Registern (AVR) 4-15 abgelegt sind:
1
deviation0f0 = 4
2
deviation0f1 = 5
3
deviation0i0 = 6
4
deviation0i1 = 7
5
deviation0i2 = 8
6
deviation0i3 = 9
7
deviation1f0 = 10
8
deviation1f1 = 11
9
deviation1i0 = 12
10
deviation1i1 = 13
11
deviation1i2 = 14
12
deviation1i3 = 15

Mir schon klar, dass ein 8-Bitter bei 48-Bit Festkommaarithmetik arg ins 
Schwitzen kommt. Braucht mir jetzt niemand extra zu sagen. Sowas brauche 
ich auch zum Glück nicht oft. Sonst hätte ich längst gewechselt.

von Jan (Gast)


Lesenswert?

Nachtrag: Zugegeben, der Assemblerprogrammierer kommt da wahrscheinlich 
mehr ins Schwitzen als der Controller :D

von Jobst M. (jobstens-de)


Lesenswert?

Och, ich habe schon in ASM mit 64-Bit Festkommaarithmetik Orthodrome auf 
'nem 8051 berechnet. Ich würde schon sagen, dass der mehr ins schwitzen 
gekommen ist als ich.

Gruß
Jobst

von Rainer V. (a_zip)


Lesenswert?

Jobst M. schrieb:
> Ich würde schon sagen, dass der mehr ins schwitzen
> gekommen ist als ich.

...ich glaube, wir schwitzen vorher, später der Controller...
Gruß Rainer

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.