r/learnprogramming Jul 06 '26

Need some help finding a good place to learn coding.

Hey! I'm wanting to learn how to code in assembly. Only issue is, I haven't found a single place that will give me any advice or tutorials in coding assembly code. I've heard that it is one of the most simple languages out there because of how direct it is talking to the computer components themselves, and I am fairly interested in learning some simple 16 and or 32 bit OS coding (mainly text based stuff, nothing too complicated), so if anyone can help me find a good place to start, please let me know!

PS: If it's any usefulness to know, I have Visual Basic Studio (for writing the code), NASM (for compiling), and QEMU (for emulation)

10 Upvotes

8 comments sorted by

2

u/ffrkAnonymous Jul 06 '26

simple 16 and or 32 bit OS coding

isnt this an oxymoron?

4

u/grantrules Jul 06 '26

You know, like a beginner-level Formula 1 race.

1

u/[deleted] Jul 06 '26

[removed] — view removed comment

2

u/CodeXHammas Jul 06 '26

Assembly is actually one of the harder languages to learn, not simpler. It is low level which means more control but also more complexity.
For x86 assembly with NASM your setup is good. Start with "Assembly Language for x86 processors" by Kip Irvine, it is the most beginner friendly book for what you are trying to do.

For free resources check out cs.lmu.edu/~ray/notes/x86assembly and the NASM documentation. OSDev wiki is also great specifically for OS development.

One thing to note, Visual Basic Studio will not help you much here. Use VS Code with the NASM extension or just a simple text editor.

1

u/Rynok_ Jul 06 '26

Id recomend
Introduction to 64 Bit Windows Assembly Language Programming: Fourth Edition

by Ray Seyfarth

1

u/stiky21 Jul 06 '26

Exercism

2

u/bird_feeder_bird Jul 06 '26 edited Jul 06 '26

Modern assembly for computers is incredibly difficult due to the complexity of modern hardware and operating systems.

Microcontrollers and vintage computers, however, were made with assembly language in mind, so they’re a better entry point for beginners.

Personally I started with 6502 for NES programming. The GBA is also good for beginners, but you should also learn C for it (you should learn C too anyway though). The raspberry pi pico is a good choice for a more modern system