Jest to najwa積iejszy modu�, zawieraj帷y wszystkie
podstawowe funkcje i procedury, wykorzystywane w ka盥ym programie.
Nie jest wi璚 wymagana deklaracja jego u篡cia (uses) na pocz徠ku
programu, bowiem modu� ten jest do陰czany do programu automatycznie.
Dzieje si� tak r闚nie� w przypadku program闚 tzw. pustych, czyli
sk豉daj帷ych si� tylko ze s堯w begin i end. W opisie modu逝 pomini皻o
opisy wi瘯szo軼i wyst瘼uj帷ych tam sta造ch i zmiennych, poniewa�
przy niezbyt zaawansowanym programowaniu nie s� one potrzebne bezpo鈔ednio
(s� wykorzystywane jedynie w wywo造wanych podprogramach).
CHDIR (軼ie磬a:string)-procedura
軼ie磬a - 軼ie磬a dost瘼u do katalogu
wynik: Zamiana bie膨cego katalogu na podany przez parametr 軼ie磬a.
B喚dne wykonanie jest sygnalizowane w funkcji IOResult.
Close (plik)-procedura
plik - dowolny plik
wynik: Zamkni璚ie dost瘼u do urz康zenia zewn皻rznego lub pliku
dyskowego skojarzonego z podan� zmienn�.
Eof [([var] plik)]:Boolean-funkcja
plik - dowolny plik
wynik: Warto嗆 True w przypadku osi庵ni璚ia ko鎍a pliku (odczytanie
znaku Ctri-Z) lub gdy plik nie zawiera 瘸dnych element闚 (pusty).
Erase (plik)-procedura
plik - dowolny plik
wynik: Skasowanie pliku dyskowego skojarzonego z podan� zmienn�.
B喚dne wykonanie jest sygnalizowane w funkcji IOResult.
GetDir (dysk: Byte; var 軼ie磬a: string)-procedura
dysk - numer stacji dyskowej (O - bie膨cy, 1 - A, 2 - B itd.)
軼ie磬a - 軼ie磬a dost瘼u do bie膨cego katalogu
wynik: Pe軟a 軼ie磬a dost瘼u (z symbolem stacji dyskowej) do
bie膨cego katalogu.
IOResult: Word-funkcja
wynik: Zero oznacza, 瞠 ostatnio wykonana operacja plikowa jest
poprawna; inna warto嗆 to numer wykrytego b喚du operacji wej軼ia-wyj軼ia.
Niewywo豉nie tej funkcji po operacji wej軼ia-wyj軼ia zako鎍zonej
b喚dem powoduje zablokowanie dalszych takich operacji
B喚dy operacji Wej軼ia-Wyj軼ia
2 - nie znaleziono danego pliku dyskowego
3 - nie znaleziono danej 軼ie磬i
4 - za du穎 otwartych plik闚
5 - zabroniony dost瘼 do pliku
6 - b喚dna operacja na.pliku
12 - b喚dny kod dost瘼u do pliku
15 - b喚dne oznaczenie stacji
16 - pr鏏a usuni璚ia bie膨cego katalogu
17 - pr鏏a zmiany nazwy pliku w przypadku przenoszenia go na
inny dysk
100 - b陰d w odczytywaniu z dysku
101 - b陰d w zapisywaniu na dysku
102 - zmienna nie zwi您ana z 瘸dnym plikiem dyskowym
103 - plik nie jest otwarty
104 - plik nie jest otwarty do odczytywania
105 - plik nie jest otwarty do zapisywania
106 - b喚dna posta� numeryczna
MkDir (kat: string)-procedura
kat - nazwa katalogu
wynik: Utworzenie nowego katalogu dyskowego o nazwie kat. B喚dne
wykonanie jest sygnalizowane w funkcji IOResult.
Rename (plik; nazwa: string)-procedura
plik - dowolny plik
nazwa - nazwa i rozszerzenie pliku dyskowego
wynik: Nadanie nowej nazwy plikowi dyskowemu. B喚dne wykonanie
jest sygnalizowane w funkcji IOResult.
Reset (plik [:file;rekroz: Word])-procedura
plik - dowolny plik
rekroz - d逝go嗆 rekordu
wynik: Otwarcie do odczytywania pliku dyskowego lub urz康zenia
zewn皻rznego z ustawieniem go w pozycji pocz徠kowej. W przypadku
otwierania pliku o nieokre郵onym typie, rekroz oznacza d逝go嗆
rekord闚 (w bajtach) ka盥orazowo odczytywanych procedur� BlockRead.
Pomini璚ie teko parametru powoduje przyj璚ie domy郵nej warto軼i
128.
B喚dne wykonanie jest sygnalizowane w funkcji IOResult.
Rewrite (plik {:file; rekroz: Word])-procedura
plik - dowolny plik
rekroz - d逝go嗆 rekordu
wynik: Otwarcie do zapisywania skojarzonego z plikiem urz康zenia
zewn皻rznego lub pliku dyskowego i ustawienie go w pozycji pocz徠kowej.
Je郵i plik ju� istnieje, to nast瘼uje usuni璚ie go, utworzenie
nowego pustego pliku (o tej samej nazwie) i ustawienie go w pozycji
pocz徠kowej. W przypadku otwierania pliku o nieokre郵onym typie,
rekroz oznacza d逝go嗆 rekord闚 (w bajtach) ka盥orazowo zapisywanych
procedur� BlockWrite. Pomini璚ie tego parametru powoduje przyj璚ie
domy郵nej warto軼i 128. B喚dne wykonanie jest sygnalizowane w
funkcji lOResult.
RmDir (kat: string)-procedura
kat- nazwa katalogu
wynik: Skasowanie katalogu dyskowego o podanej nazwie pod warunkiem,
瞠 nie zawiera 瘸dnych plik闚. B喚dne wykonanie jest sygnalizowane
w funkcji lOResult.
Append (var plik:Text)-procedura
plik - plik tekstowy
wynik: Otwarcie do zapisywania pliku tekstowego i ustawienie
go w pozycji ko鎍owej. B喚dne wykonanie jest sygnalizowane w funkcji
lOResult.
Eoln (var plik: Text): Boolean-funkcja
plik - plik tekstowy
wynik: Zasygnalizowanie ko鎍a wiersza (True). Symbolem ko鎍a
jest zmiana wiersza lub koniec pliku.
Flush (var plik: Text)-procedura
plik - plik tekstowy
wynik: Wyczyszczenie bufora komunikacyjnego do transmisji dyskowych.
Read ([var plik;] varzml[, zm2, zm3,...])-procedura
plik - dowolny plik jednorodny lub tekstowy
zm1, zm2, zm3,... - zmienne okre郵onych typ闚
wynik: Wczytanie na podane zmienne warto軼i z pliku dyskowego
lub urz康zenia zewn皻rznego (wg podanej listy). W przypadku pomini璚ia
pierwszego parametru przyjmuje si� domy郵nie standardowy plik
Input, skojarzony z klawiatur�. B喚dne wykonanie jest sygnalizowane
w funkcji lOResult.
Readln ([var plik: Text;] var zm1[, zm2,...])-procedura
plik - plik tekstowy
zmi, zm2, ... - zmienne okre郵onych typ闚
wynik: Wczytanie na podane zmienne warto軼i z pliku tekstowego
lub urz康zenia zewn皻rznego (wg podanej listy) i przej軼ie do
nast瘼nego wiersza. W przypadku pomini璚ia pierwszego parametru
przyjmuje si� domy郵nie standardowy plik Input, skojarzony z klawiatur�.
B喚dne wykonanie jest sygnalizowane w funkcji lOResult.
SeekEof [(var plik: Text)]: Boolean-funkcja
plik - plik tekstowy
wynik: Warto嗆 True w przypadku osi庵ni璚ia ko鎍a pliku (gdy
plik znajduje si� przed znakiem Ctri-Z) po pomini璚iu odst瘼闚
i znak闚 tabulacji lub gdy plik jest pusty.
SeekEoln ([varplik: Text)]: Boolean-funkcja
plik - plik tekstowy
wynik: Warto嗆 True w przypadku osi庵ni璚ia ko鎍a wiersza po
pomini璚iu odst瘼闚 i znak闚 tabulacji.
SetTextBuf (var plik:Text; var buf[,roz: Word])-procedura
plik - plik tekstowy
buf- dowolna zmienna
roz - rozmiar bufora
wynik: Skojarzenie bufora o rozmiarze r騜, zajmowanego przez
zmienn� buf, z plikiem tekstowym plik. Pomini璚ie warto軼i roz
oznacza u篡cie bufora systemowego o pojemno軼i 128 bajt闚.
Write ([var plik;] zm1[, zm2, zm3,...])-procedura
plik - dowolny plik jednorodny lub tekstowy
zm1, zm2, zm3,... - zmienne lub wyra瞠nia
wynik: Wyprowadzenie do pliku dyskowego lub urz康zenia zewn皻rznego,
skojarzonego z podanym plikiem, warto軼i wyspecyfikowanych parametr闚.
W przypadku pomini璚ia pierwszego parametru (specyfikacji pliku)
przyjmuje si� standardowy plik Output, skojarzony z monitorem.
B喚dne wykonanie jest sygnalizowane w funkcji IOResult.
Writeln ([var plik: Text;] zm1[, zm2, zm3,...])-procedura
plik - plik tekstowy
zm1, zm2, zm3,... - zmienne lub wyra瞠nia
wynik: Wyprowadzenie do pliku tekstowego lub urz康zenia zewn皻rznego,
skojarzonego z plikiem, warto軼i wyspecyfikowanych parametr闚
i przej軼ie do nast瘼nego wiersza. W przypadku pomini璚ia pierwszego
parametru (specyfikacji pliku) przyjmuje si� standardowy plik
Output, skojarzony z monitorem. B喚dne wykonanie jest sygnalizowane
w funkcji lOResult.
BlockRead (var plik:file; var buf; il: Word; [rez; Word])-procedura
plik - plik niejednorodny
buf - zmienna dowolnego typu
il - planowana liczba bajt闚 do odczytania
rez - rzeczywista liczba odczytanych bajt闚
wynik: Wczytanie il bajt闚 pliku plik do pami璚i okre郵onej przez
buf. Warto嗆 rez to rzeczywista liczba odczytanych bajt闚. B喚dne
wykonanie jest sygnalizowane w lOResult.
BlockWrite (var plik: file; var buf; il: Word; [rez: Word])-procedura
plik - plik niejednorodny
buf- zmienna dowolnego typu
il - planowana liczba bajt闚 do zapisania
rez - rzeczywista liczba zapisanych bajt闚
wynik: Zapisanie bloku o rozmiarze okre郵onym w Rewrite, z pami璚i
zajmowanej przez buf, w pliku plik. B喚dne wykonanie jest sygnalizowane
w funkcji lOResult.
FilePos (plik): Longint-funkcja
plik - plik jednorodny
wynik: Warto嗆 wska幡ika pliku, tzn. numer sk豉dowej do odczytywania
lub zapisywania.
FileSize (plik): Longint-funkcja
plik - plik jednorodny
wynik: D逝go嗆 pliku, tzn. liczba sk豉dowych w pliku.
Seek (plik; poz: Longint)-procedura
plik - plik jednorodny
poz - pozycja pliku
wynik: Nadanie wska幡ikowi pliku warto軼i r闚nej warto軼i parametru
poz.
Truncate (plik)-procedura plik - plik jednorodny
wynik: Usuni璚ie z danego pliku wszystkich element闚, pocz患szy
od bie膨cego a� do ko鎍a pliku, tzn. obci璚ie pliku przed sk豉dow�
o numerze r闚nym wska幡ikowi pliku.
Exit-procedura
wynik: Zako鎍zenie dzia豉nia programu lub podprogramu (funkcji
lub procedury) - ?wyj軼ie" z bloku.
Halt (kod: Word)-procedura
kod - kod wyj軼ia z programu
wynik: Zako鎍zenie dzia豉nia programu i przekazanie do systemu
operacyjnego kodu wyj軼ia.
RunError (kod: Word)-procedura
kod - kod b喚du wykonywania programu
wynik: Awaryjne zatrzymanie programu. Warto嗆 kod mo瞠 by� dowolna,
bez zwi您ku z numerami b喚d闚 wykonania programu.
Concat (s1[, s2, s3,...]: string): string-funkcja
s1, s2,s3... - napisy
wynik: Napis b璠帷y z這瞠niem podanych parametr闚 s 1, s2, s3
itd., czyli warto嗆 wyra瞠nia s 1 + s2 + s3 + ...
Copy (s: string; poz, dl: Integer): string-funkcja
s - napis
poz - numer znaku w napisie
dl - liczba znak闚 w napisie
wynik: Napis z這穎ny z dl znak闚 wyst瘼uj帷ych w danym napisie
s, pocz患szy od znaku o podanym numerze.
Delete (s: string; poz, dl: Integer)-procedura
s - napis
poz - numer znaku w napisie
dl - liczba znak闚 do skasowania
wynik: Skasowanie zadanej liczby znak闚 (dl) w napisie s, pocz患szy
od znaku o podanym numerze.
Insert (sw: string; var s: string; poz: Integer)-procedura
sw - napis wstawiany
s - napis, do kt鏎ego si� wstawia
poz - numer znaku w napisie s
wynik: Wstawienie napisu sw do napisu s, mi璠zy znakami o numerach
poz i poz + 1.
Length (s: string): Integer-funkcja
s - napis
wynik: D逝go嗆 napisu (liczba znak闚 w napisie).
Pos (s, ss: string): Byte-funkcja
s - szukany napis
ss - przeszukiwany napis
wynik: Pozycja napisu s w napisie ss, tzn. numer znaku, od kt鏎ego
znaki w napisie ss s� takie same, jak w s. Wynik zerowy oznacza,
瞠 ss nie zawiera s.
Str (zm[: lpoz[:pokr]]; var s: string)-procedura
zm - zmienna typu rzeczywistego lub porz康kowego ca趾owitego
lpoz - wymagana d逝go嗆 napisu s
pokr - liczba cyfr po kropce dziesi皻nej (wraz z ni�)
s - napis
wynik: Konwersja warto軼i rzeczywistej zm na napis s.
Val (s: string; zm; var kod: Integer)-procedura
s - zmienna typu napisowego
zm - warto嗆 arytmetyczna
kod - kod b喚du
wynik: Konwersja napisu na warto嗆 arytmetyczn�. Warto嗆 zerowa
kodu oznacza poprawne wykonanie konwersji, warto嗆 r騜na od zera
- to numer znaku w napisie, powoduj帷ego b陰d.
Addr (zm): Pointer-funkcja
zm - obiekt b璠帷y zmienn� lub podprogramem
wynik: Wska幡ik danego obiektu.
CSeg: Word-funkcja
wynik: Zawarto嗆 rejestru CS procesora.
DSeg: Word-funkcja
wynik: Zawarto嗆 rejestru DS procesora (adres segmentu danych).
SPtr: Word-funkcja
wynik: Zawarto嗆 rejestru SP procesora (adres wzgl璠ny wska幡ika
stosu).
SSeg: Word-funkcja
wynik: Zawarto嗆 rejestru SS procesora.
Seg (zm): Word-funkcja
zm - obiekt b璠帷y zmienn� lub podprogramem
wynik: Numer segmentu, w kt鏎ym znajduje si� wyszczeg鏊niony
obiekt.
Ofs (zm): Word-funkcja
zm - obiekt b璠帷y zmienn� lub podprogramem
wynik: Adres wzgl璠ny w segmencie z danym obiektem.
Ptr (seg, ofs: Word): Pointer-funkcja
seg - adres segmentu pami璚i
ofs - adres wzgl璠ny w segmencie
wynik: Wska幡ik kom鏎ki adresowanej za pomoc� adresu segmentu
i adresu wzgl璠nego w segmencie.
FilIChar (zm; il: Word; wyp)-procedura
zm - zmienna dowolnego typu
il - liczba bajt闚 pami璚i
wyp - dowolne wyra瞠nie typu porz康kowego
wynik: Wype軟ienie wyra瞠niem wyp kolejnych il bajt闚 zaj皻ych
przez zmienn� zm.
Hi (zm): Byte-funkcja
zm - wyra瞠nie typu Integer lub Word
wynik: Bardziej znacz帷y bajt podanego s這wa.
Lo (zm): Byte-funkcja
zm - wyra瞠nie typu Integer lub Word
wynik: Mniej znacz帷y bajt podanego s這wa.
Move (var 廝, cel; d�: Word)-procedura
廝 - zmienna ?廝鏚這wa"
cel - zmienna ?docelowa"
d� - liczba bajt闚
wynik: Skopiowanie d� bajt闚 z obszaru zajmowanego przez zmienn�
"廝鏚這w�" do obszaru zajmowanego przez zmienn� "docelow�".
ParamCount: Word-funkcja
wynik: Liczba parametr闚 programu.
ParamStr (poz: Integer): string-funkcja
poz - numer parametru wywo豉nia podprogramu
wynik: Napis r闚ny parametrowi o numerze poz.
Random (zakr: Word) lub Random: Real-procedura
zakr - najwi瘯sza generowana liczba, zmniejszona o 1
wynik: Warto嗆 losowa typu Word z przedzia逝 <0,zakr), a w
przypadku braku argumentu - typu Real z przedzia逝 <0,1).
Randomize-procedura
wynik: Zainicjowanie generatora liczb losowych.
SizeOf(zm):Word-funkcja
zm - zmienna dowolnego typu lub nazwa typu
wynik: Liczba bajt闚 zajmowanych przez dan� zmienn�.
Swap (zm): typ zmiennej zm-funkcja
zm - zmienna typu Word lub Integer
Wynik: Zamiana miejscami pierwszego i ostatniego bajtu zajmowanego
przez zmienn�.
UpCase (zn: Char): Char-funkcja
zn - zmienna typu Char
wynik: Zamiana ma貫j litery, b璠帷ej warto軼i� zn, na wielk�.
New (var p: Pointer)-procedura
p - zmienna typu wska幡ikowego
wynik: Utworzenie zmiennej dynamicznej i przypisanie zmiennej
p wska幡ika tej zmiennej.
Dispose (var p: Pointer)-procedura
p - zmienna typu wska幡ikowego
wynik: Usuni璚ie wska幡ika zmiennej dynamicznej i przypisanie
zmiennej p warto軼i nieokre郵onej (po wcze郾iejszym u篡ciu New).
GetMem (var p: Pointer; roz: Word)-procedura
p - zmienna typu wska幡ikowego
roz - liczba bajt闚 pami璚i
wynik: Rezerwacja pami璚i o pojemno軼i r騜 bajt闚. Po wykonaniu
procedury zmienna p wskazuje zarezerwowany blok.
FreeMem (var p: Pointer; roz: Word)-procedura
p - zmienna typu wska幡ikowego
roz - liczba bajt闚 pami璚i
wynik: Zwolnienie pami璚i zarezerwowanej w GetMem.
Release (var p: Pointer)-procedura
p - zmienna typu wska幡ikowego
wynik: Zwolnienie pami璚i przydzielonej dynamicznie podczas wykonywania
programu od chwili ostatniego wykonania procedury New.
Mark (var p: Pointer)-procedura
p - zmienna typu wska幡ikowego
wynik: Zapami皻anie stanu sterty. Po utworzeniu (w dalszym ci庵u
programu) nowych zmiennych dynamicznych warto嗆 p umo磧iwia ich
usuni璚ie procedur� Release.
MaxAvail: Longint-funkcja
wynik: Pojemno嗆 najwi瘯szego wolnego bloku w stercie.
MemAvail: Longint-funkcja
wynik: Suma pojemno軼i wszystkich wolnych blok闚 w stercie (w
bajtach).
Chr (zm: Byte): Char-funkcja
zm - zmienna typu Byte
wynik: Znak, kt鏎y w typie Char ma numer porz康kowy r闚ny zm.
Ord (zm): Longint-funkcja
zm - wyra瞠nie typu porz康kowego
Wynik: Liczba porz康kowa warto軼i wyra瞠nia w typie.
Round (zm: Real): Longint-funkcja
zm - zmienna typu rzeczywistego
wynik: Zaokr庵lenie warto軼i rzeczywistej zm do najbli窺zej liczby
ca趾owitej.
Trunc (zm: Real): Longint-funkcja
zm - zmienna typu rzeczywistego
wynik: Obci璚ie warto軼i rzeczywistej do najbli窺zej liczby ca趾owitej
w kierunku zera (obci璚ie miejsc po kropce dziesi皻nej).
Abs (zm): typ zmiennej zm-funkcja
zm - zmienna dowolnego typu
wynik: Warto嗆 bezwzgl璠na argumentu funkcji.
ArcTan (zm: [Real][lnteger]): Real-funkcja
zm - argument typu Real lub Integer
wynik: Warto嗆 funkcji arcus tangens w mierze 逝kowej.
Sin (alfa: [Real] [Integer]): Real-funkcja
alfa - argument typu Real lub Integer (k徠 w mierze 逝kowej)
wynik: Warto嗆 funkcji sinus k徠a alfa.
Cos (alfa: [Real] [Integer]): Real-funkcja
alfa - argument typu Real lub Integer (k徠 w mierze 逝kowej)
wynik: Warto嗆 funkcji cosinus k徠a alfa.
Ln (zm: [Real][lnteger]): Real-funkcja
zm - argument typu Real lub Integer
wynik: Warto嗆 logarytmu naturalnego argumentu.
Exp (zm: [Real][Integer]): Real-funkcja
zm - argument typu Real lub Integer
wynik: Warto嗆 funkcji ezm.
Frac (zm: Real): Real-funkcja
zm - argument typu rzeczywistego
wynik: Cz窷� u豉mkowa argumentu.
Int (zm: Real): Real-funkcja
zm - argument typu rzeczywistego
wynik: Cz窷� ca趾owita argumentu.
Pi: Real-funkcja
wynik: 3.1415926535897932385.
Sqr (zm): typ zmiennej zm-funkcja
zm - zmienna dowolnego typu wynik:
Kwadrat danej liczby.
Sqrt (zm: Real): Real-funkcja
zm - zmienna typu rzeczywistego
wynik: Pierwiastek kwadratowy danej liczby.
Dec (zm[, n]: Integer)-procedura
zm - zmienna typu porz康kowego
n - krok (wyra瞠nie typu ca趾owitego)
wynik: Zmniejszenie warto軼i zmiennej o warto嗆 przyj皻ego kroku.
Inc (zm[, n]: Integer)-procedura
zm - zmienna typu porz康kowego
n - krok (wyra瞠nie typu ca趾owitego)
wynik: Zwi瘯szenie warto軼i zmiennej o warto嗆 przyj皻ego kroku.
Odd (zm: Longint): Boolean-funkcja
zm - zmienna typu ca趾owitego
wynik: True, gdy warto嗆 zmiennej jest liczb� nieparzyst�; False
- w przeciwnym wypadku.
Pred (zm): typ wyra瞠nia zm-funkcja
zm - dowolne wyra瞠nie typu porz康kowego
wynik: Warto嗆, kt鏎ej liczba porz康kowa w typie jest o 1 mniejsza
od liczby porz康kowej warto軼i zm.
Succ (zm): typ wyra瞠nia zm-funkcja
zm - dowolne wyra瞠nie typu porz康kowego
wynik: Warto嗆, kt鏎ej liczba porz康kowa w typie jest o 1 wi瘯sza
od liczby porz康kowej warto軼i zm.