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.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License