Forum: Mikrocontroller und Digitale Elektronik HI-TECH Compiler für Pic16


von Al (Gast)


Lesenswert?

Hallo zusammen,

kann mir jemand sagen ob der HI-TECH compiler für die PIC16 Reihe eine 
ähnliche Codemenge wie der Assembler ausgibt?

Gruß

von Franko P. (sgssn)


Lesenswert?

Servus Al

was meinst du mit "Menge" ? Die Codegröße ? Die dürfte wohl eher größer 
als beim Assembler sein.

Gruß
gerhard

von Al (Gast)


Lesenswert?

ja genau die Codegröße,
größer ist wohl klar, nur ein Kollege hat mir mal erzählt dass maximal 
10% größer ist als mit Assembler, ob das stimmt?

Demnächst habe ich einen neuen Projekt der auf Pic16 basiert, und 
überlege mir ob ich alles mit Asm oder eher mit C codiere!

von Loonix (Gast)


Lesenswert?

Al schrieb:
> größer ist wohl klar, nur ein Kollege hat mir mal erzählt dass maximal
> 10% größer ist als mit Assembler, ob das stimmt?

Er hat nicht zufällig mit den Worten "Ein guter Programmierer..." 
begonnen? ;)

Die Aussage mit den 10% ist genauso überflüssig wie fehlerhaft. Zunächst 
einmal müsste man sich an bestimmte Paradigmen halten, um überhaupt 
einen Vergleich ziehen zu können. Dann kommt noch der Optimizer auf der 
C-Seite hinzu - wozu würde man den wohl noch benötigen wenn ohnehin nur 
10% rausgeholt werden könnten?

von Chris (Gast)


Lesenswert?

Ich nehme an, es handelt sich um die Pic16f..., also Pic14 serie.
Da ist ein Overhead von 20-60% vorhanden, bei einem guten Programmierer,
welcher den Compiler kennt. Dies bei einem komplexen Projekt und wo im
C-Code auch asm Codesequenzen vorhanden sind.

von Al (Gast)


Lesenswert?

@Chris

Vielen Dank für die Info.

von Lehrmann M. (ubimbo)


Lesenswert?

Chris schrieb:
> Ich nehme an, es handelt sich um die Pic16f..., also Pic14 serie.

Wenn dann ist es ein 14-Bit Kern. Im Übrigen sind auch einige PIC12F 
14-Bit Typen. Eine PIC14 Serie gab es nie.

Chris schrieb:
> Da ist ein Overhead von 20-60% vorhanden, bei einem guten Programmierer,
> welcher den Compiler kennt.

Das ist eine Pauschalaussage und somit einfach nur falsch. Es ist 
absolut Code- und Compilerabhängig.

Chris schrieb:
> Dies bei einem komplexen Projekt und wo im
> C-Code auch asm Codesequenzen vorhanden sind.

In einem guten C-Code kommt kein Inline-Assembler vor weil eigentlich 
jeder Programmierer weiss, dass das im Endeffekt den resultierenden 
Assemblercode nur aubauscht. Wer das noch nicht tut sollte sich die 
passende *.asm zu einem reinen Inline-Assembler-Code anschauen. 
Stichwort Parameterübergabe und der ganze Zirkus ...

von holger (Gast)


Lesenswert?

>Eine PIC14 Serie gab es nie.

Aber einen PIC14000;)

von Lehrmann M. (ubimbo)


Lesenswert?

holger schrieb:
>>Eine PIC14 Serie gab es nie.
>
> Aber einen PIC14000;)
Da ist was wahres dran xD
Hat mal jemand mit dem gearbeitet?

von Dieter W. (dds5)


Lesenswert?

Lehrmann Michael schrieb:
> holger schrieb:
>>>Eine PIC14 Serie gab es nie.
>>
>> Aber einen PIC14000;)
> Da ist was wahres dran xD
> Hat mal jemand mit dem gearbeitet?

yup, ich hab auch noch das Modul für den ICE2000 und ein paar 14000 mit 
Fenster. Schade, dass es nix neueres mit dem Dual-Slope A/D Wandler 
gibt.

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.