domingo, 26 de setembro de 2010

Linguagem Assembly

Primeira mensagem da segunda ronda de posts sobre a matéria dada em AIB.

A linguagem Assembly, é uma linguagem de 2ª geração (baixo nível), criada na década de 50. Cada instrução em Assembly é traduzida numa instrução de hardware (linguagem máquina), esta linguagem é por isso considerada a fronteira entre as linguangens de programação de baixo e alto nível.
ADD e INC são dois exemplos de programas de adição em Assembly.

programa ADD:

TITLE ADD
.model small
.stack 100h
.data

add_msga    db    10,13, "Enter Number 1: $"
add_msgb    db    10,13, "Enter Number 2: $"
add_num1    db  ?
add_num2    db    ?
add_result    db    ?

.code
main PROC
mov ax,@data
mov ds,ax

call AddNumbers

mov ax, 4c00h
int 21h
main ENDP


AddNumbers PROC
;get num1
    mov ah, 09h
    mov dx, offset add_msga
    int 21h
    
    mov ah, 1h
    int 21h
    mov add_num1, al
    
;get num2
    mov ah, 09h
    mov dx, offset add_msgb
    int 21h
    
    mov ah, 1h
    int 21h
    mov add_num2, al

;add [numbers]
    mov al, add_num1
    add al, add_num2
    mov add_res, al
    
;output result
    mov ah, 09h
    mov dx, offset add_res
    int 21h

    ret

AddNumbers endp

END main.

Sem comentários:

Enviar um comentário