1. Trang chủ
  2. » Công Nghệ Thông Tin

Giáo trình phân tích khả năng ứng dụng đối tượng dữ liệu mang bộ mô tả kiểu động p4

5 8 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Cấu trúc

  • NGÔN NGỮ LẬP TRÌNH

    • ĐẠI HỌC CẦN THƠ - 12/2003

      • MỤC ĐÍCH YÊU CẦU

      • ĐỐI TƯỢNG SỬ DỤNG

      • NỘI DUNG CỐT LÕI

      • KIẾN THỨC TIÊN QUYẾT

      • DANH MỤC TÀI LIỆU THAM KHẢO

      • 1.1 TỔNG QUAN

        • 1.1.1 Mục tiêu

        • 1.1.2 Nội dung cốt lõi

        • 1.1.3 Kiến thức cơ bản cần thiết

      • 1.2 KHÁI NIỆM VỀ NGÔN NGỮ LẬP TRÌNH

      • 1.3 VAI TRÒ CỦA NGÔN NGỮ LẬP TRÌNH

      • 1.4 LỢI ÍCH CỦA VIỆC NGHIÊN CỨU NNLT

        • 1.4.1 Cho phép lựa chọn một NNLT phù hợp với dự án thực tế

        • 1.4.2 Sử dụng một cách có hiệu quả các công cụ của ngôn ngữ

        • 1.4.3 Làm tăng vốn kinh nghiệm khi xây dựng các chương trình

        • 1.4.4 Tạo sự dễ dàng để học một ngôn ngữ mới

        • 1.4.5 Tạo tiền đề để thiết kế một ngôn ngữ mới

      • 1.5 CÁC TIÊU CHUẨN ÐÁNH GIÁ MỘT NGÔN NGỮ LẬP TRÌNH TỐT

        • 1.5.1 Tính dễ đọc

        • 1.5.2 Tính dễ viết

        • 1.5.3 Ðộ tin cậy

        • 1.5.4 Chi phí

      • 1.6 CÂU HỎI ÔN TẬP

      • 2.1 TỔNG QUAN

        • 2.1.1 Mục tiêu

        • 2.1.2 Nội dung cốt lõi

        • 2.1.3 Kiến thức cơ bản cần thiết

      • 2.2 ÐỐI TƯỢNG DỮ LIỆU

        • 2.2.1 Khái niệm đối tượng dữ liệu

        • 2.2.2 Các loại ÐTDL

        • 2.2.3 Thuộc tính của ÐTDL

        • 2.2.4 Giá trị dữ liệu

        • 2.2.5 Thời gian tồn tại

        • 2.2.6 Các mối liên kết

      • 2.3 BIẾN VÀ HẰNG

        • 2.3.1 Biến

        • 2.3.2 Hằng

      • 2.4 KIỂU DỮ LIỆU

        • 2.4.1 Ðịnh nghĩa kiểu dữ liệu

        • 2.4.2 Sự đặc tả kiểu dữ liệu

          • Phép toán

        • 2.4.3 Sự cài đặt kiểu dữ liệu

      • 2.5 SỰ KHAI BÁO

        • 2.5.1 Khái niệm khai báo

        • 2.5.2 Mục đích của sự khai báo

      • 2.6 KIỂM TRA KIỂU VÀ BIẾN ÐỔI KIỂU

        • 2.6.1 Khái niệm kiểm tra kiểu

        • 2.6.2 Kiểm tra kiểu động

        • 2.6.3 Kiểm tra kiểu tĩnh

      • 2.7 CHUYỂN ÐỔI KIỂU

      • 2.8 GÁN VÀ KHỞI TẠO

        • 2.8.1 Phép gán

        • 2.8.2 Sự khởi tạo biến

      • 2.9 CÂU HỎI ÔN TẬP

      • 3.1 TỔNG QUAN

        • 3.1.1 Mục tiêu

        • 3.1.2 Nội dung cốt lõi

        • 3.1.3 Kiến thức cơ bản cần thiết

      • 3.2 ÐỊNH NGHĨA KIỂU DỮ LIỆU SƠ CẤP

      • 3.3 SỰ ÐẶC TẢ CÁC KIỂU DỮ LIỆU SƠ CẤP

        • 3.3.1 Thuộc tính của kiểu dữ liệu sơ cấp

        • 3.3.2 Giá trị của kiểu dữ liệu sơ cấp

        • 3.3.3 Phép toán trên kiểu dữ liệu sơ cấp

      • 3.4 CÀI ÐẶT CÁC KIỂU DỮ LIỆU SƠ CẤP

        • 3.4.1 Tổ chức dữ liệu trong bộ nhớ

        • 3.4.2 Cài đặt phép toán

      • 3.5 KIỂU DỮ LIỆU SỐ

        • 3.5.1 Số nguyên

          • Sự đặc tả

          • Sự cài đặt

        • 3.5.2 Miền con của số nguyên

          • Sự đặc tả

          • Sự cài đặt

          • Lợi ích của việc sử dụng kiểu miền con

        • 3.5.3 Số thực dấu chấm động

          • Sự đặc tả

          • Sự cài đặt

      • 3.6 KIỂU LIỆT KÊ

        • 3.6.1 Đặt vấn đề

        • 3.6.2 Sự đặc tả

        • 3.6.3 Sự cài đặt

        • 3.6.4 Lợi ích của việc sử dụng kiểu liệt kê

      • 3.7 KIỂU LOGIC

        • 3.7.1 Sự đặc tả

        • 3.7.2 Phép cài đặt

      • 3.8 KIỂU KÝ TỰ

        • 3.8.1 Sự đặc tả

        • 3.8.2 Phép cài đặt

      • 3.9 CÂU HỎI ÔN TẬP

      • 4.1 TỔNG QUAN

        • 4.1.1 Mục tiêu

        • 4.1.2 Nội dung cốt lõi

        • 4.1.3 Kiến thức cơ bản cần thiết

      • 4.2 ÐỊNH NGHĨA KIỂU DỮ LIỆU CÓ CẤU TRÚC

      • 4.3 SỰ ÐẶC TẢ KIỂU CẤU TRÚC DỮ LIỆU

        • 4.3.1 Sự đặc tả các thuộc tính

          • Số lượng phần tử

          • Tên để dùng cho các phần tử được lựa chọn

          • Số lượng lớn nhất các phần tử

          • Tổ chức cấu trúc

        • 4.3.2 Các phép toán trên cấu trúc dữ liệu

          • Phép toán lựa chọn phần tử của cấu trúc

          • Các phép toán thao tác trên toàn bộ cấu trúc dữ liệu

          • Thêm / bớt các phần tử

          • Tạo / hủy CTDL

      • 4.4 SỰ CÀI ÐẶT CÁC CẤU TRÚC DỮ LIỆU

        • 4.4.1 Biểu diễn bộ nhớ

          • Biểu diễn tuần tự

          • Biểu diễn liên kết

        • 4.4.2 Cài đặt các phép toán trên cấu trúc dữ liệu

          • Ðối với biểu diễn tuần tự

          • Ðối với biểu diễn liên kết

      • 4.5 VÉCTƠ

        • 4.5.1 Định nghĩa véctơ

        • 4.5.2 Sự đặc tả và cú pháp

          • Đặc tả thuộc tính của véctơ

          • Đặc tả các phép toán trên véctơ

        • 4.5.3 Cài đặt một véctơ

          • Biểu diễn bộ nhớ

          • Giải thuật thực hiện các phép toán

      • 4.6 MẢNG NHIỀU CHIỀU

        • 4.6.1 Sự đặc tả và cú pháp

          • Đặc tả thuộc tính

          • Đặc tả phép toán

        • 4.6.2 Sự cài đặt

          • Sự biểu diễn bộ nhớ

          • Giải thuật thực hiện phép toán

      • 4.7 MẨU TIN

        • 4.7.1 Định nghĩa mẩu tin

        • 4.7.2 Sự đặc tả và cú pháp

          • Đặc tả thuộc tính

          • Đặc tả phép toán

        • 4.7.3 Sự cài đặt

          • Biểu diễn bộ nhớ

          • Giải thuật thực hiên phép toán

      • 4.8 MẨU TIN CÓ CẤU TRÚC THAY ÐỔI

        • 4.8.1 Ðặc tả và khai báo

          • Đặc tả thuộc tính

          • Đặc tả phép toán

        • 4.8.2 Cài đặt mẩu tin có cấu trúc thay đổi

          • Biểu diễn bộ nhớ

          • Giải thuật thực hiện phép toán

      • 4.9 CHUỖI KÝ TỰ:

        • 4.9.1 Ðặc tả và cú pháp:

          • Đặc tả thuộc tính

          • Đặc tả phép toán

        • 4.9.2 Cài đặt

          • Biểu diễn bộ nhớ

          • Giải thuật thực hiện các phép toán

      • 4.10 CẤU TRÚC DỮ LIỆU CÓ KÍCH THƯỚC THAY ÐỔI

        • 4.10.1 Danh sách và cấu trúc danh sách

        • 4.10.2 Ngăn xếp và hàng đợi

      • 4.11 CON TRỎ

        • 4.11.1 Cấp phát tĩnh, cấp phát động và con trỏ

        • 4.11.2 Sự đặc tả

          • Đặc tả thuộc tính

          • Đặc tả phép toán

        • 4.11.3 Sự cài đặt

          • Ðịa chỉ tuyệt đối

          • Ðịa chỉ tương đối

      • 4.12 TẬP HỢP

        • 4.12.1 Ðặc tả

          • Đặc tả thuộc tính

          • Đặc tả phép toán

        • 4.12.2 Cài đặt

          • Véctơ bit

          • Bảng băm

      • 4.13 TẬP TIN

        • 4.13.1 Tập tin tuần tự

          • Sự đặc tả

          • Phép cài đặt

        • 4.13.2 Tập tin văn bản

        • 4.13.3 Tập tin truy xuất trực tiếp

      • 4.14 CÂU HỎI ÔN TẬP

      • 5.1 TỔNG QUAN

        • 5.1.1 Mục tiêu

        • 5.1.2 Nội dung cốt lõi

        • 5.1.3 Kiến thức cơ bản cần thiết

      • 5.2 SỰ PHÁT TRIỂN CỦA KHÁI NIỆM KIỂU DỮ LIỆU

      • 5.3 TRỪU TƯỢNG HÓA

        • 5.3.1 Khái niệm trừu tượng hóa

        • 5.3.2 Trừu tượng hóa quá trình

        • 5.3.3 Trừu tượng hóa dữ liệu

      • 5.4 ÐỊNH NGHĨA KIỂU

        • 5.4.1 Khái niệm

        • 5.4.2 Tính tương đương của các kiểu định nghĩa

      • 5.5 CÂU HỎI ÔN TẬP

      • 6.1 TỔNG QUAN

        • 6.1.1 Mục tiêu

        • 6.1.2 Nội dung cốt lõi

        • 6.1.3 Kiến thức cơ bản cần thiết

      • 6.2 ÐỊNH NGHĨA 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

      • 6.3 CƠ CHẾ GỌI CHƯƠNG TRÌNH CON

        • 6.3.1 Ðịnh nghĩa và kích hoạt chương trình con

        • 6.3.2 Cài đặt định nghĩa và kích hoạt chương trình con

      • 6.4 CHƯƠNG TRÌNH CON CHUNG

      • 6.5 TRUYỀN THAM SỐ CHO CHƯƠNG TRÌNH CON

        • 6.5.1 Khái niệm truyền tham số

        • 6.5.2 Sự tương ứng giữa tham số tham số thực tế và tham số hình thức

        • 6.5.3 Các phương pháp truyền tham số tham số

          • Truyền bằng giá trị (transmission by value)

          • Truyền tham chiếu (transmission by reference)

          • Truyền bằng giá trị-kết quả (transmission by value-result)

          • Truyền bằng kết quả (transmission by result)

      • 6.6 CÂU HỎI ÔN TẬP

      • 7.1 TỔNG QUAN

        • 7.1.1 Mục tiêu

        • 7.1.2 Nội dung cốt lõi

        • 7.1.3 Kiến thức cơ bản cần thiết

      • 7.2 KHÁI NIỆM ÐIỀU KHIỂN TUẦN TỰ

      • 7.3 ÐIỀU KHIỂN TUẦN TỰ TRONG BIỂU THỨC

        • Ðặt vấn đề

        • 7.3.2 Sự biểu diễn theo cấu trúc cây của biểu thức

        • 7.3.3 Cú pháp của biểu thức

          • Ký hiệu tiền tố (prefix)

          • Ký hiệu hậu tố (postfix)

          • Kí hiệu trung tố (infix)

        • 7.3.4 Dịch biểu thức thành biểu diễn cây

        • 7.3.5 Biểu diễn trong thời gian thực hiện của biểu thức

      • 7.4 ÐIỀU KHIỂN TUẦN TỰ GIỮA CÁC LỆNH

        • 7.4.1 Các lệnh cơ bản

        • 7.4.2 Điều khiển tuần tự dùng nhãn lệnh và lệnh GOTO

        • 7.4.3 Các lệnh cấu trúc

          • Lệnh hợp thành (Compound Statements)

          • Lệnh điều kiện (Conditional Statements)

          • Lệnh lặp (Interation Statements)

      • 7.5 SỰ NGOẠI LỆ VÀ XỬ LÝ NGOẠI LỆ

        • 7.5.1 Một số khái niệm

        • 7.5.2 Xử lý ngoại lệ

        • 7.5.3 Ðề xuất một ngoại lệ

        • 7.5.4 Lan truyền một ngoại lệ (Propagating an exception)

        • 7.5.5 Sau khi một ngoại lệ được xử lý

      • 7.6 CÂU HỎI ÔN TẬP

      • 8.1 TỔNG QUAN

        • 8.1.1 Mục tiêu

        • 8.1.2 Nội dung cốt lõi

        • 8.1.3 Kiến thức cơ bản cần thiết

      • 8.2 NGÔN NGỮ LẬP TRÌNH HÀM

        • 8.2.1 Giới thiệu

        • 8.2.2 Hàm toán học

        • 8.2.3 Dạng hàm

        • 8.2.4 Bản chất của ngôn ngữ lập trình hàm

      • 8.3 NGÔN NGỮ LISP

        • 8.3.1 Giới thiệu:

        • 8.3.2 Các khái niệm cơ bản

          • Nguyên tử (atom)

          • Danh sách

          • Biểu thức

        • 8.3.3 Các hàm

          • Một số hàm định nghĩa trước

          • Hàm do người lập trình định nghĩa

        • 8.3.4 Ðệ quy

        • 8.3.5 Các hàm nhập xuất

        • 8.3.6 Biến toàn cục và biến cục bộ

          • Biến toàn cục

          • Biến cục bộ

          • Biến cục bộ che biến toàn cục

        • 8.3.7 Hướng dẫn sử dụng LISP

          • Sử dụng XLISP

          • Soạn thảo tập tin chương trình

          • Nạp hàm tự định nghĩa cho XLISP

          • Một số thông báo lỗi thường gặp

          • - Unbound function: Hàm không có.

          • - Bad function: Hàm sai.

          • - Too many arguments: Thừa tham số.

          • - Too few arguments: Thiếu tham số.

          • - Misplaced close paren: Thừa dấu ngoặc đóng/ Thiếu dấu ngoặc mở.

          • - EOF reached beore expression end: Thừa dấu ngoặc mở/ Thiếu dấu ngoặc đóng.

          • - Not a number: Đối số của hàm phải là một số.

          • - Bad argument type: Kiểu của tham số sai.

      • 9.1 TỔNG QUAN

        • 9.1.1 Mục tiêu

        • 9.1.2 Nội dung cốt lõi

        • 9.1.3 Kiến thức cơ bản cần thiết

      • 9.2 GIỚI THIỆU VỀ LẬP TRÌNH LOGIC

      • 9.3 NGÔN NGỮ PROLOG

        • 9.3.1 Giới thiệu

        • 9.3.2 Các yếu tố cơ bản của Turbo Prolog

          • Đối tượng

          • Quan hệ giữa các đối tượng

          • Sự kiện và luật

        • 9.3.3 Cấu trúc của một chương trình Prolog

          • Phần Domains

          • Phần Predicates

          • Phần Clauses

          • Phần Goal

          • Một số ví dụ về chương trình prolog

        • 9.3.4 Các nguyên tắc của ngôn ngữ Prolog

          • Đồng nhất

          • Quay lui

        • 9.3.5 Bộ ký tự, từ khoá

        • 9.3.6 Các kiểu dữ liệu

          • Kiểu dữ liệu chuẩn

          • Các kiểu dữ liệu do người lập trình định nghĩa

        • 9.3.7 Các hàm xuất nhập chuẩn

          • Xuất ra màn hình

          • Nhập vào từ bàn phím

        • 9.3.8 Kỹ thuật đệ quy

