Reputation: 8461
I've read that learning a low level language can help writing higher level languages (although not essential).
However, I don't know how to get set up.
If some one said to me, "I want to learn VB.NET or C#.NET, how do I do it?" I would reply with: Get a PC with Windows OS, download .NET framework, download Visual Studio and here is a 'hello world' tutorial.
I have exactly the same question, but with an assembler language. I appreciate it may be different for each language, but I'm not precious about which language you choose to explain.
The reason for this, is I can run code natively on my machine but I get the feeling assembler is more about hardware and does that require an emulator or does it have to be done in live (where I need a piece of hardware to work on).
Upvotes: 2
Views: 806
Reputation: 7141
A recent option you have is to buy a Raspberry Pi and follow this tutorial: http://www.cl.cam.ac.uk/freshers/raspberrypi/tutorials/os/
Another option is to buy this book: http://nostarch.com/hacking2.htm. It comes with a LiveCD already setup for you to start tinkering, which you may download for free here: http://nostarch.com/hackingCD.htm
Happy hacking :)
EDIT:
A free ebook is here for 6502 assembly: http://skilldrick.github.com/easy6502/
Upvotes: 3
Reputation: 41
With all the other answers you should be well on your way one thing I haven't noticed is example code or anything to help you start writing code. Try out this link: http://www.gabrielececchetti.it/Teaching/CalcolatoriElettronici/Docs/i8086_instruction_set.pdf
try this code:
a200
Db"Hello World$"
A190
MOV DX,0200; MOVE DX TO LOCATION WHERE THE STRING IS AT
MOV AH,09; 09 IS THE OUTPUT STRING SELECTION
INT 21; DOS SERICES...WRITING TO THE SCREEN
RET
a100
call 190; write the string starting at location 0200
int 3
I have not tested this code so if there are bugs.... happy coding!!!
Upvotes: 2