I started out on an IBM 360 assembler out of school. The 360 used stone knives and bear skins. I picked up Mac80 (as they called it back then) from the Intel manuals. Now I find myself digging through X86, PPC and Sparc in dumps quite often. Don't know how anyone can debug code without knowing a little assembly. I found that reading the assembly that comes out of the compiler is a good starting point, along with a machine code reference manual. Might I suggest downloading the Atmel IDE and compiler. Atmel chips run everything from 8 pin ICs to 64 pin with Mbs of flash, eeprom and RAM memory. The IDE has a fairly nice emulator that lets you watch as instructions are run. Gives you a nice feel for using registers, stacks, and mapped IO. The IDE is much like the VisualC++ 6.0 IDE and there are Linux versions as well. Even runs gcc. Brian Hurt <bhurt at spnz.org> wrote: On Fri, 20 Jul 2007, gramlich wrote: > Well, I am interested in learning assembly to understand the computer, I > was just thinking that x86 would be the way to go since it's the type of > machine I own. The problem with the x86 is all the legacy crap. Not to mention quite a few flat out bad designs, plus a whole boatload of unnecessary complexity no one uses- now or ever. > > How successful would I be trying to get a ppc processor emulated in > Qemu? I've used it for testing out other distros, but it seems a bit > unstable even when the emulated machine is an x86. Actually, the more I think about it, the more I think 68K would be a better first assembler. There are quite a few 68K assemblers kicking about. EASy68k looks nice, but it's windows-only: http://www.monroeccc.edu/ckelly/EASy68K.htm One other thing I'd consider is finding an old PPC or 68K Mac to play on- one can probably be had for cheap if not free. This list is a good place to ask. > > What's your advice? Also, what is this high level assembly I keep > reading about. Is it pseudo code for teaching purposes or is it > legitimate? It's called "C", and I recommend learning it after learning assembly language. C makes a heck of a lot more sense if you know what's going on at the assembler level (*any* assembler)- for example, the pointer/array confusion makes perfect sense when you remember that a pointer is just an address on the assembly level. Brian _______________________________________________ TCLUG Mailing List - Minneapolis/St. Paul, Minnesota tclug-list at mn-linux.org http://mailman.mn-linux.org/mailman/listinfo/tclug-list --- Wayne Johnson, | There are two kinds of people: Those 3943 Penn Ave. N. | who say to God, "Thy will be done," Minneapolis, MN 55412-1908 | and those to whom God says, "All right, (612) 522-7003 | then, have it your way." --C.S. Lewis --------------------------------- Moody friends. Drama queens. Your life? Nope! - their life, your story. Play Sims Stories at Yahoo! Games. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mailman.mn-linux.org/pipermail/tclug-list/attachments/20070729/e8dd8361/attachment.htm