Organização de computadores
Departamento de Computação-DECOM
Ciência da Computação
Relatório do trabalho prático
Organização de Computadores
UFOP-2013
Introdução:
A proposta principal deste trabalho é desenvolver de forma simplificada, a estrutura básica de uma maquina que se realizam operações. Para este trabalho foi desenvolvida uma maquina que calcula o comprimento em metros de ondas sonoras. Para chegarmos a um resultado positivo neste trabalho foi necessário criar duas funções, uma estrutura responsável por armazenar os registradores e o programa principal onde acontece a chamada da função que executa as operações e as instruções.
Desenvolvimento:
Como foi citado na introdução deste trabalho a maquina que foi desenvolvida por mim, realiza uma operação simples que calcula o comprimento de ondas de som, dentro deste programa existe um vetor contendo a velocidade e outro contendo a frequência das ondas de som.
No meu programa, os valores da velocidade e frequência estão predefinidos em vetores que simulam o HD. Durante o desenvolvimento deste trabalho foi necessário criar uma estrutura chamada processador contendo as variáveis que serviram como registradores da CPU. typedef struct{ float MBR,MQ; int IR,MAR,PC;
}processador;
Após a criação da estrutura, foi necessário criar uma função chamada mostrar. Esta função é responsável por mostrar os dados da memoria.
void mostrar()//imprime na tela os resultados{ printf("\nCPU: %d",cpu.PC); printf("\nMBR: %f",cpu.MBR); printf("\nIR: %d",cpu.IR); printf("\nMAR: %d",cpu.MAR); printf("\nMQ: %f\n",cpu.MQ);
}
Executável:
Função principal:
Na função principal é onde tudo acontece, temos os registradores sendo emulados e temos também a execução dos cálculos. Para esta função foi necessário criar um registrador chamado de PC que armazena a próxima instrução a ser