Introduction to Assembly language (ASM)
The Assembly language (ASM) is the lowest level of human-readable language. It is also the highest level of language into which a binary can be reliably decompiled. Assembly provides a direct interface to the hardware of a computer.
In assembly language we write instructions that converted into machine readable code using assembler then executed by the cpu.
- Table of contents
How assembly works ?
Assembly code → Assembler → Execution (CPU)
Types of Assembly languages
Assembly code vary depends upon the underlying CPU architecture. Some populer types of assembly language are :
- x86 Assembly : Widely used in personal computers of Intel and AMD processors.
- x64 Assembly : It is a 64-bit extention of x86 assembly
- ARM Assembly : Commonly used in mobile devices, iot and embedded devices.
Why is Assembly language is used ?
Although assembly is more hard to write and understand than other high level languages like: python , still assembly has some unique advantages -
- Optmized performance : It provides more control over hardware for more efficiency.
- Harwdare interaction :It can Directly intracts with the CPU, memory and peripherals.
- Reverse engineering : It helps in analyzing and understanding compiled binaries. Commonly used in ctfs and malware analysis
Although assembly is specific to the CPU architecture, but they also have similarities. Get in-depth knowledge of following assembly languages -