Mp3-spelare...

Berätta om dina pågående projekt.
klintan
Inlägg: 307
Blev medlem: 13 juni 2003, 01:59:05
Ort: Ekerö

Inlägg av klintan »

jag kommer nog skriva assembler iaf :S
Användarvisningsbild
karlstedt
EF Sponsor
Inlägg: 966
Blev medlem: 14 oktober 2003, 16:55:23
Ort: Lund
Kontakt:

Inlägg av karlstedt »

Citat från elfa:

"Högnivåspråk sparar tid. Man räknar med att det tar samma tid att programmera och avlusa en rad i ett högnivåspråk som en rad assemblerkod. Det gör det i storleksordningen 10 till 100 gånger effektivare att skriva även små program i högnivåspråk..."
Kent
Inlägg: 156
Blev medlem: 19 januari 2004, 10:48:05
Ort: Södra Dalarna
Kontakt:

Inlägg av Kent »

Men hur krångligt är det och hur svårt är det jämfört med assembler? Finns det någon logik i det?
Användarvisningsbild
Illuwatar
Inlägg: 2256
Blev medlem: 10 november 2003, 14:44:27
Skype: illuwatar70
Ort: Haninge
Kontakt:

Inlägg av Illuwatar »

Valet mellan högnivåspråk och assembler beror helt på vad man vill göra. Högnivå är oftast enklare att lära sig och man kan snabbare få till den funktion man vill ha. Nackdelen ligger i sämre kontroll på vad den faktiska koden på assemblernivå gör. Dessutom kan koden bli mindre effektiv jämfört med direktkodning (förutsatt att man verkligen behärskar assemblern). Kod som av tidskritiska själ måste fungera optimalt skriver man med fördel i assembler.

Fördelar högnivå:

* Lätt att lära sig, inte maskinunikt (förutom specialinstruktioner).
* Lätt att läsa, följa och sätta sig in i.
* Kortare utvecklingstid.

Nackdelar högnivå:

* Sämre kontroll på den faktiska koden (det blir assembler av kompilatorn).
* Koden kan bli mer minneskrävande.
* Svårare att beräkna cykeltider för rutiner.
* Bra, lättanvända kompilatorer är inte gratis.

Fördelar assembler:

* Är man bra så kan man göra mycket på liten plats.
* Man vet exakt vad som sker.
* Man har full kontroll ner på cykelnivå i programmets exekvering.
* Verktygen skänks bort av MCU-tillverkarna.

Nackdelar assembler:

* Svårt att lära sig (jämfört med högnivå).
* Processorunikt - varje MCU-familj har sin egen assembler.
* Svårläst source (kommentarer är ett måste).
* Längre utvecklingstid.

Detta är i alla fall så jag ser på detta - rätt verktyg vid rätt tillfälle.
klintan
Inlägg: 307
Blev medlem: 13 juni 2003, 01:59:05
Ort: Ekerö

Inlägg av klintan »

Med tanke på de här utläggningar känns de som jag borde tänka om och satsa på C. Nackdelen me kompilatorer. finns inga gratis.
Användarvisningsbild
strombom
Inlägg: 3305
Blev medlem: 27 maj 2003, 10:50:20
Ort: Västra Götaland
Kontakt:

Inlägg av strombom »

Till AVR finns ju GCC (WinAVR) som är gratis.
Användarvisningsbild
mrmike
Inlägg: 301
Blev medlem: 29 oktober 2003, 20:40:12

Inlägg av mrmike »

Finns till kompilatorer till PIC osså. Gratis sådana alltså.
http://www.gnupic.org/
Kent
Inlägg: 156
Blev medlem: 19 januari 2004, 10:48:05
Ort: Södra Dalarna
Kontakt:

Inlägg av Kent »

Men är det dumt att börja med assembler och sen gå över eller lära sig c. Det kanske rör ihop det hela. Eller är det bara en fördel att lära sig assembler bra.
Användarvisningsbild
karlstedt
EF Sponsor
Inlägg: 966
Blev medlem: 14 oktober 2003, 16:55:23
Ort: Lund
Kontakt:

Inlägg av karlstedt »

Aldrig fel att lära sig assembler!
danei
EF Sponsor
Inlägg: 26410
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Inlägg av danei »

Den enda risk du tar är att fatta vad C programer igentilgen gör
gvs
EF Sponsor
Inlägg: 1688
Blev medlem: 18 oktober 2003, 14:20:34
Ort: Göteborg
Kontakt:

Inlägg av gvs »

Jag ser det helt tvärt om!
Tycker att Assembler är busenkelt jämfört med C, C++ eller JAVA trotts att jag har läst ca 15 Poäng högnivå och bara 2 Poäng Assembler. Högnivå fattar man ju inget av!
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Inlägg av Melker »

Ja, assambler är relativt enkelt att lära sig, men när det kommer till att göra större projekt så brukar iaf jag bli rätt less på allt som måste hållas i huvudet när man skriver assambler och allt sparande fram och tillbaks till minnet. Skriver man i något högnivåspråk så slipper man tänka på sånnt, sköter kompilatorn åt en.
henkebenke
Inlägg: 515
Blev medlem: 31 maj 2003, 10:42:37
Ort: Helsingborg

Inlägg av henkebenke »

gvs skrev:Jag ser det helt tvärt om!
Tycker att Assembler är busenkelt jämfört med C, C++ eller JAVA trotts att jag har läst ca 15 Poäng högnivå och bara 2 Poäng Assembler. Högnivå fattar man ju inget av!
Klart att assembler är enklare men därmed också mindre kraftfullt.

Att gå är enkelt. Att köra bil är svårare men mer effektivt. Kraftfullare verktyg kräver mer av användaren men rätt använda är de mångfaldigt mer effektiva.
Användarvisningsbild
Illuwatar
Inlägg: 2256
Blev medlem: 10 november 2003, 14:44:27
Skype: illuwatar70
Ort: Haninge
Kontakt:

Inlägg av Illuwatar »

Att assembler skulle vara mindre kraftfullt än högnivåspråk håller jag inte med om. Om så vore fallet skulle en kompilator inte funka så bra - resultatet ut från dessa är nämligen assembler... ;)

Däremot är det oftast lättare att bygga upp programlogik med många kontrollsatser (for, if - else, case) med högnivåspråk. Att göra sådant i assembler kräver att man har tungan rätt i mun (praktisk erfarenhet från mitt Nixie-bygge där det största jobbet är att koda alla kontroller så ogiltiga värden på tid och datum inte kan matas in).
Användarvisningsbild
RDX*
EF Sponsor
Inlägg: 1646
Blev medlem: 28 maj 2003, 22:52:04
Ort: Skåne - Lund

Inlägg av RDX* »

Jag säger som så att man behöver båda. Om man bara lär dig högnivåspråk så fattar man inte vad det är man egentligen gör. Man får oftast problem om man är beroende på hårdvaran. Om man bara kan skriva assembler så mister man den smidigheten man har i högnivåspråk.

..så kontentan är lär dig båda :!: :wink:
Skriv svar