-
Notifications
You must be signed in to change notification settings - Fork 0
/
MYFIRST.rtf
47 lines (47 loc) · 2.03 KB
/
MYFIRST.rtf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
{\rtf1\ansi\deff0{\fonttbl{\f0\fmodern\fprq1\fcharset0 Courier New;}{\f1\fnil\fcharset0 Courier New;}}
{\colortbl ;\red0\green0\blue255;}
{\*\generator Msftedit 5.41.21.2509;}\viewkind4\uc1\pard\cf1\lang1046\b\f0\fs20 assume cs:codigo,ds:dados,es:dados,ss:pilha\par
\par
CR EQU 0DH ; constante - codigo ASCII do caractere "carriage return"\par
LF EQU 0AH ; constante - codigo ASCII do caractere "line feed"\par
\par
; definicao do segmento de dados do programa\par
dados segment\par
\cf0\b0\f1 mensagem db 'Meu primeiro programa em ASSEMBLER 8086 funciona !!!'\par
fimlinha db CR,LF,'$'\par
\cf1\b\f0 dados ends\par
\par
; definicao do segmento de pilha do programa\par
pilha segment stack ; permite inicializacao automatica de SS:SP\par
dw 128 dup(?)\par
pilha ends\par
\par
; definicao do segmento de codigo do programa\par
codigo segment\par
inicio: ; CS e IP sao inicializados com este endereco\par
mov ax,dados ; inicializa DS\par
mov ds,ax ; com endereco do segmento DADOS\par
mov es,ax ; idem em ES\par
; fim da carga inicial dos registradores de segmento\par
\par
; a partir daqui, as instrucoes especificas para cada programa\par
\cf0\b0\f1 ; neste exemplo, o programa apenas exibe uma mensagem na tela \par
; e devolve o controle para o sistema operacional (DOS)\par
lea dx,mensagem ; endereco da mensagem em DX\par
mov ah,9 ; funcao exibir mensagem no AH\par
int 21h ; chamada do DOS\par
\par
\cf1\b\f0 ; retorno ao DOS com codigo de retorno 0 no AL (fim normal)\par
fim:\par
mov ax,4c00h ; funcao retornar ao DOS no AH\par
int 21h ; chamada do DOS\par
\par
codigo ends\par
\par
; a diretiva a seguir indica o fim do codigo fonte (ultima linha do arquivo)\par
; e informa que o programa deve come\'e7ar a execucao no rotulo "inicio"\par
end inicio \par
\par
\cf0\b0\f1\par
}