Nybörjarfrågor i Microprocessor teknik.

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
saxofon
Inlägg: 160
Blev medlem: 2 januari 2008, 11:32:20
Ort: Bromma

Inlägg av saxofon »

Inline assembler? hmmm nu ramlar vi genast in på kod struktur... :-)

Föredrar å det starkaste att inte ha inline assembler.
Bättre är isåfall att göra C-koden i en C-fil och assembler koden i en assembler-fil, låta dem bli kompilerade var för sig och sedan länka ihop dem till ett slutresultat.

Varför? Jo genom inline assembler har man genast gjort sin C-kod oportabel gentemot olika typer av *toolchains* (alltså fortfarande bygga för samma cpu men med tex någon köpe-kaka istället för gcc)

Assembler skiljer sig inte bara från cpu-typ till cpu-typ utan alltsom oftast även toolchain till toolchain och asm("blablabla") är ett utmärkt sätt att måla in sig i ett hörn. :-)

Håller dock med Nerre i sak om att även när man programmerar i högnivå språk (såsom C) så är det mycket användbart att förstå assememblern för cpu'n. Frågan är iofs om det är det första man behöver lära sig. Man kanske kan komma ganska långt som nybörjare med att använda ett färdigt exempel projekt, modifiera lätt för allehanda saker, och vips en dag finner man sig själva läsa om hur man ska autoincrementera registret som innehåller pekaren till ursprungsdata samtidigt som man kopierar till en ny address.
Wodda
Inlägg: 19
Blev medlem: 2 december 2008, 10:23:38
Ort: Ösmo /Södertörn

Inlägg av Wodda »

:shock: :D Jaha....då blir det en bok om C också........... :happy:
Jag har glömt och tacka väldigt många men tack för alla inlägg såhär långt. Vill samtidigt ge min syn på saken, jag tog och gick igenom tråden:

Vilket land bor ni i?????????

Avbrottsvaktorer, mikrokod, kompilator, CC5X, lst-filen, rot-instruktion, debuggar, profilerar, MPLAB, y/32 är enbart några högershift för mig med assembler, RTFM, Arduino, Butterfly, MOV, IN och OUT, ARM, PPC, SH, x86, MIPS, avr-gcc, grindar, register, MPASM, open-source-C-kompilator (gcc för avr), inkl debugger (gdb), interrupts, inline assembler, C-koden i en C-fil, assembler koden i en assembler-fil, toolchains, köpe-kaka istället för gcc, cpu-typ, :rofl :wacko: :wacko: :wacko: :wacko:

Längtar lite tills jag fattar vad ni säger, jag undrar om ni tänker på hur långt detta snack är ifrån SVENSKA.

Men jag kommer så vänta bara........[/b]
Mindmapper
Inlägg: 7202
Blev medlem: 31 augusti 2006, 16:42:43
Ort: Jamtland

Inlägg av Mindmapper »

Välkommen in i cybern :D :tomte:
saxofon
Inlägg: 160
Blev medlem: 2 januari 2008, 11:32:20
Ort: Bromma

Inlägg av saxofon »

Wodda, helt rätt i det du säger! Så lätt det är att använda sin yrkesjargong som om det vore allmän kunskap. Tänkte inte på det... :oops:
Jag är ju en simpel ingenjör och inte högutbildad pedagog... men...
Kanske ett råd kan vara:

1. Ta en gammal PC och lär dig installera en linux (tex fedora, ubuntu el liknande)
Titta på tex fedoraproject.org för vidare info om detta.

2. Nu kan du börja utforska programmerarnas värld genom att skriva enkla program för att tex skriva ut text i ett fönster. (mitt förslag är C-programmering...)
Fundera inte så mycket på grafik än så länge, vi ska ju snart ändå förflytta oss till en microcontroller (som ju var det du ville pyssla med från början :-) ) och då är sådant bara onödigt lyx i början.

Det här kommer innebära att du får förståelse för vad en källkodsfil är (mitt drabbel om C kod i c fil och assembler kod i en assembler fil), du kommer lära dig vad en Makefile är vilket är väldigt användbart. Mycket av grunderna i programmering kan inhämtas här.

Sedan när du tycker detta med att skriva ut tecken, läsa in tecken, koda lite algorithmer (tex för att räkna ut vinklarna i en triangel baserat på det som användaren matat in i början av programmet eller nåt sådant enkelt) är gammal skåpmat och du vill pyssla med det här roliga, småttiga som kallas microcontroller så skaffar du dig en utvecklingsplatform för tex AVR el PIC och fortsätter med det.
Skriv svar