Ngày nay, khi nghe đến tên những ngôn ngữ lập trình như: java, C, C++, C#, PHP, hẳn đã quá quen thuộc đối với chúng ta. Trong bài viết lần này, tôi muốn giới thiệu đến mọi người một ngôn ngữ ít phổ biến hơn, đó chính là ngôn ngữ lập trình Cobol.
COBOL là một ngôn ngữ lập trình thế hệ thứ ba và là một trong những ngôn ngữ lập trình lâu nhất còn được sử dụng (từ thập niên 1960). COBOL được lấy từ các chữ cái đầu của từ COmmon Business-Oriented Language. Ngôn ngữ này được phát minh bởi bà Grace Hopper(1906-1992), một người phụ nữ phi thường, là một trong những lập trình viên đầu tiên trên thế giới. COBOL ra đời dựa trên ý tưởng rằng phần mềm nên được viết bằng các dòng lệnh dễ hiểu thay vì những chuỗi hàm và con số. Nhờ đó, ngay cả doanh nhân cũng có thể viết được phần mềm mà họ cần.
Hiện tại Cobol là ngôn ngữ chạy nhiều nhất trên các máy vi tính Mainframe, hằng ngày, hàng triệu dòng Cobol được viết trong những chương trình "Business". Năm 2006, công ty nghiên cứu thị trường công nghệ thông tin Gartner, ra thông báo rằng hiện tại 60% các chương trình chuyên nghiệp được viết hằng ngày được viết bởi ngôn ngữ COBOL.COBOL được sử dụng nhiều trong các ứng dụng liên quan đến ngân hàng và bảo hiểm.
COBOL có rất nhiều chức năng để xử lý tập tin, nhất là theo cách xử lý hàng loạt (batch processing). Không có ngôn ngữ nào có chức năng này ngoài COBOL. COBOL là hạt nhận của vô số phần mềm thương mại vẫn được sử dụng cho tới hiện tại.
COBOL rất dễ viết, dễ đọc lại để sửa hoặc viết thêm vào (rất quan trọng đối với thế giới chuyên nghiệp vì người viết chương trình rất có thể đã rời công ty 20, 30 năm sau, mà chương trình vẫn tiếp tục chạy).
Các chương trình COBOL là một chương trình có cấu trúc. Mỗi thành phần của cấu trúc bao gồm một hoặc nhiều thành phần con.
Kiến trúc này bao gồm các phân vùng (Division), vùng (Section), đoạn lệnh (Paragraph), câu lệnh (Sentence) và phát biểu (Statement).
000100 IDENTIFICATION DIVISION.
000200 ENVIRONMENT DIVISION.
000300 DATA DIVISION.
000400 PROCEDURE DIVISION.
Sau đây chúng ta nhìn vào sơ đồ bên dưới để hiểu được cấu trúc cha con của các thành phần trong ngôn ngữ lập trình Cobol
Một phân vùng là một khối mã lệnh, thông thường bao gồm một hoặc nhiều vùng, trong đó vị trí bắt đầu là vị trí sau tên gọi phân vùng và vị trí kết thúc là điểm bắt đầu một phân vùng tiếp theo hoặc kết thúc chương trình. Kiến trúc một chương trình COBOL bao gồm 4 phân vùng (division): IDENTIFICATION DIVISION, ENVIRONMENT DIVISION, DATA DIVISION, PROCEDURE DIVISION.
Một vùng cũng là một khối mã lệnh (nhưng nhỏ hơn phân vùng) thường bao gồm một hoặc nhiều đoạn. Một vùng bắt đầu bằng tên vùng và kết thúc tại vị trí bắt đầu vùng tiếp theo hoặc hoặc kết thúc chương trình.
Một đoạn là một khối mã lệnh thường bao gồm một hoặc nhiều câu lệnh.
Sentences and statements
Câu lệnh bao gồm một hoặc nhiều mệnh đề và kết thúc bằng một dấu chấm
Sau đây chúng ta sẽ phân tích chương trinh nổi tiếng “Hello World” sử dụng ngôn ngữ lập trình Cobol:
000100 IDENTIFICATION DIVISION.
000200 PROGRAM-ID. HELLO.
000300 ENVIRONMENT DIVISION.
000400 DATA DIVISION.
000500 PROCEDURE DIVISION.
000600
000700 PROGRAM-BEGIN.
000800 DISPLAY "Hello world".
000900
001000 PROGRAM-DONE.
001100 STOP RUN.
Dòng 000100 và 000200 là của phân vùng IDENTIFICATION DIVISION. Phần này dùng để nhận diện những thông tin cơ bản về chương trình, ở đây nó chỉ bao gồm PROGRAM-ID, HELLO.
Dòng 000300 là vùng ENVIRONMENT DIVISION được dụng để nhận diện môi trường khi chương trình được thực thi.
Dòng 000400 là vùng dữ liệu DATA DIVISIONdòng này để khai báo các biến sử dụng trong chương trình.Chương trình này không có dữ liệu nêu vùng DATA DIVISION được bỏ trống.
Vùng đánh số dòng (line numbers area) : gồm 6 ký tự (cột) đầu tiên của mỗi dòng trong chương trình được sử dụng để đánh số thứ tự các dòng code của chương trình.
Vùng chỉ thị (indicator area) : nằm ở ký tự thứ 7 luôn luôn được bỏ trắng, trường hợp dòng mã là một dòng chú thích thì ký tự tại vị trí này là dấu sao (' *').
Vùng A (Area A) : gồm 4 ký tự tiếp theo từ vị trí thứ 8 đến 11 được gọi là. Các phân vùng DIVISION và các đoạn (SECTIONs) phải bắt đầu từ vùng này. Thông thường vị trí bắt đầu tốt cho phân vùng này là bắt đầu từ cột thứ 8 thay vì các vị trí khác trong vùng A.
Vùng B (Area B): gồm các ký tự có vị trí từ 12 đến 72. Các câu lệnh phải bắt đầu và kết thúc trong vùng B này.
Vùng không chỉ định: bao gồm các ký tự từ vị trí 73. Những ký tự này sẽ không được xét trong chương trình.
Unpublished comment
Viết câu trả lời