Assembly Language: Difference between revisions
Jump to navigation
Jump to search
imported>Markus Baumeister (linkified and some improvements) |
imported>Paul Derry No edit summary |
||
Line 4: | Line 4: | ||
----- | ----- | ||
.data | .data | ||
hello_message db 'Hello, World!',0dh,0ah,'$' | hello_message db 'Hello, World!',0dh,0ah,'$' | ||
.code | .code | ||
main proc | main proc | ||
mov ax,@data | |||
mov ds,ax | |||
mov ah,9 | |||
mov dx,offset hello_message | |||
int 21h | |||
mov ax,4C00h | |||
int 21h | |||
main endp | main endp | ||
end main | end main | ||
----- | ----- | ||
Revision as of 19:15, 11 March 2007
Assembly Language is a method of abstracting machine code instructions for a computer into commands recognizable by a human. Instead of dealing directly with bit sequences, programmers write programs in assembly by generating blocks of code using a small set of keywords (which are mapped to machine instructions by an assembler).
An example Hello World program written in pseudo-assembly for a MSDOS-based system is listed below. Original source: Assembly Language for the IBM-PC.
.data hello_message db 'Hello, World!',0dh,0ah,'$' .code main proc mov ax,@data mov ds,ax mov ah,9 mov dx,offset hello_message int 21h mov ax,4C00h int 21h main endp end main
Assembly programs are much easier to understand than their corresponding machine code instruction streams, which are just numbers, but they are much more difficult to comprehend than, higher-level programming languages like, for example, PHP.