Annotation of ADD_ver_10/Source Code/Header Files/defines.h, revision 1.2
1.2 ! rico 1: /********************************************************************/
! 2: /* defines.h */
! 3: /* */
! 4: /* */
! 5: /* Copyright (c) 1997-2006 Rafael Rico (rafael.rico@uah.es) */
! 6: /* */
! 7: /* Este fichero forma parte de ADD */
! 8: /* (Analizador de Dependencias de Datos) */
! 9: /* Version 5.10. */
! 10: /* */
! 11: /* */
! 12: /* ADD es software libre. Puede redistribuirlo y/o modificarlo */
! 13: /* bajo los términos de la Licencia Pública General de GNU */
! 14: /* según es publicada por la Free Software Foundation, bien bajo */
! 15: /* la versión 2 de dicha Licencia o bien (según su elección) */
! 16: /* bajo cualquier versión posterior. */
! 17: /* */
! 18: /* ADD se distribuye con la esperanza de que sea útil, */
! 19: /* pero SIN NINGUNA GARANTÍA, incluso sin la garantía MERCANTIL */
! 20: /* implícita y sin garantizar la CONVENIENCIA PARA UN PROPÓSITO */
! 21: /* PARTICULAR. Véase la Licencia Pública General de GNU para */
! 22: /* más detalles. */
! 23: /* */
! 24: /* Debería haber recibido una copia de la Licencia Pública General */
! 25: /* junto con ADD. Si no ha sido así, escriba a la Free Software */
! 26: /* Foundation, Inc., 51 Franklin St, Fifth Floor, */
! 27: /* Boston, MA 02110-1301 EEUU. */
! 28: /* */
! 29: /* -------------------------- Historia --------------------------- */
! 30: /* */
! 31: /* $Id$ */
! 32: /* */
! 33: /* Revisión 1.2. 01/2006 */
! 34: /* Se añade la licencia GPL y documentación en estilo Javadoc */
! 35: /* */
! 36: /* Revisión 1.1. 09/2005 */
! 37: /* Versión inicial */
! 38: /* */
! 39: /********************************************************************/
! 40:
1.1 rico 41: /*****************************************************************************/
42: /* MÓDULO: defines.h */
43: /* */
44: /* Módulo con definiciones de constantes. */
45: /*****************************************************************************/
46: /* Fecha: 29 de septiembre de 2005 */
47: /*****************************************************************************/
48:
49: #define MAX_LINE 128
50:
51: #define NO 0
52: #define SI 1
53:
54: /* CONFIGURACIÓN */
55: #define TRAZA 0
56: #define SECUENCIA 1
57: #define CADENAHEX 2
58:
59: /* SALVAR CONFIGURACIÓN */
60: #define CFG 2
61:
62: /* BYTES POR INSTRUCCIÓN EN LA TRAZA */
63: #define BYTES_POR_INSTRUCCION 6
64:
65: #define MAX_VENTANA 2048
66:
67: /* NOTIFICACIONES */
68: #define ECO_NO 0
69: #define ECO_SI 1
70:
71: #define ERROR_SALIR 0
72: #define ERROR_SEGUIR 1
73: #define NO_ERROR 2
74:
75: #define ALL 0
76: #define EX_CFG 1
77: #define ERRORS 2
78:
79: /* MÁXIMOS TAMAÑOS EN DEFINICIÓN DE TIPOS */
80: #define MAX_NEMO 15
81: #define MAX_OPE 12
82: #define MAX_LISTA 50
83: #define MAX_UBI 10
84: #define MAX_DEPEN 6
85: #define MAX_HEX 15
86:
87: /* BASES DE DATOS */
88: #define TABLA_NEMONICOS 100
89: #define TABLA_SIMBOLOS 200
90: #define TABLA_CICLOS 300
91: #define TABLA_UBICACIONES 400
92: #define CAMPO_NEMONICO 101
93: #define CAMPO_SIMBOLO 201
94: #define CAMPO_IDENTIFICADOR 301
95: #define CAMPO_NOMBRE 401
96:
97: /* TIPO DE INSTRUCCIÓN (Fichero IA16-nemos.isa) */
98: #define TRANSFERENCIA 0
99: #define ARITMETICA 1
100: #define LOGICA 2
101: #define SALTO_INCONDICIONAL 3
102: #define SALTO_CONDICIONAL 4
103: #define PREFIJO 5
104: #define PREFIJO_SEG 6
105: #define CADENAS 7
106: #define CONTROL 8
107: #define SIN_TIPO 100
108:
109: /* MODO DEL OPERANDO (Fichero IA16-nemos.isa) */
110: #define LEIDO 0
111: #define ESCRITO 1
112: #define LEIDOYESCRITO 2
113: #define NO_EXISTE 3
114:
115: /* SEGMENTO POR DEFECTO (Fichero IA16-ubis.isa) */
116: #define NO_SEG 0
117: #define CS 1
118: #define SS 2
119: #define DS 3
120: #define ES 4
121:
122: /* FUNCIÓN DE LA UBICACIÓN (Fichero IA16-ubis.isa) */
123: #define DATOS 0
124: #define PTR_MEM 1
125: #define PTR_PILA 2
126: #define BANDERAS 3
127: #define ACCESOS_MEM 4
128: #define OTROS 5
129:
130: /* SALTOS */
131: #define INCONDICIONAL 0
132: #define NO_SALTO 1
133: #define TOMADO 2
134: #define NOTOMADO 3
135:
136: /* TIPOS DE DEPENDENCIAS */
137: #define RW 0 /* verdadera o lectura después de escritura */
138: #define WR 1 /* antidependencia o escritura después de lectura */
139: #define WW 2 /* salida o escritura después de escritura */
140:
141: /* TIPOS DE DATOS */
142: #define DATOSEXP 10 /* datos explícitos */
143: #define DATOSIMP 11 /* datos implícitos */
144: #define DIREXP 20 /* direcciones explícitos */
145: #define DIRIMP 21 /* direcciones implícitos */
146: #define PILAEXP 30 /* pila explícitos */
147: #define PILAIMP 31 /* pila implícitos */
148: #define CCEXP 40 /* códigos de condición explícitos */
149: #define CCIMP 41 /* códigos de condición implícitos */
150:
151: /* FORMATO ENSAMBLADOR */
152: #define INTEL 0 /* formato de instrucción ensamblador INTEL */
153: #define ATT 1 /* formato de instrucción ensamblador ATT */
154:
155:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>