Definisjon av COBOL Comp-3

Definisjon av COBOL Comp-3


Den COBOL programmeringsspråk definerer alle minne variabler i data Division, en av fire store divisjoner språket krever av hvert program. I data divisjon, har hver variabel et navn, en størrelse og et format. Hvis et program trenger for å utføre regnestykket på tall, bruke Comp-3-format, som lagrer numeriske data i pakket desimal form.

desimal Math

COBOL har en flere måter å representere tall i minnet: i et tegnvisningsformat, som heltall og som en pakket desimal. Du kan skrive inn, vise og skrive ut tall i karakter format, men du kan ikke utføre regnestykket på dem. Du kan gjøre regnestykket på heltall, men de har ikke desimaler. Comp-3 pakket desimal format lar deg utføre regnestykket på tall med desimaler, for eksempel dollar mengder, priser og brøk mengder. For eksempel, multipliserer en lønn beregning en times-worked variabel ved en betal-rate variabel, plassere resultatet i en brutto-lønn variabel. Arbeidstakers timelønnen rate og brutto lønn er i dollar og cent. Hennes arbeidstimer er i desimaltall timer. Disse variablene er perfekte kandidater til Comp-3-format.

Pakket versus Skjerm desimal

Internt datamaskinen butikker en desimal siffer i hver halvdel-byte av en pakket desimal variabel. Dette sparer minne og hastigheter beregninger. En skjerm desimal felt, for eksempel for utskrift og skjerm, bruker ett siffer per byte. I pakket desimal, gjør litt ordninger ikke samsvarer med vise tegn, så hvis du prøver å vise et Comp-tre felt, får du vrøvl tegn.

bilde punkt

Hver variabel i Data Division har et bilde klausul som definerer hvordan datamaskinen lagrer og bruker informasjon. Bildet klausulen setter variabel størrelse, desimaltegn og andre funksjoner. For Comp-3-format, kan COBOL bare visse bildet klausul tegn: S, 9 og V. A "9" representerer et siffer, "V" lokaliserer den implisitte desimaltegn i variabelen og en "S" forteller COBOL du vil for å holde rede på antall tegn. COBOL bruker en "V" i stedet for en periode for å indikere at den ikke lagrer selve desimaltegnet karakter i en Comp-tre felt. Hvis du utelater "S" for variabelen tegn, antar COBOL den inneholder bare positive tall.

maksimal størrelse

COBOL begrenser Comp-3 variabler til et maksimum på 18 sifre, i tillegg til skiltet. Bildet punkt for dette er S9 (18). Du kan finne implisitt desimal punkt hvor som helst innenfor 18 siffer, slik at bildet klausul S9 (16) V99 er også gyldig. Merk at "V" for implisitt desimal punktet ikke bruke opp et desimaltall.

Bruk

Du finner Comp-3 variabler i begge dataposter og i arbeidsmiljø-Storage Seksjon for data divisjon, men aldri i trykte eller vises data, da disse krever tegnfelt. COBOL sjekker hvilken type data som beveger seg inn i en Comp-tre variable. Hvis et program feilaktig setter navn eller andre tegn data i en Comp-tre felt, viser COBOL en feil og stopper programmet.