So which ASM tutorials/books/etc are best?
Posted: Wed Aug 01, 2012 12:50 pm
Hi all,
I'm new here, and I'm interested in, well, OS development. That being said, although I have plenty of experience with C, Python, and computer science in general, I lack specific knowledge of (x86) assembly. I've searched around a lot, but I find it very hard to find any *good* books or tutorials on the subject. The 'Art of Assembly' for example, does not as far as I can see really teach assembly: it practically claims that you can do assembly similar to how you'd program in a high-level language, which is not very useful for OS development. Then there are the Intel and AMD manuals, which everyone likes to refer to so much. I'm sure they contain loads of useful information, but if you don't know assembly already (e.g. me), they're rather incomprehensible (at least it appears that way to me). They're more meant to look a few things up rather than teach a complete new subject, if I'm not mistaken. There are a few books to be found (surprisingly few!), but from what I can find they're all about user-level programming with system calls et al.
Basically, what I'm wanting to ask is what you used to learn assembly. Where did you start, and how did you ultimately learn the parts of assembly that allowed you to program lower-level programs? What would you recommend I'd start with? I've also searched the forums, but was unable to find much of anything. Again, this could just be me having a bad day as far as my search-fu is concerned, in which case some pointers to useful threads would of course be appreciated.
Thanks,
Robin
I'm new here, and I'm interested in, well, OS development. That being said, although I have plenty of experience with C, Python, and computer science in general, I lack specific knowledge of (x86) assembly. I've searched around a lot, but I find it very hard to find any *good* books or tutorials on the subject. The 'Art of Assembly' for example, does not as far as I can see really teach assembly: it practically claims that you can do assembly similar to how you'd program in a high-level language, which is not very useful for OS development. Then there are the Intel and AMD manuals, which everyone likes to refer to so much. I'm sure they contain loads of useful information, but if you don't know assembly already (e.g. me), they're rather incomprehensible (at least it appears that way to me). They're more meant to look a few things up rather than teach a complete new subject, if I'm not mistaken. There are a few books to be found (surprisingly few!), but from what I can find they're all about user-level programming with system calls et al.
Basically, what I'm wanting to ask is what you used to learn assembly. Where did you start, and how did you ultimately learn the parts of assembly that allowed you to program lower-level programs? What would you recommend I'd start with? I've also searched the forums, but was unable to find much of anything. Again, this could just be me having a bad day as far as my search-fu is concerned, in which case some pointers to useful threads would of course be appreciated.
Thanks,
Robin