I / Kiểu số nguyên :
Từ khoá Phạm vi Số byte nhớ
Integer -32768 .. 32767 2 Byte
Byte 0 .. 255 1 Byte
Word 0 .. 65535 2 Byte
ShortInt -128 .. 127 1 Byte
LongInt -2147483648.. 2147483647 4 Byte
Những qui định về kiểu số nguyên :
+ Không gán trị vượt quá phạm vi của kiểu .
+ Các chữ số phải viết liền nhau
+ Số âm : phải đặt dấu trừ ngay sát chữ số đầu tiên của số
+ Không được sử dụng dấu chấm thập phân .
+ Để viết số dưới dạng cơ số 16 ( dạng Hexa ) đặt dấu $ sát chữ số đầu .
Các phép toán ( operater ) :
a) Phép toán số học :
Cộng : + Cho kết quả là số nguyên
Trừ : - Cho kết quả là số nguyên
Nhân : * Cho kết quả là số nguyên
Chia : / Cho kết quả là số thực
Div : Cho thương nguyên của phép chia
Mod : Dư nguyên của phép chia .
b) Phép toán quan hệ :
= ( bằng )
> ( lớn hơn )
< ( nhỏ hơn )
>= ( Không nhỏ thua )
<= ( Không lớn hơn )
<> ( Khác )
Kết quả của các phép toán quan hệ là Kiểu Boolean ( Có 2 giá trị : True, False)
II / Kiểu thực :
Kiểu Phạm vi Số chữ số có nghĩa Số Byte
Single 1.5E-45 .. 3.4E+38 7-8 4
Real 2.9E-39 .. 1.7E+38 11-12 6
Double 5.0E-324 .. 1.7E+308 15-16 8
Extended 3.4E-4932 .. 1.1E+4932 19-20 10
Comp -9.2E+18 .. 9.2E+18 19-20 8
+ Trong 4 kiểu trên , phạm vi được hiểu như là trị tuyệt đối của phạm vi .
+ Cách viết số ở cột phạm vi là cách viết chữ số kiểu động ,
1.5E-45 = 1.5 * 10 -45 ; 3.4E+38 = 3.4 * 10 38
+ Kiểu số thực với mode thường dùng là Real . Còn các kiểu còn lại phải dùng mode 8087 ( Đầu chương trình phải có hưóng biên dịch {$N+}. ) Các phép toán trên kiểu số thực : Cũng có các phép toán như kiểu nguyên ; nhưng không có phép DIV và MOD và kết quả của mọi phép toán trên Real là Real ; kết quả của mọi phép toán trên Extended là Extended
III / Kiểu Boolean :
Kiểu Boolean chỉ có 2 giá trị : True và False . ( trong đó False < True )
Một giá trị kiểu Boolean chiếm 1 Byte bộ nhớ .
Các phép toán lôgic trên kiểu Boolean :
Phép AND Phép OR
True False
True True True
False True False
True False
True True False
False False False
Phép XOR Phép NOT
True False
True False True
False True False
X = True --> Not ( x ) = False
X = False --> Not ( x) = True
IV / Kiểu Kí tự : ( Kiểu Char )
Một kí tự chiếm 1 byte bộ nhớ .Mỗi kí tự tương ứng với 1 mã số , ghi trong bảng mã ASC I I (American Standar Code Information Interchange ). Có tất cả 256 kí tự đánh số từ Mã số 0 tới mã số 255 . Vậy kiểu kí tự có 256 giá trị . Các kí tự từ 0 đến 31 là các kí tự điều khiển , không in ra được , chúng dùng để điều khiển quá trình vào , ra các thiết bị ngoại vi
Thí dụ : Kí tự có mã số 13 báo hiệu hết dòng trên màn hình và máy in
Kí tự có mã số 10 chuyển con trỏ màn hình xuống đầu dòng dưới , và chuyển đầu kim in xuống đầu dòng in tiếp theo .
Kí tự có mã số 7 làm phát chuông kêu . ..
Chú ý :
+ Để biểu diễn kí tự , phải đặt kí tự trong dấu nháy . Thí dụ : ‘a’ ‘A’ ‘]’ ... hoặc dùng hàm Char thí dụ : Char(97) , Char(65) , Char(93) ... hoặc dùng kí hiệu #97 , #65 , #93 ...
Sau đây là 1 chương trình nhỏ hiện các kí tự và mã số của chúng lên màn hình :
Uses crt;
Var i : Byte;
BEGIN
Clrscr;
For i:=33 to 255 do Write(i:4,Char(i):2,#32#32);
Readln;
END.
V / Kiểu Xâu kí tự : ( Kiểu String )
Xâu kí tự là dãy các kí tự đặt giữa 2 dấu nháy đơn . Số kí tự của xâu không quá 255 .
Các phép toán trên xâu kí tự sẽ đề cập ở phần sau .Có thể tạo ra kiểu xâu kí tự có độ dài n ( 1<=n<255) bằng khai báo
Type Tên_Xâu = String[n];
Var Tên_biến : Tên_xâu;