01-Cobol-基礎(chǔ)知識講義_第1頁
01-Cobol-基礎(chǔ)知識講義_第2頁
01-Cobol-基礎(chǔ)知識講義_第3頁
01-Cobol-基礎(chǔ)知識講義_第4頁
01-Cobol-基礎(chǔ)知識講義_第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第一章

關(guān)于COBOL的初步知一.COBOL語言的特點(diǎn)COBOL是Business-OrientedLanguage(公用面向商業(yè)的語言)的縮寫,主要供數(shù)據(jù)處理、數(shù)據(jù)收集及分析之用。COBOL自60年代初開始廣泛應(yīng)用于計(jì)算機(jī)應(yīng)用領(lǐng)域(商業(yè)和其他領(lǐng)域上,除了商業(yè)之外,各種管理工作都廣泛使用COBOL,如各種統(tǒng)計(jì)工作,財(cái)會(huì)工作,企業(yè)計(jì)劃編制,作業(yè)制,情報(bào)檢索,人事管理等COBOL針商世界的使用,是真正商用應(yīng)用程序開發(fā)的首選語言。適于數(shù)據(jù)處理領(lǐng)域采用英語語法的高級語言,可讀性、可維護(hù)性、可移植性較強(qiáng)通用性強(qiáng),標(biāo)準(zhǔn)化程度較高.3結(jié)構(gòu)嚴(yán)謹(jǐn),層次分明.4缺點(diǎn)是比較繁瑣最簡單的COBOL程序介紹.例1:IDENTIFICATIONDIVISION.(標(biāo)識部)PROGRAM-ID.EXAM1.(程序標(biāo)識段)ENVIRONMENTDIVISION.(設(shè)備部)DATADIVISION.(數(shù)據(jù)部)PROCEDUREDIVISION.(過程部)A.DISPLAY‘THISISACOBOLPROGRAM.STOPRUN.例2:IDENTIFICATIONDIVISION.(標(biāo)識部)PROGRAM-ID.EXAM2.(程序標(biāo)識段)ENVIRONMENTDIVISION.(設(shè)備部)DATADIVISION.(數(shù)據(jù)部)WORKING-STORAGESECTION.(工作單元節(jié))77APICTUREIS9(3).(對A進(jìn)行描述)77BPICTUREIS9(3).(對B進(jìn)行描述)PROCEDUREDIVISION.(過程部)S.ACCEPTA.(輸入A值)ACCEPTB.(輸入B值)ADDATOB.(A+B->B)DISPLAYA,B.(顯示A和B值)STOPRUN.三.COBOL程序的結(jié)構(gòu)1.部每個(gè)程序都包括四個(gè)部:IDENTIFICATIONDIVISION(標(biāo)識部)提供程序的一般性文檔說明,主要用來指定源程序名。ENVIRONMENTDIVISION(環(huán)境部列出程序中所用到的件序中不需要外部文件時(shí)環(huán)境部為空可以省略部標(biāo)題DATADIVISION(數(shù)據(jù)部)程序中所用到的全部數(shù)據(jù)(包括:文件數(shù)據(jù)—用于輸入輸出、靜態(tài)數(shù)據(jù)、參數(shù)等)都應(yīng)在數(shù)據(jù)部中說明它們的類型和所占內(nèi)存的情況。PROCEDUREDIVISION(過程部)包含構(gòu)成程序的過程性語句,用來給出程序要執(zhí)行的指令,使計(jì)算機(jī)產(chǎn)生相應(yīng)的操。2.節(jié)和標(biāo)識部下只有各個(gè)段。除標(biāo)識部以外,每個(gè)部下可以有若干個(gè)節(jié)SECTION個(gè)節(jié)以“節(jié)頭”標(biāo)識。每個(gè)節(jié)下又可包括若干段PARAGRAPH個(gè)段用“段名”標(biāo)識。各個(gè)段內(nèi)有各種COBOL元。3.句子語句和子句在過程部中,每一段由若干個(gè)句子Sentence組成。一個(gè)句子是以英文句號來結(jié)束的。句子又由語

句(Statement)組成。一個(gè)語中又可以包含若干個(gè)子句Clause注意:部標(biāo)題、節(jié)標(biāo)題、段名、數(shù)據(jù)項(xiàng)目描述及句子后必須用英文句號結(jié)束,否則程序無法編。4.描述(描述款目)在數(shù)據(jù)部中有若干個(gè)節(jié),每個(gè)節(jié)中有若干個(gè)描述體,每個(gè)描述體又有若干個(gè)子句構(gòu)成。四.

源程序的書寫格式1.1~6列為“序號區(qū)6位數(shù)序號,不是程序本身的內(nèi)容。序號不是必須的,但其所占區(qū)域要保留。2.第7列,為“指示符區(qū)(續(xù)標(biāo)志區(qū)”表示本行是緊接在上一行的后面或/表示本行為注釋行”表示本為調(diào)試行。3.列為A區(qū)頭節(jié)頭,段頭,層號1,號77以及件描述符FD,程序結(jié)束標(biāo)等應(yīng)從A區(qū)始書寫,但不一定從第8列開始寫。4.12~72列(現(xiàn)在有時(shí)廠家規(guī)可到列“”區(qū),過程部中的句子只能從B區(qū)始書寫5.73~80列,為“注釋區(qū)在寫程序時(shí),應(yīng)注意以下幾點(diǎn):1.大寫或小寫字母均可,習(xí)慣大寫字母。2.相鄰的兩個(gè)字之間必須留一以上的空格。3.運(yùn)算符和等號左右兩邊必須留一個(gè)空格。4.逗號,句號,分號的左邊不留空格,而右邊應(yīng)有空格。五.COBOL字符和COBOL單字COBOL字符包括以下字符:0~9,a~z,A~Z,+-*/=,.’”(<>$空格COBOL單字三種:保留字、用戶自定義字及系統(tǒng)名稱。COBOL單字規(guī)則如下:1.字長1~30個(gè)字符之間。2.只能字母,數(shù)字和連字符-組成,第一個(gè)和最后一個(gè)字符不能用連字符。3.字中能出現(xiàn)空格。4.小寫母與大寫字母等價(jià)。5.不能保留字作為用戶定義和系統(tǒng)名稱,但用戶定義字和系統(tǒng)名稱可以用同一個(gè)單詞。用戶自定義字:文件、數(shù)據(jù)、標(biāo)號、程序等所取的名稱。系統(tǒng)名稱COBOL保字于操作環(huán)境通信COBOL廠定義為ComputernameImplementersname、Language。保留字:有300多。如:、ACCEPT、ADD、BEFORE、DATA。六.

常量1.?dāng)?shù)值量(數(shù)字直接數(shù))例:123,+45.67,-89.652.非數(shù)常量(非數(shù)字直接數(shù):符串內(nèi)的引號用兩個(gè)連續(xù)引號表示。例:’abcd’,’Expired’,3.象征量:用保留字表示某常用常直接數(shù)。例:ZEROZEROSZEROESSPACESPACESHIGH-VALUEHIGH-VALUESLOW-VALUELOW-VALUESQUOTEQUOTESALL常量七CBOL處理數(shù)據(jù)的特:層次的概念;記錄和文件的概念。八.程序本的復(fù)制與替換操作1.語COPY語用COBOL源文text-name換從COPY開始到終止句號之前的內(nèi)容。2.REPLACE語REPLACE語將COBOL源程某段中的文本進(jìn)行替換。

替換從REPLACE語的第一個(gè)格開始,到REPLACEOFF語結(jié)束。第二章

標(biāo)識部和環(huán)境部一.

標(biāo)識部(IDENTIFICATIONDIVISION)(一)必寫部分IDENTIFICATIONDIVISION.PROGRAM-ID.程名(二)任選部分一般格式:[AUTHOR.作者姓名][INSTALLATION.設(shè)計(jì)個(gè)程序公司或部門][DATE-WRITTEN.編寫期,可入修訂史,修改日期、原因及人員][DATE-COMPILED.編譯期[SECURITY.保密程度的描述]注:標(biāo)識部中的段標(biāo)題只能按部描述中指定的順序出現(xiàn)。3.環(huán)境部(ENVIRONMENTDIVISION)環(huán)境部指定程序中與特定計(jì)算機(jī)或操作系統(tǒng)相關(guān)的方面,指明用到哪些設(shè)備,哪些文件,將程序用到的內(nèi)部文件名與外部文件(或外部設(shè)備)聯(lián)系起來。如果程序不需要任何環(huán)境部提供的項(xiàng)目則可以省略環(huán)境部。一般格式:ENVIRONMENTDIVISION.CONFIGURATIONSECTION.SOURCE-COMPUTER.OBJECT-COMPUTER.SPECIAL-NAMES.INPUT-OUTPUTSECTION..I-O-CONTROL.1.配節(jié)

配置節(jié)輸入/輸出節(jié)包括SOURCE-COMPUTER,OBJECT-COMPUTER和SPECIAL-NAMES(專用名段SOURCE-COMPUTER段標(biāo)識編譯程的計(jì)算機(jī)。若該段省略,則編譯程序的計(jì)算機(jī)是源計(jì)算機(jī)。如果指定WITHDEBUGGINGMODE從句則編譯所有源調(diào)試行,否則把調(diào)試行作為說明語句。OBJECT-COMPUTER段識編譯程序運(yùn)行的計(jì)算機(jī)。SPECIAL-NAMES段于把系統(tǒng)中規(guī)定的一些設(shè)備名或功能名或符號改為用戶自己指定的名字或符號。SPECIAL-NAMES.CLASSREAL-NUMBERIS"0123456789+-."用于類條件測試DECIMAL-POINTISCOMMA.逗用作小數(shù)點(diǎn),句號用作編輯符CURRENCYSIGNIS“Y”.表貨幣符號的字符DEFAULT$2.輸輸出節(jié)輸入輸出節(jié)只用于文件,它把內(nèi)部文件與外部文件(包括外部設(shè)備)聯(lián)系起來。它有兩個(gè)段:文件控制段:段是給文件命名,指出存放該文件的外部設(shè)備及其他有關(guān)文件控制信息。對每個(gè)文件包含一個(gè)目。.SELECTFILE-1ASSIGNTO“TSELECTFILE-2ASSIGNTODISK.SELECTFILE-3ASSIGNTOPRINTER.輸入輸出控制段:I-O-CONTROL段包定義程序返點(diǎn),不同文件共享的內(nèi)存區(qū)和多文件卷中文件位置的項(xiàng)目。第三章

數(shù)據(jù)部數(shù)據(jù)部的節(jié).一數(shù)據(jù)部包含程序引用的所有數(shù)據(jù)的定義,如文件記錄、變量、表格和報(bào)表。COBOL將據(jù)部分成節(jié),每個(gè)節(jié)是可選的,但程序中的節(jié)應(yīng)按指定順序定義。DATADIVISION.

FILESECTION.WORKING-STORAGESECTION.LINKAGESECTION.COMMUNICATIONSECTION.REPORTSECTION.1.文件

文件節(jié)工作存儲節(jié)連接節(jié)通信節(jié)報(bào)表節(jié)程序中每一個(gè)輸入或輸出文件都要在文件節(jié)中定義。包括:(1)文名和文件屬性。(2)文中包括的記錄名。(3)每記錄中數(shù)據(jù)的層次關(guān)系。(4)記中各數(shù)據(jù)項(xiàng)的數(shù)據(jù)形式和占內(nèi)存的大小。DATADIVISION.數(shù)據(jù)部FILESECTION.文件節(jié)FDFILE-1.(文件名)LABELRECORDISOMITTEDDATARECORDISSTUDENT-SCORE.01STUDENT-SCORE.記名03NAMEPICX(10).03NUMPIC9(06).03CORUSE-SCORE.05CORUSE-1PIC9(03).05CORUSE-2PIC9(03).05CORUSE-3PIC9(03).2.工作儲節(jié)包含程序所需的臨時(shí)結(jié)果和初始化靜態(tài)數(shù)據(jù)的數(shù)據(jù)定義。WORKING-STORAGESECTION.77XPICS99VALUE-21.01APIC9(08).01B.03B1PICX(04).03B2PICX(02).03B3PICX(02).3.連接本節(jié)只用于子程序,包含調(diào)用程序傳遞的數(shù)據(jù)(即參數(shù)LINKAGESECTION.01LCMIN.COPYRCI001.01LCMOT.COPYRCJ001.4.通信通信節(jié)描述作為程序間接口的數(shù)據(jù)和消息控制系統(tǒng)實(shí)現(xiàn)與通信設(shè)備相關(guān)的消息分析的COBOL方。屬過時(shí)部分,很少使用。5.報(bào)表報(bào)表節(jié)描述實(shí)現(xiàn)COBOL報(bào)編寫工具的系統(tǒng)所需的數(shù)據(jù)。REPORTSECTION.RDEMPLOYEE-REPORTPAGELIMIT60LINESHEADING1FOOTING58FIRSTDETAIL3.二.COBOL數(shù)據(jù)的類型及層次(一)數(shù)據(jù)類型(1)numeric(數(shù)字)(2)numeric-edited(字編輯)

(3(字母)(4)alphanumeric(母數(shù)字(5)alphanumeric-edited(母數(shù)字編輯)所有數(shù)據(jù)類型缺省作為字符串存放在內(nèi)存中,唯一可以用不同方式存儲的數(shù)據(jù)類別是數(shù)字型數(shù)(通過USAGE子句數(shù)字型據(jù)制訂不同方式存儲,提高計(jì)算效率。(二)數(shù)據(jù)的層次和層號COBOL中有從屬關(guān)系的數(shù)據(jù)用次關(guān)系來描述。數(shù)據(jù)的層次結(jié)構(gòu)是:記錄—組合項(xiàng)—基本項(xiàng)。層次規(guī)定如下:(1)用來描述數(shù)據(jù)的層次結(jié)構(gòu)層號從01開始到49結(jié),即可用的層號為。(2)從屬項(xiàng)的層號比其上屬項(xiàng)層號高。(3)如果幾個(gè)數(shù)據(jù)項(xiàng)都從屬于一組合項(xiàng)但互不從屬,則這幾個(gè)數(shù)據(jù)項(xiàng)應(yīng)具有相同的層號。(4)77層項(xiàng)目用于某個(gè)組的數(shù)項(xiàng),如程序中的臨時(shí)變量。(5層88層特殊層88層對特殊數(shù)據(jù)項(xiàng)目條件名保留的講過程部的條件語句時(shí)詳細(xì)介紹層用于更明現(xiàn)數(shù)據(jù)項(xiàng)或數(shù)據(jù)項(xiàng)組RENAMES語時(shí)再介紹(三)限定數(shù)據(jù)(四)FILLER關(guān)鍵字需要定義部分記錄,但這部分在程序中永遠(yuǎn)不會(huì)用到,則可用保留字FILLER占這個(gè)記錄部分的位置。舉例:一個(gè)打印用的記錄行,有固定的空格時(shí)。如果組項(xiàng)目不需按名稱引用,則可以用FILLER鍵字作為數(shù)據(jù)名,不用生成組名,但I(xiàn)LLER組中定義的每個(gè)數(shù)據(jù)項(xiàng)應(yīng)當(dāng)唯一。三.數(shù)據(jù)部用子句(一)PIC子句PIC是的寫PIC子用來描述每一個(gè)基本數(shù)據(jù)項(xiàng),定義基本項(xiàng)目的具體長度、格式和數(shù)據(jù)類型。01A.03A1PIC9999.03A2PICAAAA.03A3PICXXXX.(A)字母數(shù)據(jù)字母數(shù)據(jù)限于字母表中使用的字符和空格符,用A述符表示,每個(gè)字符用一個(gè)A表。01XPICA(4).MOVE‘ABC’TOX.(B)字?jǐn)?shù)據(jù)(字母數(shù)字)字符數(shù)據(jù)可以包含計(jì)算機(jī)字符集中的任何字符符數(shù)據(jù)項(xiàng)目的格式字符串可用用A、X、9表,至少要包含一個(gè)是數(shù)值類的,不能用于運(yùn)算。01XPICX(4).01YPICX(8).01ZPICA(5)X9(2).MOVE’BOOK’TOXMOVE’1234’TOXMOVE’COBOL-85’TOYMOVE’COBOL-85’TOZ(C)字編輯數(shù)據(jù)(字母數(shù)字)要把字符數(shù)據(jù)格式化成特定形式,則可以用字符編輯數(shù)據(jù)。字符編輯數(shù)據(jù)用特定字符表示格式字符編輯數(shù)據(jù)項(xiàng)目的格式字符串可用A、、B、0和表示至少要有一個(gè)A或和個(gè)B(格)或(0)或(杠01EDITED-DATEPICTUREIS99/XXX/9999.MOVE’05May1909’TOEDITED-DATE則EDITED-DATE的為05/May/1909(D)數(shù)字?jǐn)?shù)據(jù)數(shù)字?jǐn)?shù)據(jù)由數(shù)字組成,包括其隱含的小數(shù)點(diǎn)和操作符號,表示的是實(shí)際數(shù)字,可用數(shù)據(jù)運(yùn)算。數(shù)字?jǐn)?shù)據(jù)只能包含字符9,V,S組合,至少要有一個(gè),最多18個(gè)9,至少一個(gè)V和S。

1”描述符表示數(shù)字存放位,不放入空,不能表示小數(shù)和負(fù)數(shù)。算進(jìn)項(xiàng)目長度中。描述數(shù)內(nèi)中表示長度數(shù)范圍01XPIC9991231230~99901YPIC9(4)4567456740~999901ZPIC9912.3412201TPIC99-12.341222”描述符指出在數(shù)據(jù)中隱含的小數(shù)點(diǎn)的位置,不占內(nèi)存,不算進(jìn)項(xiàng)目長度中。運(yùn)算時(shí)按隱含的小數(shù)點(diǎn)位置對準(zhǔn)進(jìn)行運(yùn)算。顯示時(shí)只顯示內(nèi)存中的內(nèi)容,不顯示小數(shù)點(diǎn)。不包含的項(xiàng)假設(shè)的小數(shù)點(diǎn)位最右邊。描述數(shù)內(nèi)中表示長數(shù)范圍01XPIC99V99.87.5875040.00~99.9901YPIC9(3)V9(2).7817810050.000~999.9901ZPICV9991.23423401TPIC999V12312333”述符表示數(shù)據(jù)項(xiàng)的比例因子,不占內(nèi)存,不算進(jìn)項(xiàng)目長度中。當(dāng)數(shù)值很大,前面或后面若干位,為了節(jié)省內(nèi)存可以用“P”描述只能現(xiàn)在開頭或末尾,而不能同時(shí)在兩處出現(xiàn)。顯示時(shí)只顯示內(nèi)存中實(shí)際存放的數(shù)字而不顯示隱含的P(即0描述數(shù)內(nèi)中表示長度數(shù)范圍01XPIC9P(4).1000011~9*1000001YPICPPP99.0.000232320.00001~0.000994”描述符表示一個(gè)帶符號的數(shù),符號不算如項(xiàng)目長度中,除非包括SIGNISSEPARATE從。如有S則必須是最左邊一個(gè)描述符。如無S則總是表示為正值。描述

數(shù)值內(nèi)存中表示長數(shù)值范圍01XPICS9(3)V9(2)126.89126895-999.99~999.9901YPICS9(3)V9(2)-1126.897126895(E)數(shù)編輯數(shù)據(jù)為了使輸出數(shù)據(jù)更易讀,可以定義數(shù)字編輯數(shù)據(jù)。數(shù)字編輯數(shù)據(jù)可以用于顯示數(shù)字,但所有計(jì)中只能用數(shù)字?jǐn)?shù)據(jù)。數(shù)字編輯數(shù)據(jù)項(xiàng)目的格式字符串只能包含字符9、Z、0、/、V、DB的合。它必須包含1~18個(gè)9字,包含至少一個(gè)除、P、V外的字符。1”描述符表示插入小數(shù)點(diǎn)的位置,只能在格式字符串中使用一次,不能與V和P同時(shí)使用。01WPIC9(3).9(2).01VPIC9(3)V9(2).MOVE123.45TOVMOVEVTOW錯(cuò)誤:WPICS9(3).9(2).2符表示插入逗號的位置,盡管它通常作千位分隔符,但也可以插入格式字符串其他地方。01WPIC999,999.99.MOVE123456.78TOW輸出表示:123,456.783”描述符表示插入’’4”描述符表示插入空格。01WPIC9(3).01VPICB9(3)B.MOVE123TOW.MOVEWTOV.5”或“”述符表示在輸出的數(shù)值前(或后)加正號或負(fù)號。當(dāng)用“”時(shí),不論數(shù)值為正或負(fù)一律加符號。當(dāng)用“-”時(shí),當(dāng)數(shù)值為正時(shí),數(shù)值空一格,數(shù)值為負(fù)時(shí),加一負(fù)號。

01XPICS99.01YPIC+99.01ZPIC-99.01UPIC99+.01VPIC99-.6.插入“”01APIC$999.99.01BPIC+$999.99.01CPIC-$999.99.7.浮點(diǎn)插入形式(浮動(dòng)插入正負(fù)號和“”)“$”,“+”,“-”位置是動(dòng)的,能夠使符號緊挨著數(shù)字之前輸出。在編輯型數(shù)據(jù)的描述中,指定浮動(dòng)插入的字符個(gè)數(shù)應(yīng)足夠,以免數(shù)據(jù)被截?cái)?。浮?dòng)字符前不能再出現(xiàn)其它符號,即浮動(dòng)符應(yīng)為第一個(gè)描述字符。01A1PICS9(3)V99.01A2PIC++++.99.01A3PIC$$$$.99.01A4PIC++++.++.01A5PIC$$$$.$$.錯(cuò)誤:01A1PIC+$$.99.8.零抑制格式(取消高位零,用Z”和“”描述符)01A1PICS9(3)V99.01A2PICZZZZ.99.01A3PIC****.99.(1)不同時(shí)用Z浮和,-,浮動(dòng)錯(cuò)誤:ZZ$$9.99或++ZZ.99(2)單個(gè)的+,-,$可以與Z或連用01A1PIC+ZZZ.99.01A2PIC-*(3).99.01A3PIC$ZZZ.99.(3)如果使“Z”或“”應(yīng)所有的數(shù)字字符,當(dāng)數(shù)值為0時(shí)則所用數(shù)字位全部由空格*替。小數(shù)點(diǎn)位置上,由空格代替(用保.時(shí)01A1PICZZZ.ZZ.01A2PIC***.**.(4)可與“用01A1PICZ,ZZZ.99.9.插入“”“CR”字符(DEBIT,借方)和(CREDIT貸方)只能用作固定插入,而且只作最后一個(gè)描述符號。當(dāng)數(shù)值為負(fù)時(shí),在編輯型數(shù)據(jù)項(xiàng)中最后兩個(gè)字節(jié)中置CR數(shù)值為正時(shí),此兩字節(jié)留空格。01A1PIC$9(3).99DB.01A2PIC$999.99CR.10.PIC子小結(jié)描述字符含9AXVSP$.

表示一個(gè)數(shù)字位置表示一個(gè)字母位置表示一個(gè)字符位置表示隱含的小數(shù)點(diǎn)位置表示數(shù)值數(shù)據(jù)帶符號表示十進(jìn)比例換算插入貨幣號插入小數(shù)點(diǎn)位置,插逗號位置+-Z*B0

一律加符號對負(fù)數(shù)加負(fù)號,對正數(shù)前留一空格取消高位零,用空格代替取消高位零,用代插入空格插入零(方)數(shù)為負(fù)時(shí),在數(shù)據(jù)后面插入,為正時(shí),空兩格

(方)(二)REDEFINES子句

數(shù)據(jù)為負(fù)時(shí),在數(shù)據(jù)后面插入CR為正時(shí),空兩格REDEFINES子句以用不同數(shù)據(jù)描述同一計(jì)算機(jī)內(nèi)存,適用于基本數(shù)據(jù)項(xiàng)和組數(shù)據(jù)項(xiàng)。層號數(shù)名1REDEFINES數(shù)據(jù)名202A.03A1PIC9(4).03A2PICX(6).03A3PICX(4).02BREDEFINESA.03B1PICX(5).03B2PIC9(6).03B3PIC99V9.02CREDEFINESA.03C1PICX(5).03C2PICX(4).03C3PICX(5).規(guī)則)據(jù)名2與數(shù)名1的號必須相同。內(nèi)存中的值為數(shù)據(jù)名和據(jù)名2共。(2用REDEFINES子的描述應(yīng)緊跟在被重新定義的數(shù)據(jù)項(xiàng)的描述之后間不能插入其它項(xiàng)的說明。當(dāng)進(jìn)行多次重定義,必須緊跟出現(xiàn),而且要求使用最初定義的數(shù)據(jù)名。(3)不能用于文件節(jié)或報(bào)表節(jié)01層,用于工作單元節(jié)的01層(4)用REDEFINES子可以改數(shù)據(jù)的結(jié)構(gòu)REDEFINES從句義區(qū)域長度應(yīng)小于等于原區(qū)域長度。(5)REDEFINES子句應(yīng)在其它子之前。(6)使用REDEFINES子的數(shù)據(jù)項(xiàng)不能使用子句賦初值。(7)數(shù)據(jù)名2不包含OCCURS子句。03APICX(8)VALUE’ABCDEFGH’.03BREDEFINESA.05B1PICX(4).05B2PICX(4).(三)USAGE子句USAGE子可以指定計(jì)算機(jī)內(nèi)存的數(shù)據(jù)項(xiàng)格式,充分利用計(jì)算機(jī)內(nèi)存空間和算術(shù)功能USAGE句不影響項(xiàng)目的使用(但過程部的有語句將某些操作數(shù)限于某種USAGE從)。USAGE子句

可以用于基本和組數(shù)據(jù)項(xiàng)目。[USAGEISBINARYDISPLAYCOMPUTATIONALCOMPCOMPUTATIONAL-1COMP-1COMPUTATIONAL-2COMP-2COMPUTATIONAL-3COMP-3COMPUTATIONAL-4COMP-4COMPUTATIONAL-5COMP-5INDEXPACKED-DECIMAL缺省為DISPLAY。BINARY、COMPUTATIONAL、PACKED-DECIMAL只用于數(shù)字?jǐn)?shù)據(jù)項(xiàng)。BINARY指項(xiàng)目存放成二進(jìn)制數(shù)。在PIC子句描述字符個(gè)數(shù)為1~4時(shí)占內(nèi)存字節(jié)為;個(gè)數(shù)為5~9時(shí),占內(nèi)存字節(jié)為4;個(gè)數(shù)10~18時(shí)占內(nèi)存字節(jié)為8。COMPUTATIONAL由廠家定義。大選擇與BINARY相同。COMPUTATIONAL-1由家定義。大多定義為單精度內(nèi)部浮點(diǎn)數(shù)字項(xiàng),用內(nèi)存4Byte用PIC)

