Typy Proste

Typy porządkowe

Typ wyliczeniowy

Typy całkowite

są to wartości liczbowe, które mieszczą się w podanych zakresach, im większy zakres to automatycznie zwiększa się zapotrzebowanie liczby na pamięć, podaję więc również ile bajtów dany typ liczby zajmuje w pamięci:

SHORTINT (-128..127) 1 bajt BYTE {0..255} 1 bajt
INTEGER (-32768..32767} 2 bajty WORD {0..65535} 2 bajty
LONGINT {-2147483648..2147483647} 4 bajty

Typy logiczne

Zmienna tego typu może mieć wartość prawdy (True, 1) lub fałszu(False). W Pascalu predefiniowano 4 typy logiczne, lecz w praktyce używa się tylko tego pierwszego:

  • Boolean - zajmuje 1 bajt pamięci.
  • ByteBool - 1 bajt.
  • WordBool - 2 bajty.
  • LongBool - 4 bajty.

Różnica między nimi polega tylko w ilości zajmowanej pamięci.

Typ znakowy

TYP ZNAKOWY - CHAR - typ ten przyjmuje dowolny pojedynczy znak o kodach ASCII (0..255) np. znak "A" czy "!"

Typy okrojone

Ten typ służy do ograniczenia zakresu innych typów. Zmienną takiego typu deklarujemy go w następujący sposób:

var nazwazmiennej : stala1 .. stala2;

Tak więc jeśli zadeklarujemy zmienną typu okrojonego "0..9", to po przypisaniu jej wartości 1 wszystko będzie w porządku, a przy przypisaniu 10 wystąpi błąd. Taka zmienna jest okrojonym typem całkowitym. Podobnie będzie, jeśli zadeklarujemy zmienną typu okrojonego "'a'..'z'". Po przypisaniu 'a', 'c', czy 'z' będzie wszystko w porządku, zaś po przypisaniu 'ą', czy 'A' wystąpi błąd (pamietaj że jest to typ okrojony typu char. Ani 'ą', ani 'A' nie należy do tego przedziału - odsyłam do tabeli znaków szesnastkowych ASCII).

Typy rzeczywiste

  • Real - zajmuje 6 bajtów pamięci.
  • Single - 4 bajty.
  • Double - 8 bajtów.
  • Extended - 10 bajtów.
  • Comp - przedział -263+1 do 263-1

Cztery ostatnie typy są dostępne jedynie w przypadku posiadania koprocesora arytmetycznego (8087, 80287, 80387, procesor 486 lub nowszy). Wszystkie powyższe typy są podzbiorami zbioru liczb rzeczywistych.

O ile nie zaznaczono inaczej, treść tej strony objęta jest licencją Creative Commons Attribution-ShareAlike 3.0 License