Assembly+language

=Assembly Language=



An assembly language is a low-level programming language one step up from the computer’s machine language. Machine languages are completely number-based and therefore nearly impossible for humans to read and write. Assembly languages have the same structure and commands, but allow programmers to use names and abbreviations (mnemonics) instead of numbers. Since different types of CPUs have different machine languages, assembly languages (usually defined by the manufacturer) are specific to the particular hardware they were designed for. This is in contrast with most high-level languages, which are designed to be portable.

Assembly languages were developed in the 1950s (“second-generation programming languages”) to eliminate the problems of the first-generation languages, such as time spent and errors resulting from having to remember individual codes and calculating addresses. Assembly languages were widely used for programming until around the 1980s, when high-level languages offered improved productivity.

Today, assembly language is still sometimes used instead of high-level language, especially when speed and fine control is necessary. Modern use is now primarily for direct hardware manipulation, access to specialized processor instructions, or addressing critical performance issues. Typical applications include device drivers, low-level embedded systems, and real-time systems.

Hello World Program in Assembly Language (for DOS)
code SEGMT SEGMENT ASSUME CS:SEGMT, DS:SEGMT ORG 100h

Main: MOV AH,09h MOV DX,OFFSET Text INT 21h MOV AX,4C00h INT 21h

Text: DB "Hello, World$"

SEGMT ENDS END Main code