AND
AND (koniunkcja) (a1)BOOLEAN (a2) BOOLEAN (w)BOOLEAN
WYNIKIEM ALTERNATYWY NA ARGUMENTACH TYPU CAŁKOWITEGO JEST WARTOŚĆ POWSTAŁA PRZEZ WYKONANIE OPERACJI ALTERNATYWY NA ODPOWIADAJĄCYCH SOBIE PARACH BITÓW REPREZENTACJI ARGUMENTÓW, PRZY CZYM ODPOWIEDNI BIT WYNIKU MA WAROŚĆ 0, GDY OBA ODPOWIADAJĄCE SOBIE BITY MAJĄ WARTOŚĆ 0, A W PRZECIWNYM PRZYPADKU WARTOŚĆ 1.
ARRAY
TYPE IDENTYFIKATOR TYPU = ARRAY [TYPY INDEKSÓW] OF TYP SKŁADOWY.
GDZIE TYPY INDEXÓW SĄ OPISAMI TYPU PORZĄDKOWEGO, PRZY CZYM POSZCZEGÓLNE OPISY ODDZIELA SIĘ PRZECINKAMI A TYP SKŁADNIOWY OZNACZA DOWOLNY TYP.
BEGIN,END
BLOK PROGRAMU W TURBO P. SKŁADA SIĘ Z CZĘŚCI OPISUJĄCEJ DANE (DEKLARACJE) I CZĘŚCI WYKONAWCZEJ.
BEGIN ...ciąg instrukcji... END. STANOWIĄ NAWIASY SYNTAKTYCZNE PROGRAMU,PROCEDURY,INSTRUKCJI ZŁOŻONEJ.
CONST
CONST IDENTYFIKATOR = LICZBA;
ŁAŃCUCH;
NAZWA_LITERAŁU;
ZNAK_NZAWA_LITERAŁU;
PRZYPISUJE IDENTYFIKATORY DO LITERAŁÓW UMIESZCZA SIĘ W CZĘŚCI OPISU DANYCH.
CASE
I. CASE WYRAŻENIE OF
LISTA_WYBORU
END
II. CASE WYRAŻENIE OF
ELSE INSTRUKCJA ALTERNATYWY
WYRAŻENIE MOŻE BYĆ TYPU PORZĄDKOWEGO.LISTA WYBORU SKŁADA SIĘ Z SEKWENCJI WYBORU POPRZEDZONIEJ JEDNĄ LUB WIELOMA STAŁYMI ZWANYMI STAŁYMI WYBORU, KTÓRE OD INSTRUKCJI ODDZIELONE SĄ DWUKROPKIEM.
INSTRUKCJA WYBORU CASE UMOŻLIWIA WYKONANIE JEDNEJ Z WIELU INSTRUKCJI ZNAJDUJĄCYCH SIĘ NA TZW. LIŚCIE WYBORU W ZALEŻNOŚCI OD WARTOŚCI PEWNEGO WYRAŻENIA.
IF,THEN,ELSE
IF WYRAŻENIE THEN INSTRUKCJA
ELSE INSTRUKCJA
PRZY CZYM WARTOŚCIĄ WYRAŻENIA POWINNA BYĆ WARTOŚĆ LOGICZNA TRUE, FALSE. INSTRUKCJA WYSTĘPUJĄCA PO SŁOWIE KLUCZOWYM THEN LUB ELSE MOŻE BYĆ DOWOLNĄ INSTRUKCJĄ PROSTĄ LUB STRUKTÓRALNĄ. JEŚLI WARTOŚCĄ WYSPECYFIKOWANEGO WYRAŻENIA JEST TRUE TO ZOSTANIE WYKONANA INSTRUKCJA PODANA PO SŁOWIE THEN W PRZECIWNYM PRZYPADKU WYKONANA BĘDZIE NASTĘPNA INSTRUKCJA PO INSTRUKCJI IF (GDY BRAK JEDNOSTKI ELSE) LUB INSTRUKCJA PODANA PO SŁOWIE ELSE.
FILE
TYPE IDENTYFIKATOR = FILE OF TYP_ELEMENTÓW_PLIKU
GDZIE TYP ELEMENTÓW PLIKU MOŻE BYĆ IDENTYFIKATOREM DOWOLNEGO TYPU PROSTEGO LUB OPISEM TYPU PORZĄDKOWEGO, STRUKTURALNEGO BĄDŹ NISKOŃCZONEGO.
FOR,DO, DOWNTO
INSTRUKCJĘ ITERACYJNĄ FOR (pętla) STOSUJE SIĘ ZWYKLE W CELU WYKONANIA PEWNWJ GRUPY INSTRUKCJI W PRZYPADKU, GDY LICZBA POWT. JEST ZNANA W DANYM MIEJSCU PROGRAMU. INSTRUKCJA FOR MOŻE MIEĆ POSTAĆ:
FOR ZMIENNA:= WYRAŻENIE_1 TO WYRAŻENIE_2 DO INSTR.
FOR ZMIENNA:= WYRAŻE._1 DOWNTO WYRAŻ._2 DO INSTR.
ZMIENNA ZWANA ZMIENNĄ STERUJĄCĄ, MUSI BYĆ IDENTYFIKATOREM TYPU PORZĄDKOWEGO I NIE MOŻE BYĆ DESYGNATOREM POLA (MEŻE BYĆ ZMIENNĄ INDEXOWANĄ). WARTOŚĆ WYRAŻENIA 1 I 2 POWINNA BYĆ ZGODNA W SENSIE PRZYPISANIA Z TYPEM ZMIENNEJ STERUJĄCEJ. INSTR. WYSTĘPUJĄCA PO SŁOWIE KLUCZOWYM DO MOŻE BYĆ DOWOLNĄ INSTRUKCJĄ PROSTĄ LUB STRUKTURALNĄ.
Z DZIAŁANIA INST. FOR WYNIKA ŻE INSTR. PODANA PO SŁOWIE DO NIE ZOSTANIE WYKONANA ANI RAZU, GDY W WARIANCIE ZE SŁOWEM TO WARTOŚĆ WYRAŻENIA 1 JEST WIĘKSZA (W SENSIE UPORZĄDKOWANIA) OD WARTOŚCI WYRAŻENIA 2 A W WARIANCIE ZE SŁOWEM DOWNTO- WARTOŚĆ WYRAŻENIA 1 JEST MNIEJSZA OD WARTOŚCI WYRAŻENIA 2. W WYNIKU DZIAŁANIA INSTR. FOR INSTRUKCJA WEW. BĘDZIE POWTÓRZONA TYLE RAZY ILE WYNOSI WARTOŚĆ ZMIENNEJ MIESZCZĄCEJ SIĘ POMIĘDZY WARTOŚCIAMI WYRAŻENIA 1 A WYRAŻENIA 2.
FUNCTION, PROCEDURE
PROCEDURE IDENTYF. (LISTA PARAMETRÓW FORMALNYCH);
CZĘŚĆ OPISOWA
BEGIN
CIĄG INSTRUKCJI
END;
FUNCTION IDENTYF. (LISTA PARAMETRÓW FORMALNYCH):
TYP_WYNIKU;
WYRÓŻNIONĄ CZĘŚĆ PROGRAMU, PEWNĄ CAŁOŚĆ, KTÓREJ PRZYPISUJEMY PEWNĄ NAZWĘ-IDENTYFIKATOR I USTALAMY SPOSÓB WYMIANY INFORMACJI Z OTOCZENIEM NAZYWAMY PROCEDURAMI LUB FUNKCJAMI.
PROCEDURY LUB FUNKCJE TWORZYMY GDY PEWIEN ZESTAW INSTRUKCJI TRZEBA WYKORZYSTAĆ WIELOKROTNIE, LUB GDY MOŻE ON BYĆ WYKORZ. W WIELU RÓŻNYCH PROG..
FUNKCJA SŁÓŻY DO OBLICZNIA JEDNEJ WARTOŚCI,
PROCEDURA DO OBLICZENIA WIELU WARTOŚCI LUB WYKONANIA PEWNYCH CZYNNOŚCI.
STOSOWANIE PROCEDURY I FUNKCJI UŁATWIA CZYTEANIE PROGRAMU I UMOŻLIWIA EFEKTYWNE WYKORZYSTANIE PAMIĘCI - ALBO OBIEKTÓW LOKALNYCH.
GOTO
GOTO ETYKIETA
POWODUJE PRZEKAZANIE STEROWNIKA TJ. PRZEJŚCIE DO INSTRUKCJI PROGRAMU POPRZEDZONEJ PODANĄ TU ETYKIETĄ, PRZY CZYM INSTRUKCJA TA MOŻE WYSTĘPOWAĆ PRZED LUB PO ODNOŚNEJ INSTRUKCJI SKOKU. NIEDOZWOLONY JEST SKOK DO WNĘTRZA INSTRUKCJI STRUKTURALNEJ ORAZ DO PODPROGRAMU.
NIESTOSOWAĆ TEJ KOMENDY.
IN
ARGUMENT1 OPERATOR-PORÓWNANIA ARGUMENT2
IN JEST OPERATOREM RELACJI I OZNACZA:
IN - „JEST ELEMENTEM.”
TYP PIERWSZEGO ARGUMENTU DLA OPERATORA IN MUSI BYĆ ZGODNY Z TYPEM PODSTAWOWYM DLA ZBIORU BĘDĄCEGO DRUGIM ARGUMENTEM. DLA POZOSTAŁYCH OPERATORÓW OBA ARGUMENTY MUSZĄ MIEĆ ZGODNE TYPY Z NASTĘPUJĄCYM WYJĄTKIEM:
TYP JEDNEGO ARG. JEST REAL A DRUGIEGO INTIGER
INLINE
INLINE (LISTA_ELEMENTÓW_INLINE)
PRZY CZYM POSZCZEGÓLNE ELEMENTY LISTY BĘDĄCE STAŁYMI LUB ZMIENNYMI, ODDZIELA SIĘ ZNALIEM ‘/’.
LABEL
LABEL LISTA ETYKIET;
DOWOLNA INSTRUKCJA PROGRAMU MOŻE BYĆ POPRZEDZONA ETYKIETĄ KTÓRA UMOŻLIWIA PRZEKAZANIE STEROWANIA DO TEJ INSTRUKCJI ZA POMOCĄ INSTRUKCJI SKOKU GOTO POWODUJE TO ZMIANĘ NORMALNEGO TJ. SEKWENCYJNEGO WYKONYWANIA CIĄGU INSTRUKCJI PROGRAMU. ETYKIETA SKŁADA SIĘ Z IDENTYFIKATORA LUB CIĄGU DO CZTERECH CYFR. BESPOŚREDNIO PO ETYKIECIE WYSTĘPUJE ZNAK : KTÓRY DDZIELA DANĄ ETYKIETĘ OD INNEJ ETYKIETY LUB INSTRUKCJI. NAZWY URZYWANYCH W PROGRAMIE ETYKIET POWINNY BYĆ ZADEKLAROWANE.
MOD
MOD reszta z dzielenia (a1)INTIGER (a2)INTIGER (w) INTIGER
X MOD Y = X - (X DIV Y )*Y
ZNAK OPERACJI MOD JEST PRZY TYM ZGODNY ZE ZNAKIEM ARGUMENTU X.
NIL
NIL JEST STAŁĄ STANDARDOWĄ TYPU WSKAŻNIKOWEGO. STAŁA TA SŁUŻY GŁÓWNIE DO NADAWANIA WARTOŚCI POCZĄTKOWYCH ZMIENNYM TYPU WSKAŻNIKOWEGO. W ODRÓŻNIENIU OD INNYCH OBIEKTÓW STANDARDOWYCH STAŁA TA NIE JEST OZNACZONA IDENT. LECZ JEST ZAPISYWANA W POSTACI SŁOWA KLUCZOWEGO.
IMPLEMENTATION, INTERFACE,UNIT
IMPLEMENTATION, INTERFACE SĄ SŁOWAMI KLUCZOWYMI STOSOWANYMI W MODUŁACH. MODUŁY SŁUŻĄ PRZEDE WSZYSTKIM DO GRUPOWANIA PROCEDUR I FUNKCJI W BIBLIOTEKI, A TAKŻE DO DZIELENIA DUŻYCH PROGRAMÓW NA POWIĄZANE LOGICZNE CZĘŚCI. OGÓLNA POSTAĆ MODUŁU: UNIT NAZWA MODUŁU;
CZĘŚĆ OPISOWA MODUŁU
CZĘŚĆ IMPLEMENTACYJNA
CZĘŚĆ INICJUJĄCA·
CZĘŚĆ OPISOWA MA POSTAĆ:
INTERFACE
DEKLARACJE MODUŁÓW
DEKLARACJE LITERAŁÓW
DEFINICJE TYPÓW
DEKLARACJE ZMIENNYCH
LISTA NAGŁÓWKÓW PROCEDUR I FUNKCJI
CZĘŚĆ IMPLEMENTACYJNA ROZPOCZYNA SIĘ SŁOWEM KLUCZOWYM IMPLEMENTATION I ZAWIERA OBOK DEFINICJI PROCEDURY I FUNKCJI TAKŻE DEKLARACJE ETYKIET, LITERAŁÓW I ZMIENNYCH ORAZ DEFINICJE TYPÓW, FUNKCJI I PROCEDUR WEWNĘTRZNYCH. OBIEKTY TE NIE SĄ DOSTĘPNE W PROGRAMIE LUB INNYM MODULE ZAWIERAJĄCYM DEKLARACJE DANEGO MODUŁU.
NOT
NOT negacja (A) BOOLEAN (w) BOOLEAN
NEGACJA ARGUMENTU CAŁKOWITEGO POLEG NA ZAMIANIE KARZDEGO BITU REPREZENTACJI DANEJ W KODZIE MASZYNIE MASZYNOWYM NA PRZECIWNY TJ. BITU 1 NA 0 i 0 NA 1. DOTYCZY TO RÓWNIEŻ BITU ZNAKU.
OR
OR alternatywa (a1)BOOLEAN (a2) BOOLEAN (w)BOOLEAN PACKED
W STANDARDOWEJ WERSJI PASCALA SŁOWO TO JEST WSKAZÓWKĄ DLA COMPILATORA JĘZYKA, ABY WYBRAŁ REPREZENTACJĘ DANEJ STRUKTURY ZAJMUJĄCĄ MOŻLIWIE JAK NAJMNIEJ BAJTÓW PAMIĘCI. REPREZENTACJĘ TAKĄ NAZYWAMY POSTACIĄ SPAKOWANĄ. W OPISIE TYPU STRUKTURALNEGO NIE STOSOWANA.ROZMIAR OBIEKTU STRUKTURALNEGO NIE MOŻE PRZEKROCZYĆ 65520 BAJTÓW.
PROGRAM
NAGŁÓWEK PROGRAMU SKŁADA SIĘ ZE SŁOWA KLUCZOWEGO PROGRAM PO KTÓRYM WYSTĘPUJE NAZWA PROGRAMU (IDENTYFIKATOR) ORAZ EWENTUALNIE UJĘTA W NAWIASY OKRĄGŁE LISTA NAZW PLIKÓW (IDENT. PLIKÓW). ZA POŚREDNICTWEM TYCH PLIKÓW PROGRAM KOMUNIKUJE SIĘ Z OTOCZENIEM. INSTRUKCJA POMIJANA.
SET
TYP ZBIOROWY SET SŁUŻY DO PRZEDSTAWIANIA ZBIORÓW W SENSIE MNOGOŚCIOWYM. ELEMENTY TYPU ZBIOROWEGO MUSZĄ BYĆ TYPU PORZĄDKOWEGO. DEKLARACJA:
TYPE
IDENTYFIKATOR = SET OF TYP_ELEMENTU_ZBIORU
LICZBA ELEMENTÓW ZBIORU NIE MOŻE PRZEKROCZYĆ 255.
RECORD
RECORDY W PASCALU SŁUŻĄ DO PRZEDSTAWIANIA OBIEKTÓW ZŁOŻONYCH KTÓRYCH SKŁADOWE ZWANE POLAMI SĄ RÓŻNYCH TYPÓW DEKLARACJA TYPU RECORD:
IDENTYFIKATOR = RECORD
LISTA DEKLARACJI PÓL;
GDZIE LISTA DEKLARACJI PÓL MOŻE MIEĆ POSTAĆ :
NAZWA POLA : TYP WARTOŚCI;
LUB
CASE IDENTYFIKATOR POLA : IDENT. TYPU_
_PORZĄDKOWEGO OF WYKAZ WARIANTÓW ;
GDZIE WYKAZ WARIANTÓW SKŁADA SIĘ Z ELEMENTÓW :
LISTA_ETYKIET_WYBORU : (LISTA DEKLARACJI PÓL);
SHL
SHL przesunięcie w lewo (a1)SHORTINT(a2)SHORTINT(W)SHORTINT
SHR
SHR przes. w prawo (a1)INTIGER (a2)INTIGET (W)INTIGET
OPERACJE LOGICZNE SHL PRZESUNIĘCIE W LEWO I SHR W PRAWO MOGĄ DOTYCZYĆ WYŁĄCZNIE ARGUMENTÓW TYPU CAŁKOWITEGO. WYNIK OPERACJI JEST WARTOŚCIĄ UZYSKANĄ Z REPREZENTACJI PIERWSZEGO ARGUMENTU PO PRZESUNIĘCIU GO W LEWO (SHL) LUB W PRAWO (SHR) O LICZBĘ POZYCJI OKREŚLONĄ DRUGIM ARGUMENTEM. PODZCZAD PRZESUWANIA BIT ZNAKU NIE ULEGA POWIELENIU.
STRING
ŁAŃCUCHY SŁUŻĄ DO REPREZENTOWANIA CIĄGU ZNAKÓW W TYM NIEWIDOCZNEGO ZNAKU SPACJI. ELEMENTAMI TYPU ŁAŃCUCHOWEGO SĄ ŁAŃCUCHY O DŁUGOŚCI OD 0 DO DŁUGOŚCI PODANEJ W DEFINICJI TYPU ŁAŃCUCHOWEGO. POJEDYNCZY TYP ŁAŃCUCHOWY DEFINIUJE SIĘ NASTĘPUJĄCO TYPE IDENTYFIKATOR_TYPU = STRING [ ROZMIAR];
LUB TYPE IDENTYFIKATOR_TYPU = ...
stivi7