Learning Assembly is an adventure and a challenge. This language is recommended only for advanced programmers. It is useful to learn only if you are interested in creation of low level, highly optimized software for device drivers, operating systems or compilers.
Introduction to Assembly
An assembler is a program that converts human-readable instructions known as “assembly” into a binary representation that a particular computer architecture can interpret. As a language, assembly is as primitive as it gets. There are even programs called disassembles that convert the binary back to human-readable assembly.
Similar architectures have similar assembly languages. For example, the 8086 microprocessor was the first in a family whose youngest descendant is x86_64. My own assembly experience was with the Motorola 68000 family. I was once paid to write a simulator for the 68040 memory management unit. That’s how many years ago I left assembly.
Assembly is for hardware nerds. But software nerds invented C so we wouldn’t have to write assembly language. C is translated into assembly language by a program called a compiler. The resulting computer-generated assembly is what actually runs on the computer.
This is work in progress! Please do not try this exam yet.
Leaderboard: Programming Assenbly
|Table is loading|
|No data available|