Forum: Mikrocontroller und Digitale Elektronik gnu compiler


von sumsum (Gast)


Lesenswert?

hallo,

ich habe keil µVision3 installiert und habe nun die wahl den Keil C
Compiler zu verwenden oder den GNU C Compiler. Welcher hat Vorteile?
welcher ist "besser"?

grüßle
danke im voraus,
sumsum

von Mathias (Gast)


Lesenswert?

nimm den keil der ist besser? aber wie die wahl? der gnu ist umsonst der
keil alles andere als dass, außer du beschränkst dich auf die demo
versionen

von sumsum (Gast)


Lesenswert?

der keil war bei nem evaluationkit dabei..der war also auch sozusagen im
paket umsonst...
es waren beide compiler dabei. kann wie gasagt beide verwenden.

grüßle
sumsum

von Mathias (Gast)


Lesenswert?

jaja aber sicher nicht die vollversion von keil!

von Hegy (Gast)


Lesenswert?

Die Vollvesion von Keil-C ist schweineteuer, ein paar tausender meine
ich. Dazu noch die Frage, welcher Prozessor? Wenn's auf der 8051er
Schiene langgeht, dann wuerde ich den Keil nehmen, weil der so
dermassen  optimiert, da wundert man sich. Z.B. optimiert der gcc das
nicht raus:
1
for(i=0; i<65000; i++)
2
  volatile asm("nop");

Der Keil-C dagegen schmeisst das raus, selbst probiert. Auch soll der
Code, den der Keil erzeugt (8051er) sehr nahe an Assembler-pur
ranreichen, also eigentlich genausogut, wie alles in ASM geschrieben.
Soll.....

von Mathias (Gast)


Lesenswert?

da kann ich dir nur rechtgeben hegy .. habe die vollversion von keil und
bis jetzt noch keinen besseren compiler gesehen

von thkais (Gast)


Lesenswert?

@Hegy: Der GCC optimiert leere Schleifen raus. Den Konstrukt mit "NOP"
benutzt man, um genau das zu verhindern. Wie sonst soll man
Verzögerungsschleifen programmieren, wenn alle herausoptimiert werden?
Ich sehe gute Optimierungsmöglichkeiten ganz woanders...

von Fabian Scheler (Gast)


Lesenswert?

@Hegy: natürlich optimiert der GCC das nicht raus, mit dem "volatile"
sagts du dem GCC ja explizit, dass er es drin lassen soll

von Mathias (Gast)


Lesenswert?

@ thkais: am besten gar keine verzögerungsschleifen programmieren ;-)

... zuwas gibt es denn softwaretimer?

von sumsum (Gast)


Lesenswert?

@hegy: danke für deine antwort.zu meinem prozessor: es ist ein LPC2138,
also ARM7. also macht er durch das optimieren auch meinen hex code
kleiner? habe ich das richtig verstanden?

@mathias: für meine anwendungen reicht auch die demoversion...will
generell außer kosten den unterschied wissen.


grüßle
sabrina

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.