Hallo zusammen,
Ich habe ein LV-Programm geschrieben, bei welchem die Funktionalität auch vorhanden ist. Jedoch dauert die Ausführung sehr lange.
Darum würde ich die Teilaufgabe hier gerne vorstellen und fragen, wer für mich Tips hätte um den Code demenstpechend anzupassen, dass die Laufzeit verkürzt wird.
Ausgangslage:
Ich bekomme XML-Dateien, in welchen meine Daten in der Hex-Schreibweise als UTF-8 codiert sind. Die XML-Dateien werden dann ca. 4 MB groß sein und somit über 4 mio HEX-Zeichen enthalten.
Das sieht dann als String so aus:
Code:
2EF4C59F 2EF4C5BF 2EF4C5DF 2EF4C5FF 2EF4C61F 2EF4C63F 2EF4C65F
Dieser String soll dann wie folgt Interpretiert werden:
Code:
0010 = 2
1110 = E
1111 = F
0100 = 4
...
Es gehören immer 8 Zeichen zu einem Block zwischen zwei Leerzeichen zusammen. Ist die Zeichenkette kürzer wie 8 Zeichen muss dementsprechen mit führenden 0-len aufgefüllt werden.
Ziel
Das Ziel der Umwandlung ist der Datentyp
Waveform mit
U8 als Daten. Die Daten bestehen lediglich aus der Folge von 0ern bzw. 1ern (0010111011110100..). Danach erfoglt dann die eigeneliche Verarbeitung der Daten.
Folgender Code von mir erfüllt bereits seine Aufage:
Aktuell fehlt mir jedoch ein Ansatz, um den Code effektiver zu gestalten.
Würde mich freuen, wenn ich den ein oder anderen Tip von euch bekommen könnte.
Vielen Dank
Viele Grüße
Christoph