/********************************************************************/
/* defines.h */
/* */
/* */
/* Copyright (c) 1997-2006 Rafael Rico (rafael.rico@uah.es) */
/* */
/* Este fichero forma parte de ADD */
/* (Analizador de Dependencias de Datos) */
/* Version 5.10. */
/* */
/* */
/* ADD es software libre. Puede redistribuirlo y/o modificarlo */
/* bajo los términos de la Licencia Pública General de GNU */
/* según es publicada por la Free Software Foundation, bien bajo */
/* la versión 2 de dicha Licencia o bien (según su elección) */
/* bajo cualquier versión posterior. */
/* */
/* ADD se distribuye con la esperanza de que sea útil, */
/* pero SIN NINGUNA GARANTÍA, incluso sin la garantía MERCANTIL */
/* implícita y sin garantizar la CONVENIENCIA PARA UN PROPÓSITO */
/* PARTICULAR. Véase la Licencia Pública General de GNU para */
/* más detalles. */
/* */
/* Debería haber recibido una copia de la Licencia Pública General */
/* junto con ADD. Si no ha sido así, escriba a la Free Software */
/* Foundation, Inc., 51 Franklin St, Fifth Floor, */
/* Boston, MA 02110-1301 EEUU. */
/* */
/* -------------------------- Historia --------------------------- */
/* */
/* $Id: defines.h,v 1.2 2006/02/28 15:04:13 rico Exp $ */
/* */
/* Revisión 1.2. 01/2006 */
/* Se añade la licencia GPL y documentación en estilo Javadoc */
/* */
/* Revisión 1.1. 09/2005 */
/* Versión inicial */
/* */
/********************************************************************/
/*****************************************************************************/
/* MÓDULO: defines.h */
/* */
/* Módulo con definiciones de constantes. */
/*****************************************************************************/
/* Fecha: 29 de septiembre de 2005 */
/*****************************************************************************/
#define MAX_LINE 128
#define NO 0
#define SI 1
/* CONFIGURACIÓN */
#define TRAZA 0
#define SECUENCIA 1
#define CADENAHEX 2
/* SALVAR CONFIGURACIÓN */
#define CFG 2
/* BYTES POR INSTRUCCIÓN EN LA TRAZA */
#define BYTES_POR_INSTRUCCION 6
#define MAX_VENTANA 2048
/* NOTIFICACIONES */
#define ECO_NO 0
#define ECO_SI 1
#define ERROR_SALIR 0
#define ERROR_SEGUIR 1
#define NO_ERROR 2
#define ALL 0
#define EX_CFG 1
#define ERRORS 2
/* MÁXIMOS TAMAÑOS EN DEFINICIÓN DE TIPOS */
#define MAX_NEMO 15
#define MAX_OPE 12
#define MAX_LISTA 50
#define MAX_UBI 10
#define MAX_DEPEN 6
#define MAX_HEX 15
/* BASES DE DATOS */
#define TABLA_NEMONICOS 100
#define TABLA_SIMBOLOS 200
#define TABLA_CICLOS 300
#define TABLA_UBICACIONES 400
#define CAMPO_NEMONICO 101
#define CAMPO_SIMBOLO 201
#define CAMPO_IDENTIFICADOR 301
#define CAMPO_NOMBRE 401
/* TIPO DE INSTRUCCIÓN (Fichero IA16-nemos.isa) */
#define TRANSFERENCIA 0
#define ARITMETICA 1
#define LOGICA 2
#define SALTO_INCONDICIONAL 3
#define SALTO_CONDICIONAL 4
#define PREFIJO 5
#define PREFIJO_SEG 6
#define CADENAS 7
#define CONTROL 8
#define SIN_TIPO 100
/* MODO DEL OPERANDO (Fichero IA16-nemos.isa) */
#define LEIDO 0
#define ESCRITO 1
#define LEIDOYESCRITO 2
#define NO_EXISTE 3
/* SEGMENTO POR DEFECTO (Fichero IA16-ubis.isa) */
#define NO_SEG 0
#define CS 1
#define SS 2
#define DS 3
#define ES 4
/* FUNCIÓN DE LA UBICACIÓN (Fichero IA16-ubis.isa) */
#define DATOS 0
#define PTR_MEM 1
#define PTR_PILA 2
#define BANDERAS 3
#define ACCESOS_MEM 4
#define OTROS 5
/* SALTOS */
#define INCONDICIONAL 0
#define NO_SALTO 1
#define TOMADO 2
#define NOTOMADO 3
/* TIPOS DE DEPENDENCIAS */
#define RW 0 /* verdadera o lectura después de escritura */
#define WR 1 /* antidependencia o escritura después de lectura */
#define WW 2 /* salida o escritura después de escritura */
/* TIPOS DE DATOS */
#define DATOSEXP 10 /* datos explícitos */
#define DATOSIMP 11 /* datos implícitos */
#define DIREXP 20 /* direcciones explícitos */
#define DIRIMP 21 /* direcciones implícitos */
#define PILAEXP 30 /* pila explícitos */
#define PILAIMP 31 /* pila implícitos */
#define CCEXP 40 /* códigos de condición explícitos */
#define CCIMP 41 /* códigos de condición implícitos */
/* FORMATO ENSAMBLADOR */
#define INTEL 0 /* formato de instrucción ensamblador INTEL */
#define ATT 1 /* formato de instrucción ensamblador ATT */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>