chương trình con là gì

Bách khoa toàn thư cởi Wikipedia

Trong khoa học tập PC, chương trình con cái (subprogram) hoặc subroutine là 1 đoạn lịch trình được gói gọn trở thành một đơn vị chức năng trình, nó triển khai một vài tác vụ rõ ràng tuy nhiên lịch trình cần thiết triển khai rất nhiều lần từ khá nhiều điểm nhập thời hạn chạy của chính nó. Khi lịch trình cần dùng tác vụ rõ ràng cơ thì sắp xếp thông tư gọi (call) cho tới lịch trình con cái này và nhận thành quả nếu như sở hữu sau khoản thời gian nó thực thi đua đoạn [1].

Bạn đang xem: chương trình con là gì

Ngay kể từ khi PC Ra đời thì chuyên môn lập trình sẵn loại cấu tạo modul hóa với những lịch trình con cái đã và đang được thiết lập, và được gia tăng trong những ứng dụng lập trình sẵn phù hợp ngữ. Ngày ni nhập ngữ điệu bậc cao chương trình con được diễn tả tùy từng ngữ điệu là những hàm (function), thủ tục (procedure) và phương thức (method),... Một số ngữ điệu lập trình sẵn, ví dụ điển hình Pascal và FORTRAN, phân biệt thân mật hàm (một lịch trình con cái sở hữu trả về giá chỉ trị) và thủ tục (không trả về giá chỉ trị). Các ngữ điệu không giống, ví dụ C và LISP, coi nhì thuật ngữ này như nhau. Cái thương hiệu phương thức thông thường được sử dụng nhập lập trình sẵn phía đối tượng người dùng nhằm gọi những lịch trình con cái là 1 phần của những đối tượng người dùng.

Trong lịch trình, một lịch trình con cái được luật lệ gọi lịch trình thành viên khác, hoặc rất có thể gọi chủ yếu nó. Tuy nhiên nếu như sắp xếp gọi cho nhau, ví dụ subroutine A gọi subroutine B tuy nhiên trong thân mật của subroutine B lại sở hữu gọi subroutine A, tiếp tục kéo theo lỗi biến động khi triển khai. Một số ngữ điệu sở hữu tương hỗ vạc hiện tại lỗi này nhập môi trường xung quanh biên soạn thảo trình và khi dịch. Dẫu vậy nhằm rời lỗi thì khi lập trình sẵn cần tuân hành sắp xếp gọi theo gót "mô hình cành và lá", nhập cơ "cành" là subroutine sở hữu gọi subroutine không giống, còn "lá" là subroutine không tồn tại mệnh lệnh gọi.

Khái niệm chính[sửa | sửa mã nguồn]

Kỹ thuật lập trình sẵn kéo theo việc tổ chức triển khai lịch trình loại cấu tạo modul hóa, tức là phân chia lịch trình trở thành nhiều modul hoặc đơn vị tuy nhiên chuyên môn năng lượng điện toán gọi là subroutine, và nhập trình chủ yếu thì triển khai gọi bọn chúng [2][3]. Nó mang lại cho tất cả những người lập trình sẵn những lợi ích:

Xem thêm: sgk ngữ văn 7 cánh diều

  1. Thay những đoạn trình kiểu như nhau vì chưng một subroutine, thực hiện mang đến mã lịch trình ngắn thêm một đoạn, tươi sáng và dễ dàng bảo trì.
  2. Đưa những subroutine tiếp tục đánh giá nhập tủ sách (library) ở dạng văn bạn dạng trình hoặc dạng mã [4], nhằm khi lập trình sẵn mới nhất thì chỉ việc links cho tới tủ sách cơ.
  3. Những lịch trình rộng lớn được design dạng cấu tạo đảm bảo chất lượng rất có thể trao cho những group và người lập trình sẵn không giống nhau lập trình sẵn, đôi lúc rất có thể mướn người thực hiện tăng viết lách những subroutine không thực sự phức tạp.

Do vai trò của việc tổ chức triển khai trình loại cấu tạo tuy nhiên ngay lập tức kể từ khi công nghiệp PC Ra đời, còn phải tạo lập trình ở dạng mã máy, giới sản xuất máy tiếp tục coi sóc nhiều cho tới mệnh lệnh call và tổ chức triển khai của lịch trình con cái. Nếu lời giải ngược (unassemble) mã trình thì thấy dày quánh mệnh lệnh call.

Bên cạnh những subroutine thực sự thì một vài ngữ điệu lập trình sẵn, cho dù là lập trình sẵn phù hợp ngữ, tương hỗ dạng lịch trình con cái (trong văn bạn dạng trình) mà mỗi khi dịch thì thay cho thế vì chưng đoạn mã lịch trình, ko đưa đến subroutine dạng mã thiệt sự.

Xem thêm: tiếng anh lớp 7 unit 3 a closer look 2

  • Macro: Dịch nội dung sở hữu nhập macro mang tên chỉ định và hướng dẫn và đặt điều nhập địa điểm ứng.
  • Inline: Chuyển nội dung mã được viết lách ở dạng hex nhập procedure mang tên chỉ định và hướng dẫn và đặt điều nhập địa điểm ứng.

Nhược điểm[sửa | sửa mã nguồn]

Nhược điểm chủ yếu của áp dụng lịch trình con cái tương quan cho tới sắp xếp những mã thông tư "dọn nhà" (housekeeping code) ở lịch trình con cái, thực hiện mang đến thời hạn thực hành tác vụ kéo dài thêm hơn nữa đối với khi đoạn mã này được đặt điều trực tiếp nhập lịch trình chủ yếu.

Khi đem điều khiển và tinh chỉnh lịch sự lịch trình con cái, bên trên những điểm nhập (entry) lịch trình con cái cần sắp xếp sao lưu độ quý hiếm những con cái trỏ (pointer) của cục xử lý. Khi kết đôn đốc (exit) độ quý hiếm những con cái trỏ được Phục hồi lại kể từ trị sao lưu rồi mới nhất bay. Những đoạn mã sao lưu và Phục hồi này kiểu như nhau ở những lịch trình con cái, tức là nếu như subroutine "không thực hiện gì" thì khi dịch rời khỏi mã vẫn đang còn đầy đủ cặp đoạn mã này.

Vì thế lập trình sẵn cho những vi điều khiển và tinh chỉnh sở hữu vận tốc thấp và bộ nhớ lưu trữ giới hạn thì cần phẳng phiu giữa những việc lập hay là không lập lịch trình con cái. Các CPU năng lượng điện toán lúc này sở hữu vận tốc vô cùng cao nên tổn thất thời hạn này xuất hiện ko đáng chú ý, những người dân lập trình sẵn phần mềm ko cần thiết quan hoài.

Chỉ dẫn[sửa | sửa mã nguồn]

Tham khảo[sửa | sửa mã nguồn]

Xem thêm[sửa | sửa mã nguồn]

Wikimedia Commons nhận thêm hình hình ảnh và phương tiện đi lại truyền đạt về Chương trình con.

Liên kết ngoài[sửa | sửa mã nguồn]