Importance of Assembly Language - What Have I Learned?!

 Assembly Language

Why is this an important language to learn and how does this help in software optimization?


If you're curious why learning Assembly Language in 2025 is no less important than learning all these modern high-level programming languages, you're right where you need to be. As you continue to read on this content, you will understand the reasons why I believe Assembly Language is worth learning!

What is Assembly Language?

Assembly Language is a machine-learning or a low-level programming language that allows you to write programs that can run directly to your Central Processing Unit (CPU); in other words, Assembly Language is just a human-readable mnemonical instructions that allows you to speak to your machine.

Assembly language is platform-dependent, meaning instruction sets may differ depending on your computer's architecture. This language can give you direct access to memory, allowing a better control over your CPU.

Take a look under the hood...

Although Assembly language may be difficult to learn especially when you are used to high-level programming, it is still useful to understand the underlying architecture and how the CPU works. Just imagine when a car breaks down, the only way to fix this is by taking a look under the hood. Being able to drive does not give you full control over your car; but if you want an engine tuning or modification such as improving your engine's exhaust systems or increasing your engine's power, the ability to drive is not sufficient to upgrade your car's performance - just like the learning low-level programming, you will gain flexibility in display control and a more specific data handling!

What have I actually learned?

All thanks to my experiences with our course labs, I have learned various instructions, the concepts of the Assembly Language, CPU's architecture, stacks, registers and conditional instructions. Below are some of the highlights I learned from experiences:

Stack: Assembly follows a First In, Last Out (FILO) stack mechanism. Everything works around the stack pointer. You would need to use mnemonical instructions give instructions to the CPU to control data that is stored temporarily in a memory.

Registers: These are small memory storage areas within the Central Processing Unit (CPU) that are used to store data temporarily.

Mnemonical Instructions: Abbreviated human-readable English words that allow you to specify instructions to run to directly to your CPU.

Is it worth it?

Learning Assembly Language is absolutely worthwhile, as it has given me a better understanding of how programming interacts with the hardware particularly a computer's CPU. As a result, I am now able to explore various ways to optimize my code and find ways to improve its speed.

As I continue learning this language, I am thrilled to deepen my understanding of low-level programming!

References:

(i) https://www.lenovo.com/au/outlet/en/glossary/assembly-language/

(ii) https://www.spiceworks.com/tech/tech-general/articles/what-is-assembly-language/#:~:text=This%20is%20a%20simple%20example,over%20the%20hardware%20is%20necessary.




Comments

Popular posts from this blog

BATCH 3 | Project Stage 2, Part 3 - Cloned Functions Comparison and Reflection

Lab 01 - Experiments, Calculating Performance and Modifying Code

BATCH 4 | Clone-Prune Analysis Code Pass On Both Architectures