INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

float wert in 4 byte konvertieren



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

06.01.2012, 10:22
Beitrag #1

könnes Offline
LVF-Neueinsteiger


Beiträge: 7
Registriert seit: Sep 2009

8.6
2008
EN

41844
Deutschland
float wert in 4 byte konvertieren
Hallo zusammen,

ich habe zurzeit die Aufgabe, dass ich einen gewissen floatwert in einen 4 byte wert umwandle und dann in dez und hex wiedergebe.
Als C-code konnte ich das schon realisieren aber nur da der Kompiler meine "arbeit" macht.

hat jmd ne idee, wie ich das in labview realisieren kann? Bahn

Hier der C-code, mit dem das super funktioniert:

// FLOAT CONVERTER konvertiert einen float wert in 4 byte

/* ganzzahlige Variablen deklarieren */
float startwert = 0;
char byte_1, byte_2, byte_3, byte_4;
int i,r;
char* pointer;

/* Eingabe */
printf("*** FLOAT-KONVERTER ***\n\n");
printf ("Float-Wert eingeben: ");
scanf ("%f", &startwert);
printf ("\nKonvertiert Float-Wert in 4 Byte Hex !!\n\n");
pointer = (char*)&startwert;
for (i = 1; i < 5; i++)
printf("Dezimal %d: %d \n", i, *pointer++);
printf ("\n");

printf("Lo -> Hi-Significance\n\n");

pointer = (char*)&startwert;
for (i = 1; i < 5; i++)
{
printf("Hex-Byte %d: %X \t invertiert %X \n", i, *pointer, ~*pointer);
pointer++;
}
printf ("\n");
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
06.01.2012, 11:13 (Dieser Beitrag wurde zuletzt bearbeitet: 06.01.2012 11:15 von eb.)
Beitrag #2

eb Offline
LVF-Lernwilliger
***


Beiträge: 292
Registriert seit: Mar 2008

2014
2008
EN

12xxx
Deutschland
RE: float wert in 4 byte konvertieren
Hallo,

meinst du sowas?
   
Achtung: die Anzeigeelemente sind mit "Radix" versehen und und Anzeige "Decimal" bzw. "Hex" gestellt.
Wichtig hierbei ist auch welche Reihenfolge LabVIEW bei den Bytes macht, also was das "highest" Byte ist, und wie das "signed" verarbeitet wird.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.01.2012, 11:15
Beitrag #3

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: float wert in 4 byte konvertieren
Dann schau mal bei
Flatten To String
oder bei
Type Cast

Für Darstellung in HEX, Stringdarstellung auf HEX umschalten.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.01.2012, 11:48
Beitrag #4

könnes Offline
LVF-Neueinsteiger


Beiträge: 7
Registriert seit: Sep 2009

8.6
2008
EN

41844
Deutschland
RE: float wert in 4 byte konvertieren
hatte das auch schon ausprobiert.
bekomme aber immer andere Werte als im C-Programm raus.
versteh auch nicht so ganz wieso nicht bzw. was der compiler genau macht?

z.b. bei einem eingabewert von 0,1259

müssten folgende Dez-Werte raus kommen: -18 / -21 / 0 / 62
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.01.2012, 12:38
Beitrag #5

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: float wert in 4 byte konvertieren
Wenn du auch in deinem C-Programm in I8 (und nicht wie eher üblich in U8) wandelst...

Aber bitteschön, hier direkte Wandlung nach I8, über die Byte-Order hat Erik schon was gesagt:

   

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.01.2012, 12:47
Beitrag #6

könnes Offline
LVF-Neueinsteiger


Beiträge: 7
Registriert seit: Sep 2009

8.6
2008
EN

41844
Deutschland
RE: float wert in 4 byte konvertieren
Danke Jens so einfach hätte ich es mir aber nicht vorgestellt.
Aber läuft und macht was es soll.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.01.2012, 13:11
Beitrag #7

eb Offline
LVF-Lernwilliger
***


Beiträge: 292
Registriert seit: Mar 2008

2014
2008
EN

12xxx
Deutschland
RE: float wert in 4 byte konvertieren
Danke Jens,

hätte ich mir auch denken müssen, dass man auch Arrays an das TypeCast-Teil dranhängen kann... Wieder was gelernt, danke dafür!
Gruß
Erik
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Array 4 Elemente (Float) aufbrechen Tobiii 6 5.412 13.02.2017 09:24
Letzter Beitrag: Tobiii
  Wert an naheliegensten Wert aus Array anpassen TSC 17 11.466 26.07.2016 06:59
Letzter Beitrag: TSC
  String zu Dezimal (1, 2 und 4 Byte) unsigned + Integer hansi9990 9 7.095 16.07.2015 14:25
Letzter Beitrag: hansi9990
  Formatbezeichner für float und Dezimalzeichen %.; kombinieren (In String formatieren) dali4u 0 3.340 21.02.2015 11:45
Letzter Beitrag: dali4u
  Aktueller Wert von vorherigem Wert abziehen Semicon 6 7.374 18.06.2014 16:34
Letzter Beitrag: jg
  Datenstring Byte/Wordweise umdrehen LabviewRoland 5 5.379 18.10.2013 07:32
Letzter Beitrag: LabviewRoland

Gehe zu: