Member-only story

Learning Assembly Language — A Helpful Guide [Part 1]

TechTeaching
7 min readAug 17, 2020

--

What is Assembly?

Assembly language is a programming language just like any other. Well nearly… every line in assembly language actually represents a single CPU instruction. This is different from a language like python where a single line of code could represent hundreds of CPU instructions.

As a result of this, we have a lot more control over what we can do, but, it is a lot, lot more complicated and time-consuming to create and debug programs.

Why Learn Assembly?

So if assembly is so much more complicated and time-consuming, you are probably thinking “what is the point?”.

Well, by being able to understand assembly, you get an understanding for how your CPU behaves, allowing you to understand all programs you write/inspect to a much deeper level than those who don’t have this skill. It will teach you more about memory management and the inner workings of what you are asking of the CPU when you make certain function calls, allowing you to improve you coding across all forms of programming exponentially.

Moreover, it allows the ability to reverse engineer executables. If you compile a program, it goes from a human-readable form, into a form that is some mutation of assembly language — this means you can work backwards from a compiled and packed program, to find any possible hidden, unknown vulnerabilities, secret extra features, or just get a much more knowledgeable…

--

--

TechTeaching
TechTeaching

Written by TechTeaching

Computer Science graduate with specialism in cyber-security and software engineering.

Responses (2)