COMPUTATIONAL-2由家定義。大多定義為雙精度內(nèi)部浮點(diǎn)數(shù)字項(xiàng),用內(nèi)存8Byte用PIC)PACKED-DECIMAL指數(shù)字按縮和十進(jìn)制存放,以減少每個(gè)數(shù)字的存儲量。每個(gè)數(shù)字4位或每個(gè)節(jié)表示2個(gè)字。符號也占半個(gè)字節(jié),在最后面(無符號,用號,用1100號,用1101COMPUTATIONAL-3由家定義。大多選擇與PACKED-DECIMAL一。COMPUTATIONAL-4由家定義。大多選擇與PACKED-DECIMAL一。COMPUTATIONAL-5由家定義。類似于USAGE但在某些平臺上的字節(jié)順序相反。在支持尾字節(jié)順序的平臺上,COMP-5執(zhí)行速更快類似于COMP-5,但按大尾字節(jié)順序存放INDEX用法特殊用法定用項(xiàng)目作為表格索引INDEX用的項(xiàng)目只能在過程部的某些語句中,不能有PIC從句。注USAGE從用于組層時(shí)作用組中每個(gè)基本項(xiàng)目。如用BINARY時(shí)組中的所有基本項(xiàng)目都要數(shù)字。03APIC9(4)COMP.03BPIC9(4).03CCOMP.05C1PICS9(3).05C2PICS9(6).(四)SIGN子句SIGN子句可以指定格式字符串含S字符的數(shù)字?jǐn)?shù)據(jù)項(xiàng)中符號的位置。[SIGNIS]LEADING[SEPARATECHARACTER]TRAILING通過LEADING或來指符號在數(shù)字的第一位LEADING)或最后一位TRAILING)。號具體表示由廠家指定。如果有子,則符號用標(biāo)準(zhǔn)字+或表示,符號位記入數(shù)據(jù)項(xiàng)的長度。(五)OCCURS子句OCCURS子句指定數(shù)據(jù)項(xiàng)為固定項(xiàng)目數(shù)或可變項(xiàng)目數(shù)的表格(即數(shù)組OCCURS子不能用于01和層,以用于基本或組數(shù)據(jù)項(xiàng)目。詳細(xì)內(nèi)容見表格處理。(六)SYNCHRONIZED子句子指定基本數(shù)項(xiàng)在計(jì)算機(jī)內(nèi)存自然邊界上的對齊。指定SYNCHRONIZED子句時(shí)的具效果由廠家指定。可參看教科書的25章(七)JUSTIFIED子句JUSTIFIED

子句(簡稱JUST)只能用于非編的字母數(shù)字基本數(shù)據(jù)項(xiàng)。即數(shù)據(jù)放進(jìn)這個(gè)項(xiàng)目時(shí),它與最右邊的字符對齊。數(shù)據(jù)太長時(shí)左邊截尾,太短時(shí)則左邊填充。標(biāo)準(zhǔn)規(guī)則為與最左邊的字符對齊并在右邊截尾或填充。(八)BLANKWHENZERO子句BLANKWHENZERO子只能用于數(shù)字型或數(shù)字編輯型的基本項(xiàng)。使用時(shí),當(dāng)數(shù)據(jù)項(xiàng)的值為零時(shí),容改變?yōu)榭崭瘛?3API

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論