Saw this link today and it took me back 20 years.
http://hackaday.com/2013/02/05/learn-a-little-assembly-language-for-the-6502-processor
The first assembly language I learned was for the Motorola 68000 as part of a college class (circa 1992). Motorola 68000 assembly is a beauty of clarity to behold and quite easy to learn. I came home for the Christmas break and saw my old Commodore 64 sitting on my desk. Thinking, “Dang, now this thing makes sense!” I ordered a $15 C compiler and assembler for it. I wrote a few small programs in 6502 assembly and then never used it again, but had tons fun over Christmas break basking in my new computer enlightenment.
I had written Basic programs on the C64 that “PEEKed” and “POKEd” values into memory, but I never quite understood those machine language programs and how they related to assembly language. Even after reading tons of computer magazines as a high schooler, the relationship between machine language and assembly language never really “clicked” in my head. What was lacking in my reading was a nice tutorial like the one above in book form. Of course, there were no computer classes of that level available to me in rural Western North Carolina and I was hacking in a vacuum.
The 6502 has an X and Y general register, an accumulator (A), a stack pointer (SP) and a program counter (PC). That’s it! It doesn’t get more simple than that. 8-bits of glory!