Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: Assembly: Konekielellä ohjelman teko

Iltanen [21.05.2008 11:57:52]

#

Pidän kovasti konekielisestä ohjelmoinnista mutta miten voin sitä nykykoneella tehdä? Lähin mihin olen päässyt on joku FASMilla assemblyn kirjoittaminen mutta sehän nyt on suurin piirtein yhtä kaukana konekielestä kuin COBOL.

Miten voisin ohjelmoida vanhaan kunnon tapaan eli kirjoittaa tavuja peräkkäin ja suorittaa ohjelmani?

Metabolix [21.05.2008 12:03:24]

#

Heksaeditorilla. Voit harkita, haluatko käyttää alustana DOSia, jolloin kirjoitat suoraan ajettavia COM-tiedostoja, vai ehkä jotain emulaattoria (kuten QEMU tai BOCHS), jolloin voit kirjoittaa ohjelman suoraan levykkeelle ja ajaa sen käyttöjärjestelmänä. Jälkimmäisessä tapauksessa täytyy muistaa, että emulaattori lataa levyltä käynnistyksen yhteydessä vain ensimmäisen sektorin (512 tavua), loput täytyy ladata itse. On myös mahdollista asentaa levykkeelle vaikkapa GRUB ja kirjoittaa ohjelmansa osaksi validia kerneliä, jolloin ohjelman lataaminen käy helpommin.

Iltanen [21.05.2008 12:26:02]

#

Kiitoksia, juu sellaista ratkaisua etsin, jossa mahdollisimman vähän (ei yhtään) turvaudutaan mihinkään muuhun softaan esim. DOSiin.

Iltanen [21.05.2008 12:27:34]

#

Siis en halua ainakaan suorittaa sitä minkään käyttöjärjestelmän alla

Dude [21.05.2008 17:37:33]

#

Fasmilla saa tehtyä ohjelmia jotka eivät tartte käyttistä.

Metabolix [21.05.2008 17:52:13]

#

Siinä tapauksessa voit kirjoitella suoraan levykkeelle. En osaa tähän hätään sanoa, kuinka Windowsissa pitäisi toimia, jos oikeaa levykettä haluaa käyttää, mutta QEMUn asentaminen ja levykuvan käyttäminen ovat kuitenkin parempia vaihtoehtoja, ettei tarvitse jatkuvasti käynnistellä konetta uudestaan. Heksaeditoreja löytyy hakukoneen avulla, samoin QEMU, ja käyttö ei ole järin vaikeaa. Oppaita aiheesta löytynee myös.

QEMU-virtuaalikoneen käynnistys levykkeeltä levyke.img, 2 megaa muistia:
qemu -fda levyke.img -boot a -m 2
Bochs antaa paljon tarkemman kontrollin (ja hitaamman koneen), jos QEMU tuntuu liian yksinkertaiselta ja tehokkaalta.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta