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 

Dualzahl umwandeln



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.01.2011, 17:20
Beitrag #1

Fidel90 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 61
Registriert seit: Nov 2010

2011
2010
EN

98xxx
Deutschland
Dualzahl umwandeln
Abend,

Sitze hier an einem, ich denke doch recht einfachem Problem...aber naja, es ist schon spätWink

Grundproblem: Ich möchte eine in einem String repräsentierte Dualzahl mit 16 Stellen in einen dezimalen Wert umrechnen. Dabei symbolisiert Bit15 das Vorzeichen (0 oder 1), Bit14 bis Bit8 stehen für den Vorkommawert (2^6 bis 2^0), die Bits 7-4 für die Nachkommastelle (2^-1 bis 2^-4). Die restlichen Bits sind nicht belegt.

Hab bisher verschiedene kleine Ansätze ausprobiert (u.a. mit einer DLL), allerdings sieht nichts dermaßen vielversprechend aus, dass ich daran weiterarbeiten möchte...
Prinzipiell lese ich den String erstmal Zeichenweise ein und wandel die einzelnen Stellen in einen Integerwert um...nur wie weiter?

Hat jmd. so etwas schonmal gemacht, bzw. gibt es eine relativ einfache Möglichkeit das ganze zu implementieren?

thx und mfg
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.01.2011, 17:48
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
Dualzahl umwandeln
Schau dir mal diesen Thread an:
http://www.labviewforum.de/index.php?showtopic=18123
Ich denke, da kannst du dir was abschauen.

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
05.01.2011, 20:17 (Dieser Beitrag wurde zuletzt bearbeitet: 05.01.2011 23:46 von jg.)
Beitrag #3

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

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Dualzahl umwandeln
Tja, die Angaben sind leider nicht eindeutig:[list]
[*]Bit 15 ist das Vorzeichen. Deutet das auf eine Zahl im 2er-Komlement-Format hin, oder ist Bit 15 das Vorzeichen (0 pos., 1 negat. oder umgekehrt?) und der Rest der Zahl der Betrag?<>
[*]Die nicht benutzten Bits 0..3, sind die immer Null?<>
[st]Unten 2 Beispiel wie man es machen könnte. Es wird angenommen, daß die Bits 0..3 immer Null sind.

Oben: Bits 0..14 sind der Betrag, wenn Bit15=1 dann Vorzeichen negativ.
Unten: Zahl ist im 2er Komplement-Format.

   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.01.2011, 20:46
Beitrag #4

Fidel90 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 61
Registriert seit: Nov 2010

2011
2010
EN

98xxx
Deutschland
Dualzahl umwandeln
Hallo, danke für eure Antworten.

@Lucki: Danke das schaut interessant aus. Bin jetzt nicht 100pro sicher, denke aber mal das dein oberes Bsp. zutreffen müsste. Muss ich morgen mal schauen. Könntest du mir vllt. noch in 1-2 Sätzen die Idee hinter deiner Umsetzung erklären. Steig da grad ehrlich gesagt nicht ganz durchTongue

mfg
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.01.2011, 22:39
Beitrag #5

unicorn Offline
LVF-Freak
****


Beiträge: 680
Registriert seit: Jul 2009

8.6.1, 2010 - 2012
1994
EN

10xxx
Deutschland
Dualzahl umwandeln
Scan Value wandelt den Binärzahlstring in eine Zahl um. Und zwar als Ganzzahl interpretiert. Das Teilen durch 256 verschiebt die Kommastelle; setzt also die Regel Bits 7-4 sind die Nachkommastellen.

Wenn Bit 15 nur das Vorzeichen ist muss die Zahl noch umgerechnet werden entsprechend des oberen Beispiels, da Scan Value Zweierkomplementzahlen erwartet, wenn negative Zahlen auftreten können.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.01.2011, 08:24 (Dieser Beitrag wurde zuletzt bearbeitet: 06.01.2011 10:13 von Lucki.)
Beitrag #6

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

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Dualzahl umwandeln
Unicorn hat ja schon etwas erklärt. Ich poste hier noch das VI, dann kannst Du mal selbst mit ein paar Werten experimentieren und das VI evtl. ändern.
Was bei so einer Anfrage extrem hilfreich gewesen wäre: Wenigstens ein Beispiel einer Zahl, und dem was hinten rauskommen muß, posten.
Lv09_img2
Sonstige .vi  bin_rstring.vi (Größe: 7,03 KB / Downloads: 249)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
06.01.2011, 10:06 (Dieser Beitrag wurde zuletzt bearbeitet: 06.01.2011 10:07 von Y-P.)
Beitrag #7

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Dualzahl umwandeln
Offtopic2
17:20 Uhr? Spät? O
Du bist Student, Du bist doch gerade erst aufgestanden..... Big GrinWink

Gruß Markus

' schrieb:...aber naja, es ist schon spätWink

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.01.2011, 10:10
Beitrag #8

Fidel90 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 61
Registriert seit: Nov 2010

2011
2010
EN

98xxx
Deutschland
Dualzahl umwandeln
Danke, so funktionierts einwandfrei...Smile

@Markus:Tongue...

mfgWink
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Gehe zu: