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 

Dieses Thema hat akzeptierte Lösungen:

Zahl in Hex darstellen



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!

17.04.2012, 22:16
Beitrag #1

angry_Nameless Offline
LVF-Grünschnabel
*


Beiträge: 39
Registriert seit: Mar 2011

17.0.1
2011
DE

66424
Deutschland
Zahl in Hex darstellen
Hallo zusammen,

wahrscheinlich ist das jetzt hier eine Anfängerfrage, aber ich finde nichts im Forum.

Ich habe hier einen String, der die Länge X hat. Diese Länge liegt mir als Integer vor.

Wie kann ich nun die Länge X (hier im Beispiel jetzt 22 Zeichen) einfach in die Form (hex) 16 00 umformen?

Mit den Typecasts komme ich ich auf "0000 0016" diesen Wert müsste ich nun umstellen auf "1600 000" und dann die vier Nullen am Schluss abschneiden.
Gibt es dafür einen einfacheren Weg?

Danke für eure Mühen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
18.04.2012, 05:28
Beitrag #2

NWOmason Offline
Simultator
*****


Beiträge: 1.078
Registriert seit: Dec 2010

2012.SP1
2008
EN

93047
Deutschland
RE: Zahl in Hex darstellen
(17.04.2012 22:16 )angry_Nameless schrieb:  Gibt es dafür einen einfacheren Weg?

Für die Darstellung von Hexadezimalen Zahlen musst du nichts umrechnen, sondern lediglich den Indicator auf Hex umstellen:

   

Beste Grüße,
NWO

9 von 10 Stimmen in meinem Kopf sagen: Ich bin nicht verrückt,
die andere summt die Melodie von Tetris
.

NI schrieb:To use the abort button is like using a tree to stop a car!

(20.01.2012 11:02 )NWOmason schrieb:  Getting Started with NI LabVIEW Student Training
http://zone.ni.com/devzone/cda/tut/p/id/7466

Introduction to NI LabVIEW - Learn LabVIEW Basics
http://www.ni.com/gettingstarted/labviewbasics/

Top 5 der Empfehlungen für LabVIEW-Einsteiger
http://www.ni.com/newsletter/51735/de/
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.04.2012, 06:10
Beitrag #3

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
RE: Zahl in Hex darstellen
(17.04.2012 22:16 )angry_Nameless schrieb:  Wie kann ich nun die Länge X (hier im Beispiel jetzt 22 Zeichen) einfach in die Form (hex) 16 00 umformen?

Mit den Typecasts komme ich ich auf "0000 0016" diesen Wert müsste ich nun umstellen auf "1600 000" und dann die vier Nullen am Schluss abschneiden.

Du hast sicher deine Gründe...aber die Form mit den führenden Nullen ist doch korrekt! Warum willst du die Nullen hinten? Das ist doch einfach falsch...

A.

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.04.2012, 06:38 (Dieser Beitrag wurde zuletzt bearbeitet: 18.04.2012 06:40 von angry_Nameless.)
Beitrag #4

angry_Nameless Offline
LVF-Grünschnabel
*


Beiträge: 39
Registriert seit: Mar 2011

17.0.1
2011
DE

66424
Deutschland
RE: Zahl in Hex darstellen
Hallo,

ich habe mich vielleicht etwas unglücklich ausgedrückt.
Ich beschreibe mein Problem jetzt etwas genauer:

Ich muss einer Maschine einen Hexadezimalstring übergeben, den diese dann auswertet. Der String besteht aus 2 mal 2 (hex) Byte Befehlsstring (z.B.:0032 3134), dann angefügt der Fehlercode (z.B.: 0000) und danach die Befehlslänge, die sich aus der Länge des BEfehlsinhalts errechnen soll. Also wenn der Befehlsinhalt "mach" wäre, dann hexadezimal "6D61 6368 ". Leider verlangt das Progamm immer ein "Doppelbyte" also wäre "mach" = "6D00 6100 6300 6800".

Die Länge dieses "mach" muss auch in den String also so (8 ByteLänge =) : 0800

Nur leider bekomme ich aus der Funktion "Länge des Strings" die "8" und nach einer Typumwandlung, damit ich es in den Gesamtstring eingliedern kann bekomme ich dann :´"3800"
bei einen 16 Char langen String bekäme ich dann "3136" statt "1600"

Mir würde ja schon ausreichen, dass es Hexadezimal "08" ausgibt. Die zwei Nullen sind ja schnell hinzugefügt.

Hoffe, dass das nun verständlicher war.
Warum das Programm, das den String erwartet die Nullen hinten will, kann ich leider nicht beantworten. Vielleicht ist es nur ein Steuerzeichen, das der Anlage sagt, dass es jetzt mit dem nächsten Abschnitt weiter geht.

Danke für eure Mühe
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.04.2012, 07:38
Beitrag #5

angry_Nameless Offline
LVF-Grünschnabel
*


Beiträge: 39
Registriert seit: Mar 2011

17.0.1
2011
DE

66424
Deutschland
RE: Zahl in Hex darstellen
Ganz einfach beschrieben ist mein Problem dieses:

Wie kann ich die Länge eines Strings als Hexadezimalstring anzeigen.

Zur Zeit:
1. Länge des Strings 22 Zeichen (INT)--> ergibt einen (String) 16 --> ergibt (HexString) 3136
2. Länge des Strings 22 Zeichen (INT)--> ergibt einen (DezimalString) 22 --> ergibt (HexString) 3232


Es muss doch möglich sein eine Zahl in einen HexString zu wandeln:
22 Zeichen (INT) = 0016 (HexString)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.04.2012, 08:10 (Dieser Beitrag wurde zuletzt bearbeitet: 18.04.2012 08:22 von A.Berndsen.)
Beitrag #6

A.Berndsen Offline
LVF-Team
LVF-Team

Beiträge: 2.437
Registriert seit: Feb 2005

8.2.1 - 2011
2004
DE

724xx
Deutschland
RE: Zahl in Hex darstellen
(18.04.2012 07:38 )angry_Nameless schrieb:  Es muss doch möglich sein eine Zahl in einen HexString zu wandeln:
22 Zeichen (INT) = 0016 (HexString)

Klar geht das.

8.5 .vi  int2hex_s.vi (Größe: 8,99 KB / Downloads: 478)


Wobei ich gestehen muß, je mehr Du schreibst, umso weniger verstehe ich. Wink

Grüße
Andreas

Geht nicht, gibts nicht!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
18.04.2012, 08:13
Beitrag #7

THL Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 111
Registriert seit: May 2011

2012
2009
EN


Deutschland
RE: Zahl in Hex darstellen
Wenn ich dich recht verstanden habe, sollte dies dein Problem lösen.


Angehängte Datei(en)
8.6 .vi  hex.vi (Größe: 5,23 KB / Downloads: 320)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.04.2012, 10:39
Beitrag #8

angry_Nameless Offline
LVF-Grünschnabel
*


Beiträge: 39
Registriert seit: Mar 2011

17.0.1
2011
DE

66424
Deutschland
RE: Zahl in Hex darstellen
Smile Vielen DAnk für eure Hilfe, leider ist mein Problem immer noch nicht gelöst.

Labview übermittelt ja nicht einen String "123", sondern AscII -Codiert eine "31" (siehe Bild mit Hexadezimaler Anzeige)

Ich will aber die "1" als Hexadezimalanzeige 01 haben.

Oder die dezimal 17 als hexadezimalanzeige 11.

Problem ist nicht die Anzeige als hexa-Zahl, sondern die Umwandlung zum String und dann in die Hexa-Anzeige.

also Integer 17 = String (in Hexadezimalanzeige) 11


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.04.2012, 10:53 (Dieser Beitrag wurde zuletzt bearbeitet: 18.04.2012 10:55 von jg.)
Beitrag #9

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Zahl in Hex darstellen
Und hier gibt es die fertige Funktion dafür:

Number to Hexadezimal String

Gruß, Jens

EDIT: Hast du dir auch das VI von A. Berndsen angeschaut? Auch das wandelt eine Integer Zahl in einen Hex-String!

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
18.04.2012, 11:02
Beitrag #10

angry_Nameless Offline
LVF-Grünschnabel
*


Beiträge: 39
Registriert seit: Mar 2011

17.0.1
2011
DE

66424
Deutschland
RE: Zahl in Hex darstellen
Hallo,
entweder stelle ich meine Frage zu dumm, oder die Lösung ist zu einfach, so dass keiner von euch drauf kommt Smile

Im Anhang ein Bild zum Vorschlag von Jens. Dort sollte eigentlich in Hexadezimaler Anzeige "7B" stehen, das ist aber bei der Funktion in NORMALER Anzeige.

Die Funktion von Jens macht aus einer Zahl einen String, der in der normalen Anzeige 7B ausgibt. Das ist aber leider ein ASCII Code der dann bei der Übermittlung "3742" ergibt und eben nicht 7B.


Angehängte Datei(en) Thumbnail(s)
   
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
  String in Zahl/ Zahl in String mit Type Cast Jann 6 6.184 18.01.2016 09:02
Letzter Beitrag: Jann
  96-Bit Zahl darstellen? Msengxxl 3 4.052 10.06.2013 22:18
Letzter Beitrag: Lucki

Gehe zu: