| Uutiset | Koodikirjasto | Wiki | Keskustelut | FAQ | Info |
Hello world 16-bittisille x86 ms-dossilleEntropia 16.09.03 11:33 Käytä nasmia (http://nasm.sourceforge.net)
org 100h ; .com-ohjelma section .text start: mov dx, teksti ; Siirretään tekstin osoite dx-rekisteriin mov ah, 9h ; Stringin ulostus alifunkkari int 21h ; Luodaan keskeytys 21h mov ax, 4C00h ; Poistumis alifunktio int 21h ; Luodaan keskeytys 21h section .data teksti db "Hello world! pikkumyylle terkkuja.$" cooz 13:05 16.9.03 Näinhän se toimii. Kommenteista voisin sen verran sanoa, että eiköhän sinne dx-rekisteriin kumminkin siirretä sen teksin osoite eikä koko tekstiä, saa aika hyvin pakata että 16-bittiseen rekisteriin toista kymmentä merkkiä saa ;) Entropia 13:49 16.9.03 Aivan kyllä juu :) Nyt on virhe korjattu, vielä kun varmistuisi siitä onko se "osoite" offsetti niin kaikki olisi kondiksessa... thefox 16:47 17.9.03 Siistiä koodia, vinkin luonteesta johtuen en voi kuitenkaan taipua 2:sta suurempaan ääneen ;-) "vielä kun varmistuisi siitä onko se "osoite" offsetti niin kaikki olisi kondiksessa..." real-moden segmentoidussa arkkitehtuurissa muistiosoite koostuu segmentistä ja offsetista näin: osoite = segment*16+offset "Exe"lent 14:46 23.9.03 mist assemblyn saa? empty 17:52 23.9.03 "Exe"lent: Tietty Assemblyiltä, tai sit voit ladata W4R3ZZZ serveriltä... empty 17:54 23.9.03 oikeasti yhden parhaista ilmaisista assemblereista saa nasm.sourceforge.net:stä.. kurz 19:19 12.1.04 Mihin tota section .data tarvitaan, vai onko se vain joku "nimitys" tj. Toimii ilmankin appina 21:49 11.1.05 Vaatiiko tämä assembly ohjelma dossin alleen vai toimiiko tuo ilman minkäänlaista käyttistä. Esim. voisiko tuollaista koodipätkää käyttää omassa käyttiksessä tulostaakseen jonkin tekstin. Jake-san 16:34 2.2.05 Eiköhän prosessorikomennot ole käyttöjärjestelmästä riippumattomia Maniace 21:15 29.5.05 Njoo mutta tuossa käytetään DOS-keskeytyksiä, tee sama BIOS-keskeytyksillä niin toimii. Black Anathema 23:57 24.8.07 kurz kirjoitti: Mihin tota section .data tarvitaan, vai onko se vain joku "nimitys" tj. Toimii ilmankin Eikö se luo data segmentin erikseen koodi tai teksti segmentistä?? |
![]() Haku
|