montør eller C???

J

jetset

Guest
Hvilken en af disse sprog, du foretrækker at skrive din kode til microcontrollere, og hvorfor?

 
Dybest set ønsker jeg at skrive i C for microcontrollere, fordi det er næsten altid bærbare.Også det er nemmere at forstå end samling sprog.
Selvfølgelig, hvis du vil have dine programmer til at have bestemt tid, så du kan bruge forsamling.I samling, kan du beregne den nødvendige tid til antallet af instruktioner.For C-det afhænger af compiler og dens indstillinger.
For mig, skriver jeg bilister i forsamlingen, og ansøgninger om C.

Hilsen.

 
Hvis du snakker om mikro-controller ...
Forsamlingen altid være mit første valg.C somtime bare at skjule at en stor del af faktum fra brugeren.

 
Det afhænger af microcontroller og udviklingsværktøj du vil bruge.

4-bit MCU:
måske kun assembler er avaiable

8-bit MCU:

Til 6.502 eller PIC, jeg foretrækker at bruge forsamling, C compilere selv er til rådighed.

For 8051, foretrækker jeg bruger C. Men jeg tror, en god forståelse for forsamlingen sprog og forholdet mellem C og det vil hjælpe en skrive en kompakt kode.

16-bit eller højere MCU:
C, selv C , kan være et bedre valg.

 
Hej
For PIC / AVR selv om der er C / Basic kompilere (nogle af dem meget anstændigt) kan du gå til forsamlingen.Det giver bedre kontrol med dine programmer.

Jeg mener også, at det afhænger af antallet af programmører, der arbejder på UC.For mere end 2 medlemmer C er et must.(Brug forsamling kun til kritiske sektioner)

BRM

 
hvis u bruger assembler u blive en meget kompakt kode.
men
men
og men

meget svært at debug
meget svært at forstå koden selv som forfatter
meget litil genbrug

u skal bruge Keil.
det giver ua meget kompakt kode sige 1,05 gange større end den ASM kode.
Hock

 
Salam,

Jeg foretrækker C (med at skrive en kritisk rutiner i samling)

C, fordi

1 - Portable (med få redigerer du kan køre det samme program i en anden familie)

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Smile" border="0" />2 - Let at forstå

Sphinx

 
Når du kender nogle tips og tricks, C er bedre end forsamling.
for eksempel
i stedet for y = y * 2,25; hjælp y = (y <<1) (y>> 2);

Også, når jeg udskrift mit program, det tager ca 9-10 sider i C. Men i forsamlingen, det tager langt flere sider.Af denne grund, da jeg ønsker at finde fejl i mit program, det er nemmere i C.

 
otuzsubat skrev:

Også, når jeg udskrift mit program, det tager ca 9-10 sider i C. Men i forsamlingen, det tager langt flere sider.
Af denne grund, da jeg ønsker at finde fejl i mit program, det er nemmere i C.
 
Jeg plejer at skrive i forsamlingen med henblik på grund af større fleksibilitet og kompakte struktur.Men når det fucntions af hver samling modul etableret og testet ordentligt, jeg kompilere det som bibliotek og vha. c sprog grænseflade til at indsamle og link efter at der for massiv produktudvikling.

 
Hej cawan.

Sikker.Jeg er enig.

Jeg arbejder med Microchips PIC.Det er grunden til at jeg købte C18 og bruge det som min sekundære værktøj.

 
HEJ

Hvis u bruger C for programmering, vil det sikkert tage mindre tid til kodning, men debugging programmet vil være et stort problem.Pr min erfaring ...timing beregninger er meget let i montage end i C. Hvis du er nybegynder, vil jeg foreslå u starter med samling sprog

 
Jeg har været programmering flere micros som PIC, C51, M16C og også DSP.Med de faktiske DSP C / C compiler jeg selv fik mindre kode end med montage sprog.Dette skyldes, at meget god compiler optimeringer og være opmærksom på konstant eller flygtige variabler.

Min assembler rutiner var parametrized til multi brug formål.Dette gør det muligt at genbruge den kode, hvis du fik f.eks adskillige lig serielle porte på en enhed, og disse kun afviger i adressen.Når inlineing disse funktioner i C compileren kan analysere hvilke dele af funktionen opkald har konstante værdier og kan beregne alle faste adresser eller værdier på kompileringen.

Da jeg bemærker det, jeg skriver meget mere i C. Kun når virkelig nescessary, nogle assembler funktioner.Dette er begrænset til meget kompliceret eller helt ydeevne kritiske dele.

Men, kan dette kun opnås med en god compiler.

aOxOmOx

 
Jeg har arbejdet med mikroer, blot programmering i assembler.Nogle af mine venner siger, at C er bedre og kram, men jeg kan ikke lide tanken om programmering et lavt niveau enhed med et højt niveau sprog.Måske svært afhænger af den person, fordi jeg tror, at det er nemmere, hvis du skriver din kode i assembler cos du kan beregne alle de timming og kram.Nu er jeg arbejder med DSP's og jeg finde nogle eksempler med blandet C og assembler, men jeg stadig gerne skrive lidt assembler.

 
Jeg tror, vi kan skrive i C for de fleste ansøgning, hvis vi har tilstrækkelige ressourcer til RTC.Eller, vi også kan blandes i C-og forsamlingsfriheden sprog sammen.Nå, jeg tror for komplekse ansøgning, C er bedre på grund af timingen tvang.Hvis vi kan afslutte et arbejde hurtigt, hvorfor ikke?Og kan vi fortsætte med andre job.Hvis du ikke så god i programmering, du stadig gøre en mindre effektivitet orgram selv du bruger samling ........

Alt er økonomisk, timing er vigtig, ikke den bedste systemer!

 
Jeg er enig med Aoxomox.Nogle C compilere har fremragende Optimizers.Men nogle er temmelig dårlige.Så jeg prøve at oversætte nogle C-kode, og fortælle compiler til output af en assembler-fil, og derefter vurdere kvaliteten for mig selv.

 
Har programmerings sprog, især C eller forsamling, gøre nogen forskel i udførelsen af microcontroller?

Tak ...

Emner mereged,!!!

Altid søge EDAboard før du starter et nyt emne!
 
Dette har været drøftet her ofte, se for eksempel her:
http://www.edaboard.com/viewtopic.php?t=86778&highlight=assembler c

venlig hilsen

 
bjerkely skrev:

Har programmerings sprog, især C eller forsamling, gøre nogen forskel i udførelsen af microcontroller?Tak ...
 
Forsamling, sin den bedste måde at gøre Perfect værker, compilere er et meget nyttigt værktøj, men de har alle pro's og CONT's, så er det bare huske, at hvis du ikke ved, hvordan man laver et program (dårlig sintax's mv.) vil du have problemer med ASM Også ASM itsnt magi, og skal du eksperimentere for at opnå den bedste (hurtigere, mindre, osv.) program (hex).
Hilsen

 

Welcome to EDABoard.com

Sponsor

Back
Top