I'm an experienced programmer who feels like assembly has been a gap in my skills, and I'm eager to change that! There's no professional pressure; I just want to challenge myself and maybe dive into some binary reverse engineering later on. I'm considering starting with a beginner-friendly tutorial or project and then possibly picking up a book if I stay motivated. Before I jump in, I'd love to hear from those who have learned assembly. Do you have any cool resources like websites or books, project suggestions, or general tips?
4 Answers
Make sure not to start with x86-64 assembly! I learned Z80 and 6502 first, and it made x86 feel like a nightmare. I’d recommend starting with ARM or a retro CPU like Z80 or 6502. They are simpler to grasp, well documented, and tools like 8bitworkshop let you start coding without any installation hassle.
Check out nand2tetris! It’s a fantastic resource for learning low-level programming. It guides you step-by-step through building a computer from scratch, which really helps you understand how everything works under the hood.
If you're looking for project ideas, the GameBoy Advance is excellent for learning assembly. Its ARM7tdmi architecture is user-friendly, and you can combine C and assembly. Just make sure you're familiar with key concepts like registers and addresses before diving in.
I played a game called "Human Resource Machine" a while back, and it really emphasizes assembly language concepts in a fun way. While it doesn't map to a specific real-world architecture, it introduces many ideas behind assembly programming. It could be a good starting point for getting your mind in the right space!

Related Questions
How To: Running Codex CLI on Windows with Azure OpenAI
Set Wordpress Featured Image Using Javascript
How To Fix PHP Random Being The Same
Why no WebP Support with Wordpress
Replace Wordpress Cron With Linux Cron
Customize Yoast Canonical URL Programmatically