this post was submitted on 11 Dec 2023
10 points (100.0% liked)

Programming

3347 readers
1 users here now

All things programming and coding related. Subcommunity of Technology.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 2 years ago
MODERATORS
 

I have a project for which i will probably need to lear assembly language for some architecture, but it doesnt have to be an specific architecture, as long as it is a real one is ok, so, what is the architecture with the easiest assembly to learn

top 9 comments
sorted by: hot top controversial new old
[–] Fades 6 points 1 year ago

MIPS is great because it is essentially designed for learning assembly

[–] reddig33 5 points 1 year ago (1 children)

Does it have to be a modern architecture? Or can you learn 6502 or 68000?

[–] prettydarknwild 3 points 1 year ago (2 children)

nope, it doesnt, actually it might be handy to be an old one so i can test it in a emulator at 100% speed

[–] GuyWithLag 4 points 1 year ago

Go with m68k then, high level, very orthogonal, with enough registers to not need tying yourself into a pretzel for most tasks.

[–] fhein 2 points 1 year ago

If you get an Amiga emulator you might be able to do some more fun stuff with it, compared to emulating only a CPU. In addition, if you search for "Amiga assembly tutorial" you might find more resources than if you search for tutorials for a specific CPU.

[–] Chobbes 5 points 1 year ago

It probably doesn’t matter too much which assembly language you learn. In some sense they’re all relatively similar. If you want to learn it for a specific purpose you should learn the language you’re hoping to use. Otherwise, RISC-V, Arm, and MIPS are all pretty nice and clean. x86 is kind of ugly and it might be a little distracting when trying to learn the basics, but it’s probably what your computer has and it’s cool to learn on your actual device.

Other possibilities… TIS-100 and Shenzhen IO are both games where you do some assembly programming. They’re somewhat artificial, but honestly they’ll give you a good introduction.

[–] loganberryq 2 points 1 year ago (1 children)

X86 / X86-64 or ARM. Mostly just due to how accessible information is on them but if I had to choose I'd go with ARM personally. Most used in smartphones, tablets, and other such devices. It has a simple and consistent instruction set, a clear and logical syntax, and a modular and scalable architecture.

[–] Synthead 4 points 1 year ago* (last edited 1 year ago)

Some of the x86 instructions are so complex and niche that they can be considered esoteric. So heads up: if you jump in and attempt to learn x86, then get completely overwhelmed, it's not you.

[–] WellroundedKi 2 points 1 year ago