quarta-feira, 11 de abril de 2012

Assembly MAC-1 - Ordenação de vetor

Olá pessoal, nesse post irei colocar um código que ordena um vetor utilizando a linguagem Assembly MAC-1. O processador MAC-1 foi desenvolvido por Andrew Tanenbaum para fins didáticos.

Caso você queira ver uma lista de instruções do MAC-1, clique aqui. Para compilar códigos do MAC-1 utilize algum simulador, eu utilizei o simulador feito por Tomás Brandão, possui interface gráfica, muito bom para acompanhar cada instrução. Clique aqui para baixar o simulador de acordo com seu sistema operacional!

Instruções para compilar o programa:

O próprio site do simulador indica o notepad++ para editar os códigos. Essa dica é muito válida, pois o notepad++ é um excelente editor de códigos e é gratuito!

Depois de escrever o código, você irá salvá-lo com a extensão .asm que é a extensão de códigos Assembly. O notepad++ possui suporte a esse tipo de código (é só ir em Linguagem -> A -> Assembly).

Coloque o arquivo de código no mesmo diretório onde está os arquivos do simulador. Abra o cmd (prompt de comandos) e navegue até esse diretório. Agora utilize o seguinte comando para compilar:

asm programa.asm

Irá gerar um arquivo com o mesmo nome, só que com a terminação .hex: programa.hex

Feito isso, execute mac1.exe, clique em File -> Load, escolha o arquivo .hex que foi gerado. Vá em Run e depois em Single step para acompanhar passo a passo cada execução do programa. Vá clicando no botão Step (space) para ver cada instrução sendo executada.

O código ordena um vetor de 5 números, está todo comentado, foi compilado e testado com o simulador que eu falei anteriormente.



Nenhum comentário: