Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 54 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
54
Dung lượng
1,51 MB
Nội dung
Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính Bài giảng môn Lý thuyết ngôn ngữ lập trình Bài giảng Bài giảng LÝ THUYẾT NGÔN NGỮ LẬP TRÌNH LÝ THUYẾT NGÔN NGỮ LẬP TRÌNH Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính Bài giảng môn Lý thuyết ngôn ngữ lập trìnhChương 6 Chương 6 CHƯƠNGTRÌNHCONCHƯƠNGTRÌNHCON 3/30 Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính Nội dung Chương 6 Nội dung Chương 6 • Trừu tượng hóa là một phương pháp giúp người lập trình biết cách: - Tập trung vào những vấn đề, những thuộc tính bản chất của chươngtrình - Bỏ qua các thuộc tính không cần thiết. - Mục đích của nó là đơn giản hóa quá trình lập trình. • Có hai loại trừu tượng hóa cơ bản trong ngôn ngữ lập trình: - Trừu tượng hóa quá trình. - Trừu tượng hóa dữ liệu. 4/30 Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính Nội dung Chương 6 Nội dung Chương 6 • Trừu tượng hoá dữ liệu là việc tạo ra kiểu dữ liệu trừu tượng: - Kiểu dữ liệu trừu tượng là một tập hợp các đối tượng dữ liệu - Tập hợp các phép toán, thao tác trên các đối tượng dữ liệu đó. • Khi cài đặt một kiểu dữ liệu trừu tượng trên một ngôn ngữ lập trình cụ thể, chúng ta phải thực hiện hai nhiệm vụ: - Biểu diễn kiểu dữ liệu trừu tượng bằng một cấu trúc dữ liệu hoặc một kiểu dữ liệu trừu tượng khác đã được cài đặt. - Viết các chươngtrìnhcon thực hiện các phép toán trên kiểu dữ liệu trừu tượng mà ta thường gọi là cài đặt các phép toán. • Ví dụ: các cấu trúc dữ liệu: - Chuỗi ký tự - Ngăn xếp. - Hàng đợi 5/30 Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính Nội dung Chương 6 Nội dung Chương 6 • Trừu tượng hóa quá trình: - Phân chia chươngtrình thành những chươngtrình con. - Mỗi chươngtrìnhcon có tên, đảm nhiệm một tác vụ nào đó. • Sự phân chia này sẽ che dấu tất cả các lệnh cài đặt chi tiết trong các chươngtrình con. Ở cấp chiều chươngtrình chính, ta chỉ thấy lời gọi các chươngtrìnhcon và điều này được gọi là sự đóng gói. • Ví dụ: như một chươngtrình quản lý sinh viên được viết bằng trừu tượng hóa : void main() { Nhap(); Sap_Xep (); Xuat(); } Nhap, Sap_Xep, Xuat là các phép toán trừu tượng. Chúng che dấu bên trong rất nhiều lệnh phức tạp mà ở cấp chiều chươngtrình chính ta không nhìn thấy được 6/30 Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính 6.1. Khái niệm 6.1. Khái niệm • Chươngtrìnhcon là một phép toán trừu tượng được định nghĩa bởi người lập trình. • Thông thường khi tạo ra ngôn ngữ lập trình nào đó. Nhà sản xuất tạo sẵn các chươngtrìnhcon đơn gian. Tạo thuận lợi cho người lập trình. • Các chươngtrìnhcon này thường gọi các hàm có sẵn hay các thủ tục có sẵn. 7/30 Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính 6.1. Khái niệm 6.1. Khái niệm • Các đặc tính chung của chươngtrình con: - Tất cả chươngtrìnhcon đều chỉ có một điểm vào (entry point) - Chươngtrình gọi: là chươngtrình có chứa lời gọi để cho chươngtrìnhcon thi hành. - Chươngtrình gọi bị tạm dừng trong thời gian chươngtrìnhcon thi hành. - Khi quá trình thực thi chươngtrìnhcon kết thúc, quyền điều khiển sẽ trả về chươngtrình gọi để thực hiện các hoạt động khác nằm sau chươngtrìnhcon bị gọi này • Ví dụ: void main() { Nhap(); Sap_Xep (); Xuat(); } Chươngtrình gọi Lời gọi chươngtrìnhcon Nhap() Lời gọi chươngtrìnhcon Sap_Xep() Lời gọi chươngtrìnhcon Xuat() 8/30 Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính 6.1. Khái niệm 6.1. Khái niệm • Chươngtrìnhcon trả về một kết quả duy nhất trong lời gọi chươngtrìnhcon thì thường được gọi là hàm (Function). • Chươngtrìnhcon trả về nhiều hơn một kết quả hoặc không có kết quả trả về trong lời gọi chươngtrìnhcon thì thường được gọi là thủ tục (procedure hoặc subroutine) 9/30 Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính 6.2. Đặc tả và cài đặt chươngtrìnhcon 6.2. Đặc tả và cài đặt chươngtrìnhcon 6.2.1. Đặc tả chươngtrìnhcon 6.2.2. Cài đặt chươngtrìnhcon 10/30 Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính 6.2.1. Đặc tả chươngtrìnhcon 6.2.1. Đặc tả chươngtrìnhcon • Sự đặc tả chươngtrìnhcon bao gồm: – Tên của chươngtrìnhcon – Số lượng, thứ tự các tham số và kiểu dữ liệu của mỗi tham số – Số lượng, thứ tự các kết quả trả về và kiểu dữ liệu của mỗi kết quả – Hoạt động được thực hiện bởi chươngtrìnhcon Trong C, Chỉ có một loại chươngtrìnhcon gọi là hàm [...]... của chươngtrìnhcon chung cần dựa vào thông tin về đối số của phép toán hoặc tham số của nó Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính 34/30 6.5 Đồng thường trình (Coroutines) • • • Mối quan hệ giữa chươngtrình gọi và chươngtrìnhcon bị gọi là mối quan hệ chủ-tớ Chươngtrình gọi: là chươngtrình chủ Chươngtrìnhcon bị gọi: là chươngtrình tớ • Ví dụ: void main() { Nhap(); Xuat(); Chương. .. các chươngtrìnhcon được gọi • Tham số có 2 loại: - Tham số hình thức: là một loại đặc biệt của ĐTDL trong chươngtrìnhcon Nó được xác định lúc định nghĩa chươngtrìnhcon - Tham số thực tế: là một ĐTDL được gửi cho chươngtrìnhcon bằng cách truyền cho nó lời gọi thực hiện chươngtrìnhcon Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính 18/30 6.3 Phương pháp truyền tham số cho chương trình. .. hoanvi_2so(a,b); … end • Chươngtrìnhcon chung (chương trìnhcon đa hình) là một chươngtrìnhcon có một tên nhưng có nhiều định nghĩa khác nhau, được phân biệt bởi số lượng, thứ tự và kiểu dữ liệu của các tham số Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính 32/30 6.4 Chươngtrìnhcon chung Ví dụ 6.5: Xét chươngtrình tính tổng 2 số: chương_ trình_ con Tong_2so(x:... chươngtrìnhcon • • • Sự khai báo và các lệnh thường được đóng gói Do đó: - Người sử dụng không thể truy xuất tới dữ liệu cục bộ và các lệnh bên trong chươngtrìnhcon - Người sử dụng chỉ có thể gọi chươngtrìnhcon với một tập hợp các tham số và nhận lại các kết quả đã được tính toán Tùy thuộc vào từng NNLT mà trong một chươngtrìnhcon nào đó có thể chứa các chươngtrìnhcon khác Và các chương trình. .. cho mối quan hệ chủ-tớ giữa chươngtrình gọi (chủ) và chươngtrìnhcon được gọi (tớ) trong cách gọi truyền thống Đồng thường trình là chươngtrìnhcon có nhiều điểm vào, và các điểm vào đó được điều khiển bởi chính chươngtrìnhcon đó Kỹ thuật điều khiển đồng thường trình thường được gọi là mô hình điều khiển đơn vị đối xứng Nghĩa là đồng thường trình gọi và đồng thường trình bị gọi có mức ưu tiên... trìnhcon khác Và các chươngtrìnhcon này chỉ được dùng cho chương trìnhcon chứa chúng mà không thể được gọi tới từ bên ngoài Kiểm tra kiểu cũng là một vấn đề quan trọng đối với chươngtrìnhcon Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính 17/30 6.3 Phương pháp truyền tham số cho chương trìnhcon • Phương pháp truyền tham số cho chương trìnhcon là lộ trình mà trên đó các tham số được... Xuat(); Chươngtrình gọi : chủ Lời gọi chương trìnhcon Nhap() : Tớ Lời gọi chương trìnhcon Xuat(): Tớ } Xuat() Thao tác xuất 1 Thao tác xuất 2 Chươngtrình main() Nhap() Xuat() Chủ Tớ Tớ Trường Cao đẳng CNTT HN Việt – Hàn Nhap() Thao tác nhập 1 Thao tác nhập 2 Khoa Khoa học máy tính 35/30 6.5 Đồng thường trình (Coroutines) • • • • Đồng thường trình là một loại đặc biệt của chươngtrình con, thay cho... báo tg: integer; bắt đầu in(x+y); kết thúc; chương_ trình_ con Tong_2so(x: real; y: integer); khai báo tg: integer; bắt đầu in(x+y); kết thúc; bắt đầu chươngtrình chính a:= 50.5; b:= 100; Tong_2so(a,b); … kết thúc chươngtrình Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính 33/30 6.4 Chươngtrìnhcon chung • • Khi sử dụng chươngtrìnhcon chung, trình biên dịch cần xác định đúng ý nghĩa của... tính ảo bên dưới NNLT Chươngtrìnhcon biểu diễn một phép toán được xây dựng bởi người lập trình nên được cài đặt bằng cách dùng cấu trúc dữ liệu và các phép toán được cung cấp bởi chính bản thân NNLT đó Sự cài đặt chươngtrìnhcon được xác định bởi: - Việc khai báo dữ liệu cục bộ xác định cấu trúc dữ liệu cho chươngtrìnhcon - Các lệnh xác định hành động sẽ làm khi chươngtrìnhcon thực hiện Trường... tính 14/30 6.2.1 Đặc tả chươngtrìnhcon Ví dụ 6.3: Đặc tả chươngtrìnhcon là thủ tục được viết bằng Pascal: Procedure TinhBieuthuc; Var a,b:integer; Begin Readln(a); Readln(b); Write(a+b); End; Đặc tả này tính tổng biểu thức a+b Sự đặc tả chươngtrìnhcon bao gồm những thành phần nào ? Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính 15/30 6.2.2 Cài đặt chươngtrìnhcon • • • Các phép toán . của chương trình con: - Tất cả chương trình con đều chỉ có một điểm vào (entry point) - Chương trình gọi: là chương trình có chứa lời gọi để cho chương trình. Đặc tả và cài đặt chương trình con 6.2. Đặc tả và cài đặt chương trình con 6.2.1. Đặc tả chương trình con 6.2.2. Cài đặt chương trình con 10/30 Trường