Assemblerprogrammering på hjemmemaskinen

Om du har en hjemmemaskin med en x86-prosessor (dvs en vanlig PC med Intel- eller AMD-prosessor), skal du kunne skrive og kjøre programmer i C og x86-assembler. (I tillegg kan du selvfølgelig logge deg inn på en Ifi-maskin (f eks login.ifi.uio.no) over nettet og kompilere/assemblere og kjøre programmene der.)

Oppsett for Linux

I Linux skal alt være klart; bare bruk kommandoene emacs for redigering og gcc for kompilering/assemblering.

Oppsett for Windows

Under Windows trenger du Emacs for å redigere programkoden og CygWin for å kunne kompilere og assemblere den. Begge finnes på Ifi-CDen.

Spesielt

Gcc i CygWin bruker en litt annen intern notasjon for navn enn gcc på Ifis maskiner: Når vi i C skriver
extern int myfunc (...);
er det interne navnet _myfunc (med en undertrekning først). Dette må vi ta hensyn til når vi skriver assemblerkode. Det beste er da å bruke begge navnene i assemblerkoden; da fungerer koden både under CygWin og under Linux på Ifis maskiner. Skriv altså:
.globl   myfunc, _myfunc
myfunc:
_myfunc:
«koden til funksjonen»