Avatar billede Slettet bruger
03. november 2008 - 20:50 Der er 13 kommentarer og
1 løsning

Assembler: Hvordan kommer jeg i gang?

Hej eksperter,

Jeg vil gerne prøve at rode lidt med assembler, men hvordan kommer jeg i gang? Hvad skal jeg vide? Hvad skal jeg bruge? Er der en samling tutorials, jeg kan følge?
Avatar billede arne_v Ekspert
03. november 2008 - 20:59 #1
Bedst en bog. Næstbedst en god tutorial.

En specifik anbefaling vil afhænge af til hvilken platform !
Avatar billede Slettet bruger
03. november 2008 - 21:07 #2
Se, det er en af de ting, jeg gerne vil vide :) Hvad er en platform?
Avatar billede arne_v Ekspert
03. november 2008 - 21:18 #3
CPU arkitektur og styre system.

Forskellige CPU arkitekturer har forskellige instruktions sæt og dermed vidt forskellig
assembler.

Samme CPU arkitektur med forskellige styre systemer kan godt have nogle forskelle.
Avatar billede Slettet bruger
03. november 2008 - 21:25 #4
Så man skriver en enkelt kodestump til en enkelt maskine?
Avatar billede Slettet bruger
03. november 2008 - 21:30 #5
Og min CPU-type er Intel Core 2 Duo T8300 @ 2,40 GHz.
Avatar billede arne_v Ekspert
03. november 2008 - 21:40 #6
Ja - assembler er CPU specifik.

Er det til PC skal du kigge på x86 assembler.
Avatar billede arne_v Ekspert
03. november 2008 - 21:40 #7
Prøv og google på:
  tutorial x86 assembler
Avatar billede baloose Nybegynder
03. november 2008 - 23:27 #8
Vis det er fordi du vil til at lære at programmere, vil jeg ikke anbefale dig at starte med Assembler.
Assembler er næsten heller ikke brugt til PC idag (vis det var til PC du ville skrive det) det er som regel kun til mikrokontrollere det bruges nu, og der er det også sjældent, det er nødvendigt. Mange af de ting der før i tiden blev skrevet i Assembler bliver idag skrevet i C da de compilere der findes er så gode at det stort set ikke kan betale sig at skrive programmet i Assembler, med mindre det er en stump kode der skal være ekstremt optimeret til den specifikke hardware.

Men et sted at starte ville nok være Wikipedia så du kan få et bedre overblik over hvad Assembler er for noget --> http://da.wikipedia.org/wiki/Assemblersprog
Avatar billede Slettet bruger
04. november 2008 - 08:28 #9
baloose, tak, men jeg skriver allerede en del andre sprog :) Sagen er den, at jeg nu har to årsager til at søge til lavniveausprog:
1) Effektiverede beregninger påkrævede til store matematiske opgaver
2) Anvendelse i netop mikrocontrollere i forbindelse med elektronikteknikfaget på HTX
Avatar billede arne_v Ekspert
04. november 2008 - 13:05 #10
re 1)

Den er jeg skeptisk overfor.

Sats på et fornuftigt library (formentligt i Fortran eller C).

re 2)

Jep. Men så skal du vel lære assembler til den mikrocontroller !
Avatar billede intel4004 Novice
04. november 2008 - 13:29 #11
Jeg vil nok også mene at du bør lære assembler specifikt til den mikrocontroller du arbejder med. Jeg har selv erfaring med microcontrollere og tit understøtter disse små computere et mere reduceret sæt af instruktioner. Dette er en kontrast til x86 arkitekturen som også kan blive meget indviklet når det kommer til hukommelses-addressering (protected-mode).

Det er vel egentligt sandt nok at assembler-kode nok ikke er brugt i moderne software. Ihvertfald ikke før den egentlige software er fuldstændig dokumenteret, testet og i produktion. På dette stadie kunne man måske vælge at optimere visse steder.

Tit er det meget god ide at få lidt assembler-erfaring på studiet, hvis kun for at få en mere grundlæggende forståelse for hvordan en CPU fungerer. Held og lykke med det.

Mvh Intel4004
Avatar billede Slettet bruger
04. november 2008 - 15:08 #12
Okaj, forklaring følger :)
Muligvis vil jeg droppe at anvende Assambler-programmering til PC-platforme, da Arne nok har ret i, at sprog på højere niveauer kan klare jobbet lige så godt.
Mht. mikrocontrollere ved jeg godt, at jeg skal arbejde med et andet instruktionssæt - men undervisningen i programmering af disse controllere er startet netop i dag, hvorfor jeg gerne ville vide lidt om Assambler inden. Dog lader der til at være *MEGET* stor forskel på de to platforme (vi anvender den klassiske "uddannelseschip", som jeg desværre har glemt navnet på - noget med 17F, formentligt).
Uanset hvad vil jeg nu gennemgå resten af den tutorial jeg fandt til x86 og derefter fokusere på chippen til skolen. Tak for hjælpen og smid I bare et par svar!
Avatar billede arne_v Ekspert
04. november 2008 - 15:29 #13
svar
Avatar billede Slettet bruger
05. november 2008 - 21:47 #14
Så må I andre klare jer uden points.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester