Assembly Language Programming
(Redirected from ASM Programming)
Jump to navigation
Jump to search
An Assembly Language Programming is a low-level programming technique that uses mnemonic instructions and symbolic addresses to create processor-specific programs one step above machine code.
- AKA: Assembler Programming, ASM Programming, Symbolic Machine Code Programming, Mnemonic Programming.
- Context:
- It can typically utilize Mnemonic Instructions through instruction set mapping.
- It can typically employ Symbolic Addressing using label definitions.
- It can often require Register Allocation via manual register management.
- It can often involve Macro Definition through assembler directives.
- It can support Direct Hardware Control using processor-specific instructions.
- It can enable Performance Optimization via cycle counting.
- It can facilitate System Programming through interrupt handling.
- It can range from being a CISC Assembly Language Programming to being a RISC Assembly Language Programming, depending on its instruction set architecture.
- It can range from being an 8-bit Assembly Language Programming to being a 64-bit Assembly Language Programming, depending on its processor width.
- It can range from being a Bare-Metal Assembly Language Programming to being an OS-Hosted Assembly Language Programming, depending on its execution environment.
- It can range from being a Pure Assembly Language Programming to being a Mixed Assembly Language Programming, depending on its language integration.
- ...
- Examples:
- Processor-Specific Assembly Languages, such as:
- x86 Assembly Language - Intel/AMD processors.
- ARM Assembly Language - ARM processors.
- 6502 Assembly Language - Commodore/Apple processors.
- Z80 Assembly Language - TRS-80/Spectrum processors.
- Assembly Programming Applications, such as:
- Boot Loader Programming - system initialization.
- Device Driver Programming - hardware control.
- Embedded System Programming - microcontroller code.
- ...
- Processor-Specific Assembly Languages, such as:
- Counter-Examples:
- Machine Language Programming, which uses raw binary codes.
- High-Level Language Programming, which abstracts hardware details.
- Intermediate Language Programming, which targets virtual machines.
- See: Low-Level Programming Language, Machine Language Programming, Processor Instruction Set, Assembler Tool, System Programming, Dave Plummer, Kernel Debugging Process, Hardware Programming.