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 

4Byte Datenstrang aufteilen



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!

05.03.2009, 10:24
Beitrag #11

RoLe Offline
LVF-Guru
*****


Beiträge: 1.236
Registriert seit: Jul 2007

-
1997
en

0
Schweiz
4Byte Datenstrang aufteilen
Von mir auch noch ein Beispiel, da du ev. ja am ende die einzelnen Bit der U8 wissen möchtest.
(in dem Fall kannst du die For-Schleife löschen)

In meinem Bsp. entsprechen die Indexe des Array dem Byte1-4.
Bei den gezeigten Bsp. mit dem "Split Number" ist Byte 0 das unterste. (index3 des U8 Array)
Kein Problem, aber man muss es wissenWink

...oder man kann es so machen, dann gibt es keine Kreuzungen beim verbinden.


Angehängte Datei(en) Thumbnail(s)
   

.·´¯)--> Leben ist das, was dir passiert, wenn du eifrig dabei bist andere Pläne zu machen <--(¯`·.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
05.03.2009, 14:26 (Dieser Beitrag wurde zuletzt bearbeitet: 05.03.2009 14:27 von Schandmaul.)
Beitrag #12

Schandmaul Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: Mar 2009

8.5, 2011
2008
EN

82205
Deutschland
4Byte Datenstrang aufteilen
Halli hallo,
ich bins mal wieder ^_^.

Ich hatte mich schon mal gemeldet wegen einer 4 Byte Geschichte,
ich glaube ich muss das Thema mal komplett schildern, ich habe nämlich keine Ahnung Rolleyes,
wie ich das ganze bewerkstelligen soll.

Also, die Aufgabenstellung ist folgende:

Ich muss einen 32- bit (4Byte) Datenstrang in einen 40- bit (5Byte) Datenstrang konvertieren, das tolle daran ist,
dass das LSB der letzten 4Bytes des 5Byte Datenstranges 0 sein muss, das 1. Byte hat das LSB 1.
Nun ist das Problem, dass ich von bit 0 beginnend bis bit 31 die Daten von Byte 5 bis Byte 1 durchschieben muss (je das letzte),
aber ohne das jeweilige LSB zu beeinflussen.
Ich habe mir dazu mal ein Beispiel überlegt:
z.B.
32- bit Anfangsstrang:
10111111 10000000 11111111 11000000

dieser soll am Ende so aussehen:
1011XYZ1 11111000 00000110 11111110 10000000

- XYZ steh hier für einen Kanal, den ich variabel anlegen kann.
- das erste Byte hat das LSB1, die anderen das LSB0

d.h. dass ich beim schieben von Byte 5 auf Byte 4 quasi dass LSB auslassen muss und direkt auf
das zweite bit den Übertrag von Byte 5 schreiben muss usw.

Ich bin damit gerade völlig überfordert,
vielleicht blockiert mein Hirn auch nur, weil ich da schon seit 2 Tagen dransitze.

Bin über jede Antwort dankbar.

Gruß
Flo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.03.2009, 14:49
Beitrag #13

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
4Byte Datenstrang aufteilen
Jetzt würde ich mit Boolean-Array (so wie schon von TSchAC vorgeschlagen) arbeiten.

Bsp:
   

Gruß, Jens

P.S.: Ich habe mal die beiden Threads zusammengehängt, ist ja im Prinzip noch dieselbe Frage.

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
05.03.2009, 16:05
Beitrag #14

Schandmaul Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: Mar 2009

8.5, 2011
2008
EN

82205
Deutschland
4Byte Datenstrang aufteilen
Jens, du bist a SchauBig Grin.

Danke
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.03.2009, 16:16
Beitrag #15

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
4Byte Datenstrang aufteilen
Solange das kein Gergovia-Dialekt ist (vgl. Asterix im Avernerland), nehme ich das Lob gerne an. Big Grin

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
05.03.2009, 16:50
Beitrag #16

Schandmaul Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: Mar 2009

8.5, 2011
2008
EN

82205
Deutschland
4Byte Datenstrang aufteilen
Naa iwo, des is barisch und hoast so fui wia, du bischd super.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
05.03.2009, 17:34
Beitrag #17

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
4Byte Datenstrang aufteilen
' schrieb:Jens, du bist a SchauBig Grin.
Kann dem nur zustimmen, vor allem wegen seiner Intuition. Was ist ein "Datenstrang"? Ist damit ein String gemeint oder eine ganz normale Zahl? Wie werden die Bytes gezählt? Beginnend mit 0 oder mit 1? Von links oder von rechts gezählt? Es ist alles nicht klar gesagt.
Falls am Schluß wieder ein "Datenstrang" herauskommen soll, entweder as String oder als U64-Zahl, dann würde, ausgehend vom Ergebnis von Jens, die weitere Lösung so aussehen:
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.03.2009, 07:41 (Dieser Beitrag wurde zuletzt bearbeitet: 06.03.2009 07:43 von rolfk.)
Beitrag #18

rolfk Offline
LVF-Guru
*****


Beiträge: 2.302
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
4Byte Datenstrang aufteilen
' schrieb:@Torsten (ohne h)Big Grin: Wenn du damit meinst, um eine U32 auf 4 U8 aufzuteilen, ja, dazu braucht man 3x dieses VI.

Gruß, Jens

Oder ganz einfach ein Typecast in ein Byte Array. Dann hat man zwar das Problem das LabVIEW immer von Big Endian Daten ausgeht auf der Streamseite so dass die Bytes im Array im Prinzip geswapt sind im Vergleich was man auf einer Intel x86 Maschine erwartet.

Das kann man in neueren LabVIEW Versionen durch Verwendung der Flatten Funktion umgehen da man dort die Endianess der Konversion angeben kann. Bei alten LabVIEW Versionen musste man auf der nicht Streamseite (also hier wo der int32 angeschlossen ist) noch die Swap Bytes und Swap Words Funktionen gebrauchen. Hier wo Du die einzelenen Bytes des int32 mittels Index Array herausholen willst ist die Standardisierung auf Big Endian aber sogar ein Vorteil. Auch wenn Du das VI mal auf einer nicht Intel Maschine laufen lässt (frühere PPC Macs, oder aktuel PPC RT Systeme wie etwa CompactRIO) bleibt der Index für das Lowest Significant Byte (LSB) des int32 immer 3.

Zu Beruhigung auch die Split Number Funktion arbeitet auf allen Architekturen gleich da die Hi, Lo Definition sich auf die Hälftenwertigkeit des Eingangsintegers bezieht und nicht etwa auf die Adressposition der Hälften im Speicher.

Rolf Kalbermatter

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen 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
  ökonomisches Aufteilen in Anzeigeprozess und Speichernprozess Hasenfuss 2 2.549 24.06.2015 19:32
Letzter Beitrag: Hasenfuss
  Eine Datenreihe aufteilen Gahlunke 2 3.239 21.06.2012 16:16
Letzter Beitrag: Gahlunke
  String aufteilen mike8080 9 9.535 03.12.2010 13:01
Letzter Beitrag: mike8080
  Arraydarstellung aufteilen illson 8 6.104 03.12.2009 22:12
Letzter Beitrag: unicorn
  String Binär in Bytes aufteilen VisionaryS 14 12.978 27.11.2009 10:07
Letzter Beitrag: M Nussbaumer
  Aufteilen von Werten in ein 1D Array olmethn 3 3.668 11.07.2008 10:23
Letzter Beitrag: Y-P

Gehe zu: