Live data from Hacker News

Where should I start learning Assembly?

news.ycombinator.com

31–40 of 54 posts

Re: Where should I start learning Assembly?

#31
post #8

Which assembly? x86, PowerPC, ARM, MIPS? Personally my favourites are 6502 ( http://skilldrick.github.io/easy6502/ ) and 68k ( http://www.easy68k.com/ ) tho' neither of these are realistically of any commercial use.

I concur that 6502 programming is great fun. When I had a bout of C=64 nostalgia recently, I created a simple Tetris clone as a relearning project:

https://github.com/cjauvin/tetris-c64

Re: Where should I start learning Assembly?

#36
If you're on a mac, XCode has a really nice feature: using the Assistant Editor (press the "bowtie icon"), you can get (dis-)assembly parallell to your source code and step through it with the debugger. A really convenient way of learning what's going on, and also understanding potential inefficiencies!

Re: Where should I start learning Assembly?

#38
Get IDA pro and start reversing things with some clear objective. I learned a lot having friends that knew and competing with them to remove limits on commercial software when I was a teenager.

Making trial version complete and so on. Some times it was really easy(just finding a jmp and changing it), other times we had to compare with the complete program, finding code blocks,patching the trial and making all checksums and stuff to work.

None of the software that we cracked was released to the public, it was just for fun.

At the time there was little exercises called "crackme" for exercising your abilities.

It takes at least over a year of work to start being really good at this, and is not like Obj.C, Java or Python, or even c, but way more tedious. Without having friends on this and clear objectives I would had found it boring.

It would be probably a better idea to buy a micro processor and code simple things in assembly, like blinking LEDs.

Re: Where should I start learning Assembly?

#40
I can suggest this free book called "PC Assembly Language" by Dr Paul Carter.

http://www.drpaulcarter.com/pcasm/

The tutorial has extensive coverage of interfacing assembly and C code and so might be of interest to C programmers who want to learn about how C works under the hood. All the examples use the free NASM (Netwide) assembler. The tutorial only covers programming under 32-bit protected mode and requires a 32-bit protected mode compiler.

Post reply on HN