Nội dung

Tham khảo tài liệu ''giáo trình phân tích khả năng ứng dụng đối tượng dữ liệu mang bộ mô tả kiểu động p4'', công nghệ thông tin, cơ sở dữ liệu phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

h a n g e Vi e c u -tr a c k w y N c Function Ten_ham(Danh sách tham số với kiểu liệu tương ứng): Kiểu kết trả Ví dụ Function FN(x:real; y:integer) : real Ðặc tả xác định hàm FN : REAL x INTEGER -> REAL Nếu chương trình trả nhiều kết khơng có kết trả tên chương trình thường gọi thủ tục (procedure subroutine) Cú pháp điển hình đặc tả thủ tục quy định ngơn ngữ lập trình Pascal: Procedure Ten_thu_tuc(Danh sách tham sốcùng với kiểu liệu tương ứng) Ví dụ Procedure SUB(X:real; Y:Integer; Var Z:Real; Var U:boolean); Trong đặc tả này, tham số có tên đứng sau VAR biểu thị kết tham số bị thay đổi Cú pháp đặc tả Ada là: Procedure SUB(X: IN Real; Y: IN Integer; Z: IN OUT Real; U: OUT Boolean) Thủ tục khai báo chương trình với xác định: SUB : Real x Integer x Real -> Real x Boolean Các từ IN, OUT IN OUT phân biệt ba trường hợp sau đây: IN định tham số bị thay đổi cương trình con, IN OUT định tham số bị thay đổi OUT định kết Mặc dù chương trình biểu diễn hàm tốn học có vấn đề tương tự phép tốn ngun thuỷ: - Chương trình có tham số ẩn dạng biến khơng địa phương mà tham chiếu - Chương trình có kết ẩn (hiệu ứng lề) trả thông qua thay đổi biến không địa phương thông qua việc thay đổi tham số IN-OUT - Chương trình nhạy cảm với tiền sử (tự sửa đổi), kết qủa khơng phụ thuộc vào tham số cho lần gọi mà cịn phụ thuộc vào toàn lịch sử lần gọi trước Nhạy cảm với tiền sử liệu địa phương giữ lại lần gọi chương trình thơng qua thay đổi mã riêng (ít phổ biến hơn) 6.2.2 Cài đặt chương trình Các phép tốn ngun thuỷ cài đặt cách dùng cấu trúc liệu phép tốn cung cấp máy tính ảo bên ngơn ngữ lập trình Chương trình biểu diễn phép toán xây dựng người lập trình chương trình cài đặt cách dùng cấu trúc liệu phép tốn cung cấp thân ngơn ngữ lập trình Sự cài đặt xác định thân chương trình con, bao gồm việc khai báo liệu cục xác định cấu trúc liệu dùng cho chương trình lệnh xác định hành động làm chương trình thực Sự khai báo lệnh thường bao gói, người sử dụng chương trình khơng thể truy xuất tới liệu cục lệnh bên chương trình Người sử 64 bu to k lic d o m o m w o d o Chương VI: Chương trình w w w w w C lic k to bu Ngôn ngữ lập trình C y N O W ! XC er O W F- w PD h a n g e Vi e ! XC er PD F- c u -tr a c k c h a n g e Vi e y N c dụng gọi chương trình với tập hợp tham số nhận lại kết tính tốn Cú pháp Pascal chương trình điển hình: FUNCTION FN(x:REAL; y:INTEGER):REAL ; (Mô tả) VAR m : ARRAY[1 10] OF REAL; (Khai báo đối n : INTEGER; tượng liệu cục bộ) BEGIN (Dãy lệnh xác định hành động chương trình con) END; Thơng thường chương trình có chương trình khác biểu thị phép tốn định nghĩa người lập trình dùng cho chương trình chứa chúng Những chương trình "cục bộ" bao gói, nghĩa chúng khơng thể gọi tới từ bên ngồi chương trình chứa chúng Kiểm tra kiểu vấn đề quan trọng chương trình Mỗi lần gọi chương trình địi hỏi tham số có kiểu xác định đặc tả chương trình Kiểu kết trả chương trình phải biết đến Vấn đề kiểm tra kiểu tương tự phép tốn ngun thuỷ Kiểm tra kiểu thực cách tĩnh trình dịch, có khai báo kiểu cho tham số kết chương trình Mặt khác kiểm tra kiểu động q trình thực chương trình Sự chuyển đổi kiểu ẩn tham số để đổi chúng thành kiểu cung cấp cách tự động cài đặt ngôn ngữ 6.3 CƠ CHẾ GỌI CHƯƠNG TRÌNH CON 6.3.1 Ðịnh nghĩa kích hoạt chương trình Người lập trình viết định nghĩa chương trình chương trình Thơng qua việc thực chương trình, chương trình gọi kích hoạt chương trình (subprogram activation) tạo Khi thực chương trình kết thúc kích hoạt bị phá huỷ Nếu có lần gọi khác kích hoạt tạo Như từ định nghĩa chương trình con, có nhiều kích hoạt tạo q trình thực chương trình Sự định nghĩa dùng làm khn mẫu (template) cho việc tạo kích hoạt q trình thực Chú ý định nghĩa diễn tả chương trình viết biết đến trình dịch Kích hoạt chương trình có q trình thực Trong q trình thực hiện, định nghĩa tồn dạng khuôn mẫu mà từ kích hoạt tạo 6.3.2 Cài đặt định nghĩa kích hoạt chương trình Xét lại định nghĩa chương trình Pascal: FUNCTION FN(x : REAL; y : INTEGER) : REAL; CONST max = 20; 65 bu to k d o m o o c u -tr a c k w lic w w w d o Chương VI: Chương trình m C lic k to bu Ngơn ngữ lập trình w w w C y N O W ! XC er O W F- w PD h a n g e Vi e ! XC er PD F- c u -tr a c k c h a n g e Vi e y N c VAR m : ARRAY[1 max] OF REAL; n : INTEGER; BEGIN n := MAX; x := * x + m[5]; END; Sự định nghĩa xác định thành phần cần thiết cho kích hoạt chương trình con: 1/ Bộ nhớ tham số, đối tượng liệu x y 2/ Bộ nhớ cho kết hàm, đối tượng liệu kiểu REAL; 3/ Bộ nhớ cho biến cục bộ, mảng m biến n 4/ Bộ nhớ cho trực kiện hằng, 20, 5/ Bộ nhớ cho mã thực phát sinh từ lệnh thân chương trình Ðịnh nghĩa chương trình cho phép vùng nhớ tổ chức mã thực xác định thơng qua việc dịch Kết việc dịch khuôn mẫu dùng để xây dựng kích hoạt riêng thời gian chương trình gọi trình thực Ðể xây dựng kích hoạt chương trình từ khn mẫu nó, khn mẫu ban đầu phải chép vào vùng nhớ Tuy nhiên thay chép hồn tồn, tách thành hai phần: 1/ Phần tĩnh, gọi đoạn mã (code segment) bao gồm mục (các hằng) (các mã thực được) nói Phần tĩnh khơng thay đổi trình thực chương trình dùng cho tất kích hoạt 2/ Phần động, gọi mẩu tin kích hoạt (Activation record) bao gồm mục (Các tham số), (Kết hàm) (dữ liệu cục bộ) cộng thêm nhiều mục khác liệu ẩn vùng nhớ tạm, điểm trở về, tham khảo biến không cục Phần động có cấu trúc giống cho tất kích hoạt chứa giá trị liệu khác cho kích họat Do kích hoạt cần thiết phải có mẩu tin kích hoạt riêng Hình vẽ sau trình bày cấu trúc kích hoạt chương trình hàm FN nói 66 bu to k d o m o o c u -tr a c k w lic w w w d o Chương VI: Chương trình m C lic k to bu Ngơn ngữ lập trình w w w C y N O W ! XC er O W F- w PD h a n g e Vi e ! XC er PD F- c u -tr a c k c h a n g e Vi e c u -tr a c k w y N c Mở đầu Khối mã thực Mã lệnh thực Kết thúc 20 Đoạn mã FN Các Ðiểm trở Kết hàm Các tham số FN x y m : : : n Mẩu tin kích họat FN Các biến cục Ðối với chương trình con, đoạn mã tồn thơng qua thực chương trình Các mẩu tin kích hoạt tạo huỷ bỏ cách động thông qua thực lần chương trình gọi lần kết thúc RETURN Ðọan mã FN Kích họat Kích họat Kích họat thứ hai cuối Mẩu tin kích họat FN Mẩu tin kích họat FN Mẩu tin kích họat FN Kích thước cấu trúc mẩu tin kích hoạt chương trình thơng thường xác định q trình dịch, trình biên dịch (compile) xác định mẩu tin kích hoạt lớn vị trí phần tử Ðể truy xuất đến phần tử sử dụng cơng thức tính địa sở cộng độ dời trình bày mẩu tin bình thường 67 bu to k lic d o m o m w o d o Chương VI: Chương trình w w w w w C lic k to bu Ngôn ngữ lập trình C y N O W ! XC er O W F- w PD h a n g e Vi e ! XC er PD F- c u -tr a c k c h a n g e Vi e y N c 6.4 CHƯƠNG TRÌNH CON CHUNG Sự đặc tả chương trình thơng thường liệt kê số lượng, thứ tự kiểu liệu tham số Chương trình chung (generic subprogram) chương trình có tên có nhiều định nghĩa khác nhau, phân biệt số lượng, thứ tự kiểu liệu tham số Khái niệm phép toán chung đề cập chương II (phần mục đích khai báo) Một phép tốn hay chương trình chung xuất hiện, vấn đề trình biên dịch xác định ý nghĩa tập hợp nhiều ý nghĩa có Thơng tin đối số phép toán tham số chương trình giúp chương trình dịch nhận biết ý nghĩa đích thực chương trình chung 6.5 TRUYỀN THAM SỐ CHO CHƯƠNG TRÌNH CON 6.5.1 Khái niệm truyền tham số Truyền tham số phương pháp chuyển giao liệu đơn vị chương trình nhằm đạt kết khác gọi thực chương trình Tham số có hai loại tham số hình thức tham số thực tế Tham số hình thức loại đặc biệt ÐTDL cục chương trình Nó xác định lúc định nghĩa chương trình Khi định nghĩa chương trình con, phải xác định danh sách tham số hình thức với khai báo kiểu tương ứng Tham số thực tế ÐTDL chia sẻ cho chương trình cách truyền lời gọi thực chương trình 6.5.2 Sự tương ứng tham số tham số thực tế tham số hình thức Khi chương trình gọi với danh sách tham số thực tế địi hỏi phải có tương ứng tham số hình thức tham số thực tế Sự tương ứng nhằm để xác định tham số thực tế truyền cho tham số hình thức Có hai phương pháp để xác định tương ứng này: Tương ứng vị trí: Sự tương ứng cặp tham số thực tế tham số hình thức đặt sở tương ứng vị trí chúng danh sách tham số thực tế lúc gọi danh sách tham số hình thức định nghĩa chương trình Hầu hết ngơn ngữ dùng tương ứng vị trí số lượng tham số hình thức tham số thực tế cặp tương ứng Tuy nhiên có ngơn ngữ cho phép lời gọi chương trình khơng cần cung cấp đủ số lượng tham số thực tế Tương ứng tên: Tham số hình thức bắt cặp với tham số thực tế định lời gọi chương trình Ví dụ Ada có lời gọi chương trình sau: SUB(y => B, x => 27) Trong tham số thực tế B bắt cặp với tham số hình thức y tham số thực tế 27 bắt cặp với tham số hình thức x 68 bu to k d o m o o c u -tr a c k w lic w w w d o Chương VI: Chương trình m C lic k to bu Ngơn ngữ lập trình w w w C y N O W ! XC er O W F- w PD h a n g e Vi e ! XC er PD F- c u -tr a c k c ... chương trình con: 1/ Bộ nhớ tham số, đối tượng liệu x y 2/ Bộ nhớ cho kết hàm, đối tượng liệu kiểu REAL; 3/ Bộ nhớ cho biến cục bộ, mảng m biến n 4/ Bộ nhớ cho trực kiện hằng, 20, 5/ Bộ nhớ cho... kết chương trình Mặt khác kiểm tra kiểu động q trình thực chương trình Sự chuyển đổi kiểu ẩn tham số để đổi chúng thành kiểu cung cấp cách tự động cài đặt ngơn ngữ 6.3 CƠ CHẾ GỌI CHƯƠNG TRÌNH CON... INTEGER; tượng liệu cục bộ) BEGIN (Dãy lệnh xác định hành động chương trình con) END; Thơng thường chương trình có chương trình khác biểu thị phép toán định nghĩa người lập trình dùng cho chương trình

Ngày đăng: 08/05/2021, 17:53

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN