Giới thiệu ngôn ngữ lập trình Cobol

1. Giới thiệu về ngôn ngữ lập trình Cobol.

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.

2.Ưu điểm Cobol:

  • 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).

  • Ứng dụng COBOL thường rất lớn. Nhiều ứng dụng COBOL bao gồm nhiều triệu (1,000,000 lines) dòng lệnh – với khoảng 6,000,000+ dòng ứng dụng.

3.Cấu trúc chương trình COBOL

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

Picture1.jpg

Divisions

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.

Sections

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.

Paragraphs

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

4. Phân tích chương trình “Hello World” với COBOL

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.

  • Dòng 000500 đến dòng 001100 là các dòng trong vùng PROCEDURE DIVISION. Vùng PROCEDURE DIVISION bao gồm hai đoạn (paragraph) từ dòng 000700 (PROGRAM-BEGIN) và từ dòng 001000 (PROGRAM-DONE). Thuật ngữ paragraph có một định nghĩa chỉ định trong COBOL, nó có ý nghĩa gần như là một hàm hay chương trình con trong một số ngôn ngữ lập trình khác. Tất các những công việc thực sự của chương trình là thực hiện câu lệnh ở dòng 000800.

5. Quy định về trình bày file trong COBOL

  • 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.