10110000 01100001) faz, para os programadores é mais fácil recordar a representação equivalente em instruções mnemónicas MOV AL, 61h. Tal instrução ordena que o valor hexadecimal 61 (97, em decimal) seja movido para o registrador 'AL'.Cada arquitetura de computador tem a sua própria linguagem de máquina e, portanto, a sua própria linguagem de montagem. Essas linguagens de montagem diferem no número e tipo de operações que suportam. Também têm diferentes tamanhos e números de registradores, e diferentes representações dos tipos de dados armazenados. Enquanto todos os computadores de utilização genérica são capazes de desempenhar essencialmente as mesmas funções, o modo como o fazem é diferente.
A seguir temos alguns exemplos de códigos utilizando a linguagem montadora assembly do 8086. A sintaxe dessa linguagem não é case sensitive (não diferencia letras maiúsculas de minúsculas). Portanto para facilitar a compreensão do texto do código sugere-se uso de letras MAIÚSCULAS para o código e minúsculas para comentários que iniciam com ponto e vírgula (;):
____________________________________________________________________
MOV AX,WORD1 ;movimenta o conteúdo da posição de memória WORD1
;para o registrador AX
___________________________________________________________________
Esse é um exemplo simples de comando em Assembly 8086. O mnemónico MOV, permite movimentar valores. No exemplo, o conteúdo da posição na memória WORD1 foi movido para o registrador AX.
Outro exemplo usando mnemónico MOV:
____________________________________________________________
MOV AH,’A’ ;transfere o caracter ASCII ‘A’ para AH
___________________________________________________________________
Abaixo teremos um programa completo e bem simples: a versão Assembly 8086 do famoso "Hello World":
__________________________________________________________
.MODEL SMALL
.STACK 100H
.DATA
Str1 db “HELLO WORLD”,13,10,’$’
.CODE
;atualiza o DS com o segmento que guarda STR1
MOV AX,SEG Str1
MOV DS, AX
;chama a INT 21 para printar a str na tela
MOV DX, OFFSET Str1
MOV AH, 09
INT 21H
;encerra o programa
MOV AX, 4c00H
INT 21 H
END
_________________________________________________________
Nenhum comentário:
Postar um comentário