```montagem
; Programa em linguagem assembly 8086 para adicionar dois números
; Defina o segmento onde o código será executado
.MODELO PEQUENO
; Defina o tamanho do segmento da pilha
.PILHA 100H
; Defina o segmento de dados onde as variáveis são armazenadas
.DADOS
; Defina as portas de entrada/saída
INPORT EQU 68H
EXPORTAÇÃO EQU 6CH
; Defina o buffer de entrada/saída
INPUT_BUF BD 10 DUP('$')
; Defina o buffer de saída
OUTPUT_BUF DB 11 DUP('$')
; Definir os caracteres de retorno de carro e avanço de linha
CRLF BD 0DH, 0AH, '$'
; Defina a mensagem a ser exibida
MSG DB 'Insira dois números:', '$'
; Defina o segmento onde o código será executado
.CÓDIGO
; Defina o procedimento principal
PROCESSAMENTO PRINCIPAL
; Exibir a mensagem na tela
MOVAH, 9; Sequência de exibição
LEA DX, MSG; Endereço da mensagem
INT 21H; Ligue para o serviço DOS
; Obtenha o primeiro número do usuário
MOVAH, 1; Obter personagem
INT 21H; Ligue para o serviço DOS
MOV AL, AH; Armazene o personagem em AL
SUBAL, 30H; Converta o código ASCII em um número
MOV BL, AL; Armazene o primeiro número em BL
; Obtenha o segundo número do usuário
MOVAH, 1; Obter personagem
INT 21H; Ligue para o serviço DOS
MOV AL, AH; Armazene o personagem em AL
SUBAL, 30H; Converta o código ASCII em um número
MOV BH, AL; Armazene o segundo número em BH
; Adicione os dois números
ADICIONAR BL, BH; Adicione os dois números
MOV AL, BL; Armazene o resultado em AL
; Exibir o resultado na tela
MOVAH, 2; Escrever personagem
MOV DL, AL; Armazene o resultado em DL
INT 21H; Ligue para o serviço DOS
; Exibir os caracteres de retorno de carro e avanço de linha
MOVAH, 9; Sequência de exibição
LEA DX, CRLF; Endereço dos caracteres de retorno de carro e avanço de linha
INT 21H; Ligue para o serviço DOS
; Saia do programa
MOVAH, 4CH; Sair do programa
INT 21H; Ligue para o serviço DOS
; Fim do procedimento principal
PEND PRINCIPAL
; Fim do programa
FIM PRINCIPAL
```