Spoiler:
Código: Seleccionar todo
/*
* cAllegrex.h
*
* Created on: Jan 19, 2011
* Author: m0skit0
*
* Clase cAllegrex: Modelado del procesador principal de la PSP
*
* Elementos Privados:
* ATRIBUTOS.
* regGenericos[NUM_REG_GENERICOS] Registros genéricos
* regHi, regLo Registro HI y LO
* regPc Registro regPC
* regRi Registro de instrucción
*
* METODOS.
* recoger Recoge la instrucción. Sin argumentos(o entrada) salida tipo error (o tError)
* decodificar Decodifica la instrucción. Sin argumentos(o entrada) salida tipo error (o tError)
* ejecutar Ejecuta la instrucción. Sin argumentos(o entrada) salida tipo error (o tError)
* almacenar Almacena la instrucción. Sin argumentos(o entrada) salida tipo error (o tError)
* ejecutar_ciclo Ejecuta un ciclo de instrucción. Sin argumentos(o entrada) salida tipo error (o tError)
*
* Elementos Publicos:
* arrancar Indica al procesador arrancar. Sin argumentos(o entrada) salida tipo error (o tError)
* parar Indica al procesador detenerse(pausa). Sin argumentos(o entrada) salida tipo error (o tError)
* reset Indica al procesador reiniciarse. Sin argumentos(o entrada) salida tipo error (o tError)
* apagar Indica al procesador apagarse. Sin argumentos(o entrada) salida tipo error (o tError). Operaciones antes de * destructor
*/
#ifndef CALLEGREX_H_
#define CALLEGREX_H_
#include "tipos.h"
#include "cAllegrexInfo.h"
class cAllegrex
{
private:
tRegistro regGenericos[NUM_REG_GENERICOS];
tRegistro regHi, regLo;
tRegistro regPc;
tRegistro regRi;
// Coprocesadores también aquí o por separado?
tError recoger(void);
tError decodificar(void);
tError ejecutar(void);
tError almacenar(void);
tError ejecutar_ciclo(void);
public:
// Constructores y destructor
cAllegrex();
~cAllegrex();
tError arrancar(void);
tError parar(void);
tError reset(void);
tError apagar(void);
};
EDITO: bueno veo que a mí también me sale descolocado aquí, así que mejor adjunto el fichero en sí.
EDITO2: bien, la extensión .h no está permitida así que lo dejo como antes