Một chương trình TURBO PASCAL có các thành phần sau :
(* Phần khai báo chương trình *)
Program Tên_chương_trình;
Uses Tên _các_ Unit_ cần _thiết ;
Label Tên_nhãn;
Const Tên_hằng = Giá_trị_của_hằng;
Type Tên_kiểu : Kiểu_hằng ;
Var Tên_biến : Kiểu_biến;
(* Phần thân chương trình *)
Procedure Tên_thủ_tục_1(Tên_tham_trị ; Var Tên_tham_biến : Kiểu_tham_biến);
Uses Tên _các_ Unit_ cần _thiết ;
Label Tên_nhãn;
Const Tên_hằng = Giá_trị_của_hằng;
Type Tên_kiểu : Kiểu_hằng ;
Var Tên_biến : Kiểu_biến;
Begin
(* Phần thân của thủ tục 1 gồm các lệnh nào đó *)
End ;
......
Procedure Tên_thủ_tục_n(Tên_tham_trị ; Var Tên_tham_biến : Kiểu_tham_biến);
Uses Tên _các_ Unit_ cần _thiết ;
Label Tên_nhãn;
Const Tên_hằng = Giá_trị_của_hằng;
Type Tên_kiểu : Kiểu_hằng ;
Var Tên_biến : Kiểu_biến;
Begin
(* Phần thân của thủ tục n gồm các lệnh nào đó *)
End ;
Function Tên_Hàm(Tên_tham_trị; Var Tên_tham_biến : Kiểu_tham_biến):Kiểu_giá_trị_hàm ;
Uses Tên _các_ Unit_ cần _thiết ;
Label Tên_nhãn;
Const Tên_hằng = Giá_trị_của_hằng;
Type Tên_kiểu : Kiểu_hằng ;
Var Tên_biến : Kiểu_biến;
Begin
(* Phần thân của hàm gồm các lệnh nào đó *)
End ;
BEGIN
(* Thân của chương trình chính gồm các lệnh , trong đó có cả lệnh gọi thủ tục và hàm *)
END.
Chú ý : Khi khai báo hằng hoặc biến , máy sẽ cấp phát vùng nhớ cho chúng . Giá trị trong vùng nhớ này chính là giá trị của hằng và biến tương ứng . Thí dụ
Var x : Integer;
ch : Char;
S : String[30];
y : Real;
Nam : Boolean;
thì x được cấp phát vùng nhớ 2 Byte , Ch được cấp phát vùng nhớ 1 Byte , S được cấp phát vùng nhớ 31 Byte , y được cấp phát vùng nhớ 4 Byte ., nam được cấp phát vùng nhớ 1 Byte ...