Copyright © Philip M. Parker, INSEAD. Terms of Use.

Assembly Language

Definition: Assembly Language

Assembly Language

Noun

1. A low-level programing language; close approximation to machine language.

Source: WordNet 1.7.1 Copyright © 2001 by Princeton University. All rights reserved.
 


Specialty Definition: Assembly Language

DomainDefinition

Computing

Assembly language (Or "assembly code") A symbolic representation of the machine language of a specific processor. Assembly language is converted to machine code by an assembler. Usually, each line of assembly code produces one machine instruction, though the use of macros is common. Programming in assembly language is slow and error-prone but is the only way to squeeze every last bit of performance out of the hardware. Filename extension: .s (Unix), .asm (CP/M and others). See also second generation language. (1996-09-17) Assembly Language Compiler (ALC) An alternative name for IBM 360 assembly language. Compare BAL. (1995-01-04) Assembly Language for Multics (ALM) The assembly language of the GE645 in which critical portions of the Multics kernel were written. (1994-11-24) assertion 1. An expression which, if false, indicates an. Source: The Free On-line Dictionary of Computing.

Source: compiled by the editor from various references; see credits.

Top     

Specialty Definition: Assembly language

(From Wikipedia, the free Encyclopedia)

Assembly is a human-readable notation for 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 symbols called mnemonics.

So, while a computer will recognize what the IA-32 machine instruction

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

Unlike in high-level languages, there is (to a close approximation) a 1-to-1 correspondence between simple assembly to machine language. Transforming assembly into machine languages is accomplished by an assembler, the other direction by a disassembler.

Every computer architecture has its own machine language, and therefore its own assembly language (the example above is from the i386). These languages differ by the number and type of operations that they support. They may also have different sizes and numbers of registers, and different representations of data types in storage. While all general-purpose computers are able to carry out esentially the same functionality, the way they do it differs.

In addition, multiple sets of mnemonics or assembly-language syntax may exist for a single instruction set. In these cases, the most popular one is usually that used by the manufacturer in their documentation.

Machine instructions

Similar basic operations are available in almost all instruction sets.

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

Assembly language directives

In addition to codes for machine instructions, assembly languages have extra directives for assembling blocks of data, and assigning address locations for instructions or code.

They usually have a simple symbolic capability for defining values as symbolic expressions which are evaluated at assembly time, making it possible to write code that is easier to read and understand.

Like most computer languages, textual comments can be added to the source code which are ignored by the computer.

They also usually have an embedded macro language to make it easier to generate complex pieces of code or data.

In practice, the absence of comments and the replacement of symbols with actual numbers makes the human interpretation of disassembled code considerably more difficult than the original source would be.

Usage of assembly language

There is some debate over the usefulness of assembly language. It is often said that modern compilers can render higher-level languages into code as that runs as fast as hand-written assembler, but counter-examples can be made, and there is no clear consensus on this topic. It is reasonabily certain that, given the increase in complexity of modern processors, effective hand-optimization is increasingly difficult and requires a great deal of knowledge.

However, some discrete calculations can still be rendered into faster running code in assembler, and some low-level programming is simply easier to do in assembler. Some system-dependent tasks performed by operating systems simply cannot be expressed in high-level languages. Many compilers also render high-level languages into assembler first before fully compiling, allowing the assembler code to be viewed for debugging and optimization purposes.

Many embedded systems are also programmed in assembly to squeeze the absolute maximum functionality out of what is often very limited computational resources, though this is gradually changing in some areas as more powerful chips become available for the same minimal cost.

See also:

External Links:

Source: adapted by the editor from Wikipedia, the free encyclopedia under a copyleft GNU Free Documentation License (GFDL) from the article "Assembly language."

Top     

Synonym: Assembly Language

Synonym by domain: al- (computing).

Top     

Crosswords: Assembly Language

English words defined with "assembly language": assembler, assembly programcompiler, compiling program. (references)
Specialty definitions using "assembly language": .planALC, ALgorIthmic ASsembly language, ALM, Amiga E, Andrew Tanenbaum, APAL, Array Processor Assembly Language, AS/400, AS400, ASM, assembly code, Assembly Language Compiler, Assembly Language for Multics, AutocodeBabbage, BAL, Basic Assembly Language, Branch on Chip Box FullCASE SOAP III, Concurrent Massey Hope, control structureDATABUS, demoscene, DSP32 Assembly Languageextended self-contained PROLOGFortran Automatic Symbol TranslatorHardware Abstraction LayerIdealized Instruction Set, ILLIAC, indirect address, instruction mnemonic, instruction set architecture, Intel 8086Java Native InterfaceLAP4, LLM3, low-level languageMac-1, MAL, Meta, Micro Assembly Language, MIXAL, MP1, MP-1, Multipop-68native codeOCODEP-code, PDP Assembly Language, PL360, PL516, Programming Language/SystemsReal Programmers Don't Use Pascal, Recursive Macro Actuated GeneratorSchoonschip, second generation language, SFL, SIMSCRIPT I.5, S-Lang, SPS, Symbolic Assembler Program, Symbolic Optimal Assembly ProgramTASSUBASICVAL, Virtual MachineXPOPZero and Add Packed. (references)

Top     

Commercial Usage: Assembly Language

DomainTitle

Books

  • Advanced MS-DOS Programming : The Microsoft Guide for Assembly Language and C Programmers (reference)

  • Assembly Language Programming for the IBM PC Family (reference)

  • Introduction to Risc Assembly Language Programming (reference)

  • Linux Assembly Language Programming (Prentice Hall Open Source Technology) (reference)

  • Peter Norton's Assembly Language Book for the IBM PC (reference)

    (more book examples)

Source: compiled by the editor from various references; see credits.

Top     

Expressions: Assembly Language

Expressions using "assembly language": algorithmic ASsembly language array Processor Assembly Language assembly Language Compiler assembly Language for Multics basic Assembly Language DSP32 Assembly Language micro Assembly Language PDP Assembly Language. Additional references.

Source: compiled by the editor from various references; see credits.

Top     

Frequency of Internet Keywords: Assembly Language

The following statistics estimate the number of searches per day across the major English-language search engines as identified by various trade publications. Hyperlinks lead to commercial use of the expression at Amazon.com.
 
ExpressionFrequency
per Day

assembly language

186

assembly language tutorial

29

art assembly language

9

assembly language program

7

assembler assembly language

3

assembly language for intel based computer

3

assembly language window

3

art assembly language programming

3

learn assembly language

2

assembly language programming tutorial

2

assembler assembly language macro

2

arm assembly language

2

assembly language tutor

2

assembly assembly language programming programming root square

2
Source: compiled by the editor from various references; see credits.

Top     

Modern Translation: Assembly Language

Language Translations for "assembly language"; alternative meanings/domain in parentheses.

Danish

  

assemblersprog (assembler language, symbolic programming language), assembler (assembler, assembler language, assembler program, assembly program, assembly routine, symbolic programming language), symbolsk maskinsprog (assembler language, symbolic programming language). (various references)

   

Dutch

  

assemblertaal (assembler language, symbolic programming language), assembler (assembler), assembleertaal (assembler language, symbolic programming language). (various references)

   

Finnish

  

assembler-kieli (assembler language, symbolic programming language), symbolinen konekieli (assembler language, symbolic programming language), koostekieli (assembler language, symbolic programming language). (various references)

   

French

  

langage d'assemblage (assembler language), langage assembleur (assembler language). (various references)

   

German

  

Assemblersprache (assembler language). (various references)

   

Greek 

  

συμβολική γλώσσα (assembler language, symbolic programming language). (various references)

   

Italian

  

linguaggio di assemblatore (assembler language, symbolic programming language), linguaggio di assemblaggio (assembler language, symbolic programming language). (various references)

   

Japanese Kanji 

  

アセンブリー言語 , アセンブリー言葉 . (various references)

   

Japanese Katakana 

  

アセンブリー"とば, アセンブリー'"". (various references)

   

Pig Latin

  

assemblyay anguagelay

   

Portuguese

  

linguagem do assemblador (assembler language, symbolic programming language), linguagem de assembly (assembler language, symbolic programming language), linguagem de assembler (assembler language, symbolic programming language). (various references)

   

Spanish

  

lenguaje ensamblador (assembler language, symbolic programming language). (various references)

   

Swedish

  

assemblerspråk (assembler language, symbolic programming language), assembleringsspråk. (various references)

Source: compiled by the editor from various translation references.

Top     

Anagrams: Assembly Language

Scrabble® YAWL-Verified Anagrams

Words within the letters "a-a-a-b-e-e-g-g-l-l-m-n-s-s-u-y"

-4 letters: languageless.

Source: compiled by the editor from various references; see credits.

SCRABBLE® is a registered trademark. All intellectual property rights in and to the game are owned in the U.S.A and Canada by Hasbro Inc., and throughout the rest of the world by J.W. Spear & Sons Limited of Maidenhead, Berkshire, England, a subsidiary of Mattel Inc. Mattel and Spear are not affiliated with Hasbro.

Top     

Alternative Orthography: Assembly Language


Hexadecimal (or equivalents, 770AD-1900s) (references)

41 73 73 65 6D 62 6C 79      4C 61 6E 67 75 61 67 65

Leonardo da Vinci (1452-1519; backwards) (references)

    

Binary Code (1918-1938, probably earlier) (references)

01000001 01110011 01110011 01100101 01101101 01100010 01101100 01111001 00100000 01001100 01100001 01101110 01100111 01110101 01100001 01100111 01100101

HTML Code (1990) (references)

&#65 &#115 &#115 &#101 &#109 &#98 &#108 &#121 &#32 &#76 &#97 &#110 &#103 &#117 &#97 &#103 &#101

ISO 10646 (1991-1993) (references)

0041 0073 0073 0065 006D 0062 006C 0079      004C 0061 006E 0067 0075 0061 0067 0065

Encryption (beginner's substitution cypher): (references)

358585717968789124667807387677371

Top     



INDEX

1. Definition
2. Synonyms
3. Crosswords
4. Usage: Commercial
5. Expressions
6. Expressions: Internet
7. Translations: Modern
8. Anagrams
9. Orthography
10. Bibliography


  

Copyright © Philip M. Parker, INSEAD. Terms of Use.