Gast
#773036
ich weiß zwar, wie man eine dezimalzahl in einen Standart Logic Vector umwandelt, aber gibt es davon auch die Umkehrfunktion? Ich hoffe, ihr könnt mir helfen! mfg
|
Anzeige
|
vhdl: std_logic_vector in Dezimalzahl umwandeln
Gast
#773036
ich weiß zwar, wie man eine dezimalzahl in einen Standart Logic Vector umwandelt, aber gibt es davon auch die Umkehrfunktion? Ich hoffe, ihr könnt mir helfen! mfg
Gast
#773041
sowas hier?
Gast
#773045
ja sowas meinte ich, danke :) noch eine frage (bin nicht sehr versiert in sachen vhdl) wofür steht das unsigned?
Gast
#773095
Für einen Vektor, der als vorzeichenlose Zahl interpretiert wird, signed im Gegensatz wird als vorzeichenbehaftete Zahl interpretiert. Es sind trotzdem noch Vektoren, deshalb nur der Cast unsigned(Vektor). Für die Umwandlung in integer muss richtig umgewandelt werden mit to_unsigned(...).
Gast
#773096
Der letzte Satz sollte natürlich: "Für die Umwandlung in integer muss richtig umgewandelt werden mit to_integer(...)." heissen
Gast
#794759
Hi ihr, mich würde die andere Richtung interessieren: Wie mach ich aus nem Integer nen std_logic_vector? Genaugenommen hab ich ne variable integer range 0 to 255 und will den Wert in einen std_logic_vector(7 downto 0) haben. MfG Hosche Ich mach das, unter Verwendung von numeric_std immer so: x <= std_logic_vector(to_unsigned(y)) oder x <= std_logic_vector(to_signed(y)) . Dass es vorzeichenbehaftete Werte auch gibt sollte man grad bei Integers nicht vergessen ;) .
Gast
#794784
Vielen Dank, auch für die schnelle Hilfe. Nicht das ich daran gezweifelt hätte, aber klappt einwndfrei. :-)
Gast
#1062802
Hallo Meine Frage wäre, wie ich einen 11Bit Vecor in einen 19Bit umwandle? Grüße Was hat deine Frage mit diesem alten Thread zu tun?
> wie ich einen 11Bit Vecor in einen 19Bit umwandle?
Einfach links oder rechts Nullen oder Einsen anhängen, z.B. so:
vec19 <= "00000000" & vec11;
@ Ranjet Kuruvilla (Gast)
> wie ich einen 11Bit Vecor in einen 19Bit umwandle?
Oder arithmetisch korrekt:
Na, das hat was... ;-) Wozu so einen Zombie-Fred wieder aufheizen? Wer dir hier antworten will, muß erst noch das ganze alte Zeug durchlesen. Das ist meist sinnlos.
Gast
#1062903
Und wie zieht man nun wieder 9 Bit ab? Ich muss danach einen 19Bit Vektor in 11 Bit umwandeln.
Gast
#1062931
allo Im Übrigen funktioniert das mit bdi<="00000000"&BORDER(i); nicht, obwohl genaut 20Bit rauskommen sollten... Grüße
Gast
#1062953
Sorry, jetzt klappt es irgendwie wieder. Aber die Umwandlung in 11 Bit weiss ich nicht. > Aber die Umwandlung in 11 Bit weiss ich nicht. So klappts: vec11 <= vec19(10 downto 0); Aber jetzt lies mal erst in Ruhe das erste Kapitel deines VHDL-Buches durch.
Gast
#1063481
Ich hab mir mal erlaubt eine Reference Card anzuhängen :) Dort sind alle vordefinierten Datentypen und Konvertierungsfunktionen paketspezifisch aufgelistet. So spart man sich das ewige Gesuche! Schönen Sonntagnachmittag
Gast
#1064159
@Lothar Miller: Deine Würmer müssen nicht sein:
Siehe auch hier: http://dz.ee.ethz.ch/support/ic/hdl/vhdlsources.en.html Duke Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|