Hallo,
1 | |
2 | |
3 | |
sind die Vorrangsregeln klar bei VHDL geregelt oder je nach Synthesewerkzeug anders? Die künstliche Trennung in der Konstante x"F0" mache ich um die einzelnen logischen Bestandteile besser zur Schau zur bringen.
|
Anzeige
|
Vorrangsregeln für OperatorenHallo,
sind die Vorrangsregeln klar bei VHDL geregelt oder je nach Synthesewerkzeug anders? Die künstliche Trennung in der Konstante x"F0" mache ich um die einzelnen logischen Bestandteile besser zur Schau zur bringen. Google? Mit "vhdl operator priorität" findest du als die ersten beiden Links z.B. http://webpages.eng.wayne.edu/cadence/ECE7530/doc/ch5.pdf und http://www.et.fh-trier.de/etechhomepage/team/schindel/downloadbereich/Vorlesungen/VhdlEasy/Kap4/k45.html > Die künstliche Trennung in der Konstante x"F0" mache ich > um die einzelnen logischen Bestandteile besser zur Schau zur bringen. Und bringst dich dadurch selber ins Grübeln? Aus x"F0" erkenne (zumindest) ich den Wert der Konstante schneller, als aus "1111" & "0000". Und wenn ich dann noch über Prioritäten nachdenken muß, ist es Essig mit der besseren Lesbarkeit.
Gast
#1244942
Ich kenne mich zwar mit VHDL nicht aus, kann aber behaupten, dass es für die Lesbarkeit von Programmen immer schlecht ist wenn man sich auf die Vorrangsregeln bezieht. Wenn man entsprechende Klammerung setzt ist es besser und ohne Missverständnisse lesbar. Für einen Kompiler sollte es keinen Unterschied machen, ob man etwas Klammert oder nicht. Der Binaercode sollte derselbe sein. Gruss JensM.
Gast
#1245041
Andererseits sind in jeder Programmiersprache die Vorrangregeln klar definiert; und sauberen Code zu schreiben heißt nicht, daß den Code auch jemand lesen kann, der die betreffende Programmiersprache gar nicht kennt. Ansonsten müßte man so etwas befürworten:
Bei Fällen, mit denen ein Programmierer nicht täglich zu tun hat (wie verhalten sich in C jetzt nochmal <<, &, ^, && zueinander?) macht es aber in der Tat Sinn, ausdrücklich zu klammern. Nur so ganz allgemein kann man es nicht stehen lassen. Was an der künstlichen Trennung übersichtlicher sein soll, versteh ich aber auch nicht. >Bei Fällen, mit denen ein Programmierer nicht täglich zu tun hat (wie >verhalten sich in C jetzt nochmal <<, &, ^, && zueinander?) macht es >aber in der Tat Sinn, ausdrücklich zu klammern. Nur so ganz allgemein >kann man es nicht stehen lassen. eben ganz meine Meinung. Wenn man viel damit zu tun hat, muss man die Prioritäten wissen, egal ob man nun tatsächlich klammert oder nicht. Ausserdem finde ich die "klammere-mal-vorsichtshalber-alles" Mentalität an den Stellen
gelinde gesagt foobar :) Verleitet es doch manche zur falschen Annahme es handele sich um eine return Funktion :) >Was an der künstlichen Trennung übersichtlicher sein soll, versteh ich >aber auch nicht. ganz simpel eigentlich. Es handelt sich um Bitflaggruppen, diese werden zur besseren Lesbarkeit auch getrennt geschrieben
wenn man selber der Schreiber ist, dann weiss man zB, dass die erste "1" enable-flag ist, und so weiter. Grüsse, Daniel Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|