Lập trình là sử dụng cấu trúc dữ liệu và các câu lệnh của ngôn ngữ lập trình cụ thể để mô tả dữ liệu và diễn đạt các thao tác của thuật toán. Chương trình dịch là chương trình đặc biệt, có chức năng chuyển đổi chương trình được viết trên ngôn ngữ lập trình bậc cao thành chương trình được thực hiện trên máy tính. Chương trình dịch thực hiện hai giai đoạn: Phân tích: phân tích chương trình nguồn về từ vựng và cú pháp. Tổng hợp: nhằm tạo ra chương trình đích, gồm các bước