(redirected from Programming language/assembly)

[Home]Assembly language

HomePage | Recent Changes | Preferences

Assembly is a human-readable? rendition of the machine language that a specific computer architecture uses. Machine language, a mere pattern of bits, is made readable by replacing the raw values with short commands, called mnemonics, and their arguments.

So, while a computer will recognize what

  10110000 01100001
does, for programmers it is easier to remember the semantics of the equivalent
  mov $0x61, %al
(it means to move the hexadecimal value 61 (97 decimal) into the register 'al'.)

Unlike in [high-level language]?s, there is a 1-to-1 mapping from simple assembly to machine language, so that computers can translate in both directions without losing information. Transforming assembly into machine languages is accomplished by an assembler, the other direction by a disassembler?. When real programming is done in assembly, it is usually in a bit more complex variant, and the convenient mapping is gone.

Every computer architecture has its own machine language, and henceforth its own assembly language (the example above is from the i386). These languages differ by the number and type of operations that they support; while all general-purpose computers are able carry out the same functionality, the way they do it differs.

Nevertheless, some basic operations are available in almost all assembly languages:

Specific languages will often have single, or a few instructions for operations which would otherwise take many instructions. Examples:


HomePage | Recent Changes | Preferences
This page is read-only | View other revisions
Last edited November 17, 2001 2:34 am by 212.188.19.xxx (diff)
Search: