ASSEMBLY LANGUAGE
Assembly language is a low level programming language that uses symbolic representations of machine instructions to communicate directly with a computer processor.
There are two types of assembly languages and they are ; platform specific and macro assembly languages.
Platform specific assembly languages are designed for specific processor architectures such as X86 assembly language.
Macro assembly languages support macro instructions that can generate multiple machine instructions.
The advantages of assembly languages are as follows; assembly language provides direct access to hardware resources. Assembly languages can br used to optimize critical code sections. Assembly language is often used in embedded system development.
The disadvantages of assembly languages are as follows; assembly language code is specific to particular processor architecture. Assembly language is challenging to write and debug. Assembly language code is not portable across different platforms.
Assembly language finds application in computer systems and related devices such as; assembly language is used in embedded system development. Assembly language is used in operating system development. Assembly language is used in device drivers’ development.
The future of assembly language is based on the advances and development of the following technologies; advances in computer technology will impact positively on the use of assembly languages thus resulting to more efficient machine code. High level languages will continue to be the norm in programming tasks with corresponding demand for machine code generation with the use of assembly languages. Assembly languages will remain essential for specialized applications requiring direct hardware access
SOURCES:
- Assembly X64 programming in easy steps by Mike McGrath.
- Learn to program with assembly by Jonathan Barlett.
- Art of assembly language by Randall Hyde.
- Modern X86 assembly language programming by Daniel Kusswurm.
- Proffesipnal assembly language by Richard Blum.
NB: examples of assembly languages include X86 assembly language used for Intel and AMD processors. ARM assembly language used for ARM based processors. MIPs assembly language used for MIPS processors.