Gå til innhold

Anbefalte innlegg

Hei folkens!

Har tenkt en stund på å begynne å leke meg litt med AVR, og lurer derfor på hvilke fordeler/ulemper det er å programmere i C eller Assembly (hvis man sammenligner de to språkene).

Kan nevne at jeg har programmert i C++ i ca 3 år og føler meg stødig i språket, så C-syntaks skulle ikke være noe problem.

 

Når det gjelder Assembly, så har jeg ikke vært innom det i det hele tatt.

Hvilke fordeler ville det gitt meg om jeg skulle programmere en AVR microchip i Assembly fremfor C?

Er det verdt det å sette seg inn i et helt nytt språk (som det i dette tilfellet er for meg)? :hmm:

 

På forhånd takk! ;)

Lenke til kommentar
Videoannonse
Annonse

Fordel med C: Enkelt og du kan med få linjer få til det samme som med veldig mange linjer i Assembly. Det er også enklere å forstå C-syntaks.

Fordel med Assembly: Kan kanskje få bedre ytelse enn med C (avhenger jo av kompilator til C), og noen maskininstruksjoner kan også bare være tilgjengelige fra Assembly.

 

Nå kjenner ikke jeg til AVR microchips spesielt, så dette blir på generelt grunnlag ved programmering av uC/uP-er.

Lenke til kommentar

Jeg har programmert en del på AVR-brikker, jeg har kun brukt asm, grunnen er ikke noe mer enn at jeg ikke har gidda å sette meg inn i C.

Men jeg ser jo at de fleste bruker C, og at det er mye enklere, man har jo også inline-asm slik at man kan tilføye en instruksjon midt i C koden.

Selv har jeg skreve litt C på PC, så jeg vurderer om jeg skal sette meg inn i C il avr også.

 

Bare spør om du ønsker noe hjelp med asm :)

Lenke til kommentar

Takktakk :)

 

Sitter nå og leser litt på begge språkene, men hovedsaklig C fortsatt.

Var visst ikke så alt for vanskelig å forstå det helt grunnleggende Assembly for AVR som jeg trodde, dog jeg synes likevel C er litt mer praktisk på grunn av, som Thorsen skrev; færre linjer kode.

Lenke til kommentar

Tja, jeg vet ikke hvordan det er hvis man skal porte over til PIC eller andre kontrollere, men så lenge koden bare skal portes over til en annen AVR-brikke, så er det null stress å gjøre dette med assembly, det eneste man egentlig man trenger å passe på er at man endrer porter og definisjonsfilen, instruksjonene er de samme.

Jeg har gjort det selv et par ganger hvis jeg trenger større brikker, eller finner ut at jeg ikke trenger så stor brikke.

Lenke til kommentar
Tja, jeg vet ikke hvordan det er hvis man skal porte over til PIC eller andre kontrollere, men så lenge koden bare skal portes over til en annen AVR-brikke, så er det null stress å gjøre dette med assembly, det eneste man egentlig man trenger å passe på er at man endrer porter og definisjonsfilen, instruksjonene er de samme.

Jeg har gjort det selv et par ganger hvis jeg trenger større brikker, eller finner ut at jeg ikke trenger så stor brikke.

 

Ja snakker selvfølgelig om porting fra en familie til en annen.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...