Sida 1 av 1

Java + assembler = sant

Postat: 10 okt 2007, 21:25
av lord
Hejsan allesammans.

Så här ligger det till. Jag pluggar på högskolan, där jag bland annat läser en kurs som heter Introduktion till datavetenskap. I den kursen ingår att man ska lära sig assembler. För att göra det, använde vi en assembler simulator som heter Simpsim. Det finns dock ett "problem". SimpSim är bara till för windows. För mig är det inga problem, eftersom jag har wine, men det finns de i kursen som har mac osx, och för dem blir det svårare. Så jag tänkte helt enkelt koda en assembler simulator i java, eftersom den då skulle bli plattforms oberoende.
      Målet är att åtminstånde uppnå funktionaliteten i SimpSim (eller få ännu bättre funktionalitet). Dock har jag en ganska begränsad erfarenhet av assembler (ok, jag erkänner att jag är ny till java också, men jag har arbetat med C#, så jag har en ganska bra förståelse av språket), och skulle behöva några tutorials som börjar från den absoluta början. Så om ni kan länka mig till några sådana, skulle jag bli glad :).

Och om någon vill hjälpa till, så är det bara att säga till (notera att jag inte tänker låta någon annan göra jobbet åt mig, eftersom det är fult. Men jag skulle gärna sammarbeta lite med någon som har lite mer erfarenhet än jag på det här, fast ändå göra det mesta själv).

Ha det bra,
lord.

SV: Java + assembler = sant

Postat: 11 okt 2007, 09:23
av steqve
Är det en intel x86 du skall simulera?

SV: Java + assembler = sant

Postat: 11 okt 2007, 13:47
av lord
SimpSims assembler kod ser ut såhär (det traditionella "Hello world" demot):

Kod: Markera allt

                 load    R1,Text     ;the start of the string
                 load    R2,1        ;increase step
                 load    R0,0        ;string-terminator
NextChar: load    RF,[R1]     ;get character and print it on screen
                 addi    R1,R1,R2    ;increase address
                 jmpEQ   RF=R0,Ready ;when string-terminator, then ready
                 jmp     NextChar    ;next character
Ready:     halt

Text:        db      10
                db      "Hello world !!",10
                db      "    from the",10
                db      "  Simple Simulator",10
                db      0           ;string-terminator
Så jag tänkte mig något åt det hållet. Eftersom  det här projektet mest är inriktat på att skapa en plattforms oberoende version SimpSim (som mål, jag kan komma att göra något "bättre"), så vill jag inte skapa något som är alltför svårt att lära sig. Fast efter att ha tittat på intel x86, så visst. Det verkar vara ganska nice. Fast jag vill ändå skapa något som liknar SimpSim (vilket inte borde vara alltför svårt).