domingo, janeiro 18, 2009

Simulando Um Computador - 1/4

O aprendizado de linguagem de máquina, diretamente em um computador, é uma tarefa ingrata, visto a dificuldade em se visualizar a execução e a possibilidade (frequente) de um programa incorreto “travar” a máquina.

Por estes motivos, é bastante interessante o uso de um simulador que facilite a entrada, execução e depuração de programas em linguagem de máquina. Um exemplo famoso de simulador é o MIX utilizado na famosa série The Art of Computer Programming de Donald Knuth. (Outro exemplo, não tão famoso, é o computador HIPO utilizado nas aulas de computação da USP no final dos anos 70).

O programa aqui descrito simula um computador hipotético (COMP), extremamente simples. O simulador permite a entrada de programas tanto em linguagem de máquina como assembler. A velocidade da execução é controlável e o conteúdo dos registradores e da memória são apresentados na tela.

A versão original deste programa foi feita em 1985, para ser executado em um microcomputador TK-82C e publicada na revista Microbits.

2 comentários:

Andre disse...

Os acadêmicos da UEM fizeram um bom trabalho (lidam com ele hoje também) sobre isso. Acho que envolve fazer um programa e ver como ele é executado no computador (inclusive as implementações em Assembly). É um excelente trabalho. Infelizmente não lembro o nome dos acadêmicos, mas vi uma apresentação (na verdade, 3, de alunos diferentes, mas envolvidos com o projeto) que me surpreendeu.

Abraço.

breno faria disse...

Este assunto é realmente muito interessante!!!
Manda vê!

Grande abraço

Breno.