| Előszó | 15 |
| Komáromi Imre: Bevezetés | 17 |
| A PL/I nyelv története | 17 |
| A PL/I nyelv jellemzői | 19 |
| A D szintű PL/I jellemzői | 20 |
| Hardware- és software-környezet | 21 |
| A PL/I programok futtatása a DOS operációs rendszer alatt | 22 |
| A könyvben alkalmazott jelölések magyarázata | 26 |
| Koós-Hutás Mária: A nyelv elemei | 29 |
| A PL/I nyelv szerkezete | 29 |
| A 60-as karakterkészlet | 29 |
| Elhatároló jelek | 30 |
| Azonosítók | 31 |
| Konstansok | 32 |
| Az üres jel használata | 32 |
| Megjegyzések alkalmazása | 32 |
| Utasítások | 33 |
| A PL/I program szerkezete | 35 |
| Blokkszerkezet | 35 |
| A PL/I program írási szabályai | 36 |
| Komáromi Imre: Elemi adatok | 37 |
| Az adatok osztályozása | 37 |
| Aritmetikai adatok | 39 |
| Decimális fixpontos adatok | 41 |
| Bináris fixpontos adatok | 43 |
| Decimális lebegőpontos adatok | 46 |
| Bináris lebegőpontos adatok | 47 |
| Numerikus karakterlánc tipusú adatok | 48 |
| Lánc tipusú adatok | 50 |
| Karakterlánc tipusú adatok | 50 |
| Bitlánc tipusú adatok | 52 |
| A deklarációs utasítás | 53 |
| Bevezetés | 53 |
| Kezdőértékadás a deklarációs utasításban (INITIAL attributum) | 54 |
| Alapfeltételezés szerinti attributumok | 55 |
| Az alapfeltételezés (default) koncepciója | 55 |
| Az adatok alapfeltételezés szerinti attributumai | 56 |
| Komáromi Imre: Az értékadó utasítás. Elemi kifejezések | 59 |
| Az értékadó utasítás | 59 |
| Elemi kifejezések | 61 |
| Aritmetikai műveletek | 61 |
| Az aritmetikai műveletek végrehajtásának sorrendje (Prioritás) | 62 |
| Az aritmetikai műveletek eredménye | 64 |
| Bitláncműveletek | 65 |
| Hasonlítási műveletek | 68 |
| Karakterláncok és bitláncok egyesítése | 70 |
| A műveletek kombinációja | 72 |
| Az adatkonverzió koncepciója | 74 |
| Az adatkonverzió fogalma | 74 |
| Az adatátalakítási műveletek | 75 |
| Koós-Hutás Mária: Vezérlőutasítások. Az IF és a GOTO utasítás | 77 |
| Utasításcímkék | 77 |
| Címkekonstans | 77 |
| Címkeváltozó | 78 |
| Feltétel nélküli vezérlőutasítás. A GOTO utasítás | 79 |
| Feltételes vezérlőutasítás. Az IF utasítás | 81 |
| Az egyszerű DO utasítás | 88 |
| Koós-Hutás Mária: Adatcsoportok. Az Aligned, Unaligned és Defined attributum | 91 |
| Tömbök | 91 |
| Tömbök deklarációja | 92 |
| Hivatkozás a tömb elemeire | 92 |
| Kezdőértékadás tömböknél | 94 |
| Műveletek tömbökkel | 97 |
| Struktúrák | 99 |
| A struktúrák deklarációja | 100 |
| Hivatkozás a struktúra elemeire | 102 |
| Minősített nevek | 103 |
| Kezdőértékadás struktúráknak | 104 |
| Műveletek struktúrákkal | 105 |
| Az ALIGNED és UNALIGNED attributum | 107 |
| A DEFINED attributum | 112 |
| Koós-Hutás Mária: Megszakítások. Az on utasítás és az állapotprefixumok. A signal utasítás | 117 |
| Megszakítások | 117 |
| Megszakításkezelése a PL/I nyelvben | 117 |
| Az ON állapotok | 119 |
| Az ON utasítás | 120 |
| Állapotprefixumok | 121 |
| Az ON utasítás és az állapotprefixum kapcsolata | 121 |
| Az ON állapotok részletes tárgyalása | 122 |
| CONVERSION - konverziós hiba | 122 |
| FIXEDOVERFLOW - fixpontos túlcsordulás | 123 |
| OVERFLOW - kitevő-túlcsordulás | 123 |
| SIZE - mérethiba | 124 |
| UNDERFLOW - kitevő-alácsordulás | 125 |
| ZERODIVIDE - zérusosztás | 127 |
| ERROR - hibautasítás | 127 |
| A SIGNAL utasítás | 128 |
| Komáromi Imre: A DO utasítás | 131 |
| Bevezetés | 131 |
| Feltételes ciklusok szervezése: a DO WHILE utasítás | 133 |
| Ciklusszervezés előírt számú ismétléssel: a DO TO BY utasítás | 135 |
| Ciklusszervezés a ciklusváltozó előírt értékével | 138 |
| Összetett DO utasítások | 138 |
| A nem iterativ DO utasítás | 141 |
| Egymásba ágyazott ciklusok | 142 |
| Komáromi Imre: Adatátvitel I. rész: Bevezetés. Folyamatos módú adatátvitel | 145 |
| A fizikai és logikai adathalmazok általános tulajdonságai | 145 |
| Bevezetés | 145 |
| A fizikai adathalmaz fogalma | 145 |
| A file fogalma | 146 |
| Az adatátvitel módja | 147 |
| A file funkciója | 148 |
| A file fizikai környezete | 149 |
| A file-ok megnyitása (OPEN utasítás) | 154 |
| A file-ok lezárása (CLOSE utasítás) | 156 |
| Folyamatos módú adatátvitel | 157 |
| A folyamatos módú adatátvitel általános jellemzői | 157 |
| Listázott adatátvitel (GET LIST) | 161 |
| A file-vége (ENDFILE) állapot | 163 |
| Listázott adatkivitel (PUT LIST) | 164 |
| Szerkesztett adatátvitel (GET EDIT, PUT EDIT) | 168 |
| Standard file-ok használata a GET és PUT utasításokkal | 188 |
| PRINT attributum file-ok | 189 |
| Komáromi Imre: Adatátvitel II. rész: Rekord módú adatátvitel | 193 |
| A rekord módú adatátvitel általános jellemzői | 193 |
| A rekord módú file-ok funkciói | 193 |
| A file elérési módja: a SEQUENTIAL és a DIRECT attributumok | 193 |
| Soros szervezésű adathalmazok | 195 |
| A soros szervezésű adathalmazok általános tulajdonságai | 195 |
| A kötött hosszuságú (F formátumú) rekordok használata | 196 |
| A READ és a WRITE utasítások | 197 |
| Pufferezés: A BUFFERED attributum | 198 |
| Soros szervezésű adathalmazok egységrekordú berendezéseknél | 200 |
| Mágnesszalag soros szervezésű adathalmazai | 206 |
| Mágneslemez soros szervezésű adathalmazai | 208 |
| Pufferezetlen file-ok | 209 |
| Indexelt szervezésű adathalmazok | 209 |
| Az indexelt szervezésű adathalmazok általános jellemzői | 209 |
| A file deklarációja | 215 |
| Az indexelt adathalmaz létrehozása. A KEY állapot szerepe a létrehozáskor | 221 |
| Közvetlen visszakeresés | 222 |
| Szekvenciális visszakeresés. Kivételes állapotok a visszakereséskor | 222 |
| Felújítás közvetlen eléréssel | 223 |
| Felújítás szekvenciális eléréssel | 224 |
| Regionális szervezésű adathalmazok | 224 |
| A regionális szervezésű adathalmazok általános jellemzői | 224 |
| A file deklarációja | 227 |
| A regionális szervezésű adathalmaz létrehozása. A KEY állapot | 230 |
| Visszakeresés regionális szervezésű adathalmazból | 230 |
| Regionális szervezésű adathalmaz felújítása | 231 |
| Regionális szervezésű adathalmazok | 231 |
| A regionális szervezésű adathalmazok általános jellemzői | 231 |
| A file deklarációja | 233 |
| Regionális szervezésű adathalmaz létrehozása, visszakeresése és felújítása | 233 |
| Koós-Hutás Mária: Belső adatmozgatás. Szerkesztési műveletek | 235 |
| Belső adatmozgatás. A GET STRING és PUT STRING utasítás | 235 |
| Szerkesztési műveletek | 239 |
| PICTURE attributumú adatok | 243 |
| Karakterlánc tipusú adatok PICTURE specifikációja | 246 |
| Numerikus karakterlánc tipusú adatok PICTURE specifikációja | 246 |
| Számjegy- és tizedespont-poziciót jelölő karakterek | 247 |
| Zérusnyomást jelölő karakterek | 248 |
| Beékelődő karakterek | 249 |
| Előjelet és pénznemet jelölő karakterek | 250 |
| Hitel, követelés és felüllyukasztott előjel jelölése | 254 |
| Lebegőpontos számot jelölő karakterek | 255 |
| A PICTURE attributumú adatok felhasználása | 255 |
| Koós-Hutás Mária: A PL/I program blokkszerkezete | 259 |
| A blokkszerkezet előnyei | 259 |
| A PL/I program felépítése | 262 |
| A blokkok aktivizálása | 263 |
| BEGIN blokk | 263 |
| Eljárásblokk | 264 |
| A blokkok végrehajtásának befejezése | 267 |
| Eljárások befejeződése | 267 |
| A BEGIN blokkok befejeződése | 269 |
| Azonosítók hatásköre | 271 |
| Explicit deklaráció | 272 |
| Szövegkörnyezet alapján történő deklaráció | 274 |
| Implicit deklaráció | 275 |
| Információcsere a blokkok között. Az EXTERNAL és az INTERNAL attributum | 277 |
| Tárolási mód attributumok | 279 |
| Szubrutinok és függvények | 282 |
| Az ENTRY attributum | 282 |
| Paraméterek | 282 |
| Az aktuális és formális paraméterek kapcsolata | 284 |
| Szubrutinok használata | 285 |
| Függvények használata | 288 |
| Az ENTRY utasítás | 292 |
| Álargumentumok | 293 |
| A paraméterek tipusai | 294 |
| ON állapotok a blokkokban | 297 |
| Koós-Hutás Mária: A tárhozzárendelés módja | 301 |
| A program végrehajtásának fázisai | 301 |
| BASED attributum változók | 302 |
| Pointer tipusú változók | 303 |
| BASED tipusú változók alkalmazása | 305 |
| Komáromi Imre: Adatátvitel III. rész: Feldolgozás az I/O pufferekben. Kötetlen és változó hosszúságú rekordformátumok kezelése. A Display utasítás | 309 |
| Feldolgozás az I/O pufferekben (READ SET, LOCATE SET) | 309 |
| Bevezető példák | 309 |
| Feldolgozás az input pufferben (READ SET) | 312 |
| Feldolgozás az output pufferben | 314 |
| Változó hosszuságú rekordok kezelése - V formátum | 316 |
| Kötetlen hosszuságú rekordok kezelése - U formátum | 317 |
| A DISPLAY utasítás | 318 |
| Komáromi Imre: Beépített függvények | 319 |
| Bevezetés | 319 |
| A beépített függvények használata | 320 |
| A PL/I nyelv beépített függvényei | 321 |
| Bit- és karakterlánc-kezelő beépített függvények | 322 |
| Aritmetikai beépített függvények | 328 |
| Matematikai beépített függvények | 333 |
| Tömbkezelő beépített függvények | 334 |
| Egyéb beépített függvények | 336 |
| Pszeudováltozók | 337 |
| Koós-Hutás Mária: Adatkonverziók | 341 |
| Adatkonverzió kifejezések kiértékelésekor | 342 |
| A kifejezés értékének további konverziói | 343 |
| Aritmetikai konverzió | 343 |
| Tipuskonverzió | 344 |
| Táblázatok | 346 |
| Koós-Hutás Mária: Munkavezérlés. Nagy programok kezelése | 353 |
| A munkavezérlő nyelv utasításai | 353 |
| A munkavezérlő utasítások általános alakja | 353 |
| Az ASSGN utasítás | 354 |
| Az EXEC utasítás | 354 |
| A JOB utasítás | 355 |
| Az OPTION utasítás | 355 |
| A PROCESS utasítás | 356 |
| A TLBL utasítás | 357 |
| A DLBL utasítás | 358 |
| Az EXTENT utasítás | 359 |
| Az LBLBTYP utasítás | 360 |
| Az adatvége utasítás | 360 |
| A munkavége utasítás | 361 |
| A munkavezérlő utasítások alkalmazása | 361 |
| Fordítás | 361 |
| Fordítás, szerkesztés, végrehajtás | 361 |
| Katalogizálás | 362 |
| Katalogizálás a fáziskönyvtárba | 363 |
| Katalogizálás a modulkönyvtárba | 363 |
| Nagy programok kezelése (Overlay alkalmazása) | 366 |
| PL/I és ASSEMBLER nyelven írt rutinok kapcsolása | 370 |
| A regiszterhasználat konvenciói | 370 |
| A mentési terület tartalma | 370 |
| ASSEMBLER modul hívása | 371 |
| PL/I eljárás hívása | 374 |
| Hibakeresés eszközei, programtesztelés | 377 |
| Komáromi Imre: A szintaktikailag és szemantikailag helyes program fogalma | 377 |
| Komáromi Imre: A szintaktikai hibák kiküszöbölése | 378 |
| A program fordítás előtti ellenőrzése | 378 |
| A fordítóprogram mint hibakeresési segédeszköz | 378 |
| A fordítóprogram hibaüzenetei | 381 |
| Koós-Hutás Mária: A szemantikai hibák kiküszöbölése | 383 |
| Hibaüzenetek a végrehajtás közben | 383 |
| A DYNDUMP rutin | 385 |
| Nyomkövető rutin | 386 |
| Az IJKEXCH rutin | 387 |
| A tájtérkép kiiratása (DUMP) | 389 |
| Koós-Hutás Mária: A tár felosztása a PL/I program végrehajtásakor | 389 |
| A Függelék | |
| Komáromi Imre: Mintaprogramok | 393 |
| Indexelt szervezésű adathalmaz létrehozása | 395 |
| Indexelt szervezésű adathalmaz feldolgozása | 402 |
| Regionális szervezésű adathalmaz létrehozása. A CLEAR DISK program | 407 |
| Regionális szervezésű adathalmaz feldolgozása | 410 |
| Sorosszervezésű adathalmaz létrehozása változó hosszuságú rekordokkal | 414 |
| Kötetlen hosszuságú rekordok kezelése (létrehozás) | 416 |
| Kötetlen hosszuságú rekordok kezelése (feldolgozás) | 418 |
| B Függelék (Koós-Hutás Mária) | |
| Táblázatok | 421 |
| A 60-as és a 48-as karakterkészlet | 421 |
| A megengedett maximális blokkméret (byte-okban) | 423 |
| ESZR gépekre | 423 |
| IBM gépekre | 424 |
| A PL/I nyelv kulcsszavai és jelentésük | 425 |
| Tárgymutató | 425 |