Die Common Business - Oriented Language , COBOL, bietet eine Vielzahl von Möglichkeiten, um Daten im Speicher zuzugreifen . In COBOL, definieren Sie Datenelemente wie Schallplatten , Zähler und temporäre math Variablen in einem Gebiet namens den Arbeitsspeicher Abschnitt des Data Abteilung . Einmal definiert , verwenden Sie die Variablen einfach durch Bezugnahme auf ihren Namen. Wenn Sie ein Byte in einer Variable verweisen müssen , die Einrichtung eines weiteren Variable mit der COBOL " REDEFINES "-Klausel . Wenn Sie die neue Variable als Array zu erstellen , können Sie auf jedes einzelne Byte in der ersten Variablen . Anleitung
1
erstellen Speichervariable in Arbeitsspeicher , wie im folgenden Beispiel :
WORKING-STORAGE SECTION.01 DISPLAY - VARIABLES.05 DISPLAY -AREA PIC X (30) .
Dies setzt eine Variable namens "DISPLAY -AREA . "
2
Definieren Sie eine neue Variable nach der ersten Verwendung des REDEFINES Klausel. Diese Variable ist ein Array . Es bezieht sich auf die gleichen Daten wie die erste Variable mit dem neuen Namen.
05 DISPLAY-BY TES REDEFINES DISPLAY - AREAOCCURS 30 mal geordnet nach DISPLAY - INDEXPIC X (1) .
" Nach indizierten " Klausel definiert einen Index variabel. Sie definieren nicht an anderer Stelle in Arbeitsspeicher , da dies einen Fehler zu erzeugen. Die Größe des ursprünglichen Feldes , DISPLAY -AREA , ist die gleiche wie DISPLAY - Bytes, die es neu definiert. Ein Feld mit einem Byte auftretende 30-mal ist das gleiche wie ein 30 -Byte-Feld .
3
Richten Sie einen Ein-Byte Arbeitsspeicher Feld, in dem die Daten empfangen , wie in diesem Beispiel veranschaulicht : .
05 SINGLE-BYT E -FIELD PIC X (1)
4
verschieben Sie einige Daten an den ersten Variable in der "Procedure -Abteilung" des Programms, wie in der folgenden Beispiel: .
MOVE INPUT -RECORD TO DISPLAY -AREA
5
setzen Sie den Wert des Array-Index , um die Byte zu wählen. Diese Linie sollte nach dem vorherigen in Ihrem Programm die Vorgehensweise der Division . In COBOL, im Gegensatz zu den meisten anderen Sprachen außer Fortran, hat das erste Element einen Index von einem, nicht Null ist. Also, wenn Sie das erste Byte in dem Feld verweisen möchten , stellen Sie den Index bis zu einem , wie im folgenden Beispiel gezeigt:
SET DISPLAY -INDEX TO 1
6
Verschieben. das Byte haben Sie gerade auf den Bereich richten Sie die Daten empfangen ausgewählt . Um dies zu tun , geben Sie den Array-Feld und den zugehörigen Index wie in der folgenden Aussage :
MOVE DISPLAY - Bytes ( DISPLAY -INDEX ) TO Single-Byte -FIELD
.