2017-11-25 3 views
-1

Der Sensor, den ich 16-Bit-Wort wird wieder bin mit und es zu einem tatsächlichen Wert ich einen Ausdruck verwenden müssen konvertieren,VHDL: Division und Dezimaldarstellung

Der Ausdruck ist ((175.72*16b_word)/65536)-46.85.

Kann ich durch rechts teilen 16 Positionen verschieben?

Ich habe jetzt ein paar Stunden gesucht und ich habe immer noch keine Ahnung, wie mit dezimaler Darstellung zu tun! Hat jemand ein Beispiel, wie man es lösen kann?

+0

NB nicht mein DV, aber bitte zeigen Sie Ihren Code. Sie verwenden eine Festkommadarstellung, die in VHDL nicht üblich ist. Sie müssen also spezifisch sein. – JHBonarius

+0

Anstatt einen festen Punkt zu verwenden, verschieben Sie alle Werte so, dass sie Ganzzahlen sind. Machen Sie Berechnungen, ohne Informationen zu entfernen. Wenn Sie also eine Software lesen, kann sie den vollen Wert lesen und dort konvertieren. – Ephreal

Antwort

3

Ja, die Verschiebung einer Binärzahl um 16 Stellen nach rechts entspricht einer Division durch 65536 (bei schlechter Rundung jedoch, wenn Sie die verschobenen Ziffern ablegen).