WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Signed Integer in Binaer konvertieren

 

Dudovitz
Forum-Anfänger

Forum-Anfänger


Beiträge: 23
Anmeldedatum: 06.06.12
Wohnort: Berlin
Version: ---
     Beitrag Verfasst am: 06.06.2012, 17:34     Titel: Signed Integer in Binaer konvertieren
  Antworten mit Zitat      
Hallo alle miteinander.

Ich suche gerade nach einer Funktion um einen Vektor mit positiven und auch negativen Werten in einen Vektor aus 12bit Werten zu konvertieren. Mit signed int scheint das ja garnicht das grosse Problem zu sein, aber gibt es wirklich keine Funktion die das auch mit signed Int hinbekommt?

Besten Dank!

Gruss,

Lenni
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 07.06.2012, 11:46     Titel: Re: Signed Integer in Binaer konvertieren
  Antworten mit Zitat      
Hallo Dudovitz,

Zitat:
Mit signed int scheint das ja garnicht das grosse Problem zu sein, aber gibt es wirklich keine Funktion die das auch mit signed Int hinbekommt?

Was genau ist der Unterschied zwischen "signed int" und "signed Int"? Das groß geschriebene "I"?

Es gibt verschiedene Möglichkeiten einen vorzeichenbehafteten Integer mit 12 Bit zu erstellen. Bitte poste ein Beispiel für das von Dir gewünschte Ergebnis.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Dudovitz
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 23
Anmeldedatum: 06.06.12
Wohnort: Berlin
Version: ---
     Beitrag Verfasst am: 07.06.2012, 16:14     Titel:
  Antworten mit Zitat      
Oh da habe ich wohl ein wenig getraeumt und mich dann auch noch unpreaziese ausgedruegt.

Ich haette einfach gerne eine Funktion die mir fuer z.B.

-267 => 1110 1111 0101
+267 => 0001 0000 1011

Wenn ich jetzt also einen Vektor habe

x = -267
267


wuerde ich gerne eine Funktion haben die daraus sowas wie

y = 111011110101
000100001011

bekommen.

Besten Dank weiterhin.

Gruss,

Len
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 08.06.2012, 00:52     Titel:
  Antworten mit Zitat      
Hallo Dudovitz,

Was genau ist "1110 1111 0101" ?
Später heißt es "111011110101" ohne Leerzeichen.
Sind das Strings, also CHAR-Vektoren, oder Vektoren aus DOUBLEs oder einem der INT-Typen?
Suchst Du nachj dem DEC2BIN Befehl?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Dudovitz
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 23
Anmeldedatum: 06.06.12
Wohnort: Berlin
Version: ---
     Beitrag Verfasst am: 10.06.2012, 23:49     Titel:
  Antworten mit Zitat      
Dachte ich trenn das mal der Uebersichts halber. Dasses dann zusammen im Vektor steht waer schon klar.

Dec2Bin hat das Problem das es nur mit positiven Zahlen funktioniert. Bzw. nicht nach dem 2er Komplement, was ich halt braeuchte. Meine Zahlen sind glaube ich einfach in Float. Ich habe da nichts besoneres eingestellt, bis auf das die Nachkommastellen weggerundet werden. Von daher denke ich mal 32Bit Float? Darueber habe ich noch garnicht nachgedacht ... guter Punkt!
Private Nachricht senden Benutzer-Profile anzeigen
 
flashpixx
Forum-Guru

Forum-Guru


Beiträge: 355
Anmeldedatum: 19.04.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.06.2012, 06:38     Titel:
  Antworten mit Zitat      
Du kannst doch mit Hilfe von dec2bin und eben etwas binärer Berechnung Dir das doch passende abbilden. Wenn Du 12 Bits inkl Vorzeichen hast, dann kennst Du den Zahlenbereich Deiner Zahlen (beachte Asymmetrie der Binärzahlen). Da Dir ja bekannt ist, bevor Du dec2bin aufrufst, ob die Zahl negativ ist, kannst Du einfach dec2bin mit den Betrag der Zahl aufrufen und per Bitarithmetik das dafür passende 2er-Komplement, wenn die Zahl negativ ist bilden.
Private Nachricht senden Benutzer-Profile anzeigen
 
Dudovitz
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 23
Anmeldedatum: 06.06.12
Wohnort: Berlin
Version: ---
     Beitrag Verfasst am: 12.06.2012, 20:22     Titel:
  Antworten mit Zitat      
Joar gut das koennt man natuerlich so machen. Das Problem ist nur, dass ich 2x48000 Werte in nem Vektor habe ... Denke da waers dann Zeit fuer nen m-File ... allerdings hat mir ein anderes Programm die Arbeit abgenommen.

Ich brauchte die Daten als Testdaten fuer ein VHDL Projekt. Das schoene ist, dass beim einlesen der VHDL-Code mehr oder minder automatisch genau das draus macht, was ich ihm eigentlich geben wollte. binaere Zahlen im 2er Komplement.

Von daher vielen Dank fuer die Vorschlaege und Hilfe!

beste Gruesse,

Lenni
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.