www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Rechnen mit Bascom


Autor: Daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ist es mit Bascom tatsächlich nicht möglich mehr als eine
Rechenoperation in "einer Zeile" durchzuführen ??

x = a + b
x = x * c
das klappt.

x = (a + b) * c
klappt nicht !!

Dies Beispiel ist ja noch problemlos zu lösen, wenn jedoch eine
aufwendige Formel durchlaufen werden muss, kann die Sache recht
unangenehm werden.

Wisst ihr mehr ??

Daniel

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

geht nicht.

Matthias

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hast eine der wesentlichen Beschränkungen von Bascom entdeckt.
Damit leben oder einen anderen Compiler verwenden - ob der andere
AVR-Basic-Compiler diese Einschränkung nicht aufweist, entzieht sich
jedoch meiner kenntnis.

Autor: Daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rufus,

welcher wäre denn "der ander Compiler" ??

Daniel

Autor: Ratber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Yo,ich kenn nur Bascom für AVR und 51er und die Lightversonen dazu.

Gibbet da noch was ?


@Daniel

Über diesen Umstand hab ich mich auch schon geärgert aber in anderen
Compilern ist es nicht oder nicht viel besser wenn du komplexere
Formeln verwenden willst.

Sei froh das du für Bascom die Formel nur in einzelne Rechenschritte
zerlegen und dich nicht auch noch um andere Geschichten kümmern mußt.
Is doch schon was oder ? ;)

Zum Zerlgen von Formeln gabs mal irgendwo ein kleines Programm das
genau auf diesen Umstand zugeschnitten war (Ja,es gibt auch noch in
anderen Umgebungen dieses Problem) und dir eine Formel in Mundgerechte
Teile zerlegt die du dann nurnoch einsetzen mußt.

Frag mich nur nicht wo ich das gesehen habe.
Einfach mal etwas die Suchmaschinen treten

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"welcher wäre denn "der ander Compiler" ??"


Z.B. irgend ein C-Compiler (WIN-AVR).

Unter C gibt es keinerlei Beschränkung, aber der Lesbarkeit wegen
sollten Zeilen nicht länger als 2000 Zeichen sein.

Es gibt aber Wettbewerbe für den unleserlichsten C-Code, da werden
komplette Programme in nur eine Zeile geschrieben.

Rein von der Syntax her kennt C gar keine Zeilenumbrüche, man kann
schreiben:

i = 10;

oder:

i
=
10
;

da ist kein Unterschied.

Nur der Preprozessor benötigt und erkennt Zeilenumbrüche, z.B. für
Macro-Definitionen:

#define BLABLA 5


Peter

Autor: Andreas Hesse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

es gibt noch FASTAVR.

Ich habe jedoch keine Erfahrung damit.

Gruss
Andreas

Autor: Norbert L. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist wohl auch ein AVR-Basic-Compiler: http://www.fastavr.com/

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei Bascom wurde wohl zugunsten des Speicherplatzes auf einen
Argumenten-Stack verzichtet, deshalb geht nix mit verschachtelten
Rechenoperationen. Man kann eben nicht alles haben.
Falls das in C geht, dann eben auf Kosten des Speichers - irgendwo muß
es ja hin.
Aber wo ist das Problem, eine Formel aufzusplitten ?

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

???
Ob jetzt der Compiler eine Formel aufsplittet oder der Anwender dürfte
für den erforderlichen Speicherplatz (auf dem Zielsystem) keine Rolle
spielen. Der Compiler muß halt etwas intelligenter sein.

Matthias

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.