Tecnología

Inicio

Cómo hacer referencia a un byte en la memoria de trabajo en COBOL

Cómo hacer referencia a un byte en la memoria de trabajo en COBOL


El lenguaje Common Business-Oriented, COBOL, ofrece una variedad de maneras de acceder a los datos en la memoria. En COBOL, se definen los elementos de datos tales como registros, contadores y variables temporales de matemáticas en una zona conocida como la sección de almacenamiento de trabajo de la División de Datos. Una vez definido, utiliza las variables simplemente haciendo referencia a ellos por su nombre. Si necesita hacer referencia a un byte dentro de una variable, configurar una variable subsiguiente utilizando la cláusula "redefine" de COBOL. Si crea la nueva variable como una matriz, se puede hacer referencia a cualquier byte en la primera variable.

Instrucciones

1 Crear una variable de memoria de almacenamiento de trabajo, como en el siguiente ejemplo:

SECCIÓN DE TRABAJO DE ALMACENAMIENTO.

01 DISPLAY-VARIABLES.
05 DISPLAY-AREA PIC X(30).

Esto establece una variable llamada "DISPLAY-área".

2 Definir una nueva variable después del primer uso de la cláusula REDEFINES. Esta variable es una matriz. Se hace referencia a los mismos datos que la primera variable con el nuevo nombre.

05 DISPLAY-BYTES REDEFINES DISPLAY-AREA
OCCURS 30 TIMES INDEXED BY DISPLAY-INDEX
PIC X(1).

El "indexado por" cláusula define una variable de índice. Aún no se define en otro lugar en el almacenamiento de trabajo; que eso genere un error. El tamaño del campo original, DISPLAY-AREA, es el mismo que DISPLAY-BYTES que redefine la misma. Un campo que tiene un byte que ocurre 30 veces es el mismo que un campo 30 bytes.

3 Configurar un campo de almacenamiento de trabajo de un byte en la que recibir los datos, como se ilustra en este ejemplo:

05 SINGLE-BYTE-FIELD PIC X(1).

4 Mover algunos datos a la primera variable de la "División de Procedimiento" de su programa, como en el siguiente ejemplo:

MOVE INPUT-RECORD TO DISPLAY-AREA.

5 Establecer el valor del índice de matriz para elegir el byte que desea. Esta línea debe seguir a la anterior en la División Procedimiento de su programa. En COBOL, a diferencia de la mayoría de otros idiomas además del Fortran, el primer elemento tiene un índice de uno, no es cero. Así que si quiere hacer referencia al primer byte en el campo, establecer el índice a uno, como se muestra en el siguiente ejemplo:

SET DISPLAY-INDEX TO 1.

6 Mueva el byte que usted haya seleccionado para el campo se configura para recibir los datos. Para ello, se especifica el campo de matriz y su índice asociado como en la siguiente declaración:

MOVE DISPLAY-BYTES (DISPLAY-INDEX) TO SINGLE-BYTE-FIELD.

Consejos y advertencias

  • Al volver a definir un campo de almacenamiento de trabajo con otro, el campo redefinición tiene el mismo número de nivel como el campo original. En estos ejemplos, el nivel es 05.