I have a decent understanding of C/C++ but I want to expand my arsenal, hence I decided to learn Assembly... Its just that I love low level languages which can be compiled (I dont like python and stuff... no offence). Anyways, I have some questions related to Assembly. I searched for quite some time but apparently, all resources are very outdated. So, here goes:-
- Which is the preferred OS for learning Assembly? Windows or Linux?
- I decided to use NASM since I like it's syntax compared to others. I am not a really a fan of macros and I wanna learn the bare-metal basics. What I dont understand is: In windows, I have to use push and pop, etc. while in Linux I can use mov and access registers? I really prefer the latter method so that's an important consideration on OS choice. Plus, there isn't decent amount of learning material for Assembly in Windows so it's quite confusing. Especially since I was hoping to start 64 bit architecture.
- I dont intend to go with MASM or FASM because both are macro based, and I feel comfortable with NASM syntax.
- Finally, could someone suggest me some free E-books or guides to learn Assembly? It doesn't really matter if Linux or Windows since I can use virtual box for linux as well.
Thanks for the help :)
Best Regards,
Electrux