Các thành phần cơ bản của Ngôn ngữ lập trình

1. Các thành phần cơ bản

1.1. Bảng chữ cái

  • là tập kí tự dùng để viết chương trình
  • Bảng chữ cái trong NNLT Pascal gồm:
    • chữ cái thường/hoa trong bảng chữ cái tiếng Anh
      • a,b,c,d,e,f,g,h,I,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y
      • A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z
    • 10 chữ số Ả Rập: 0,1,2,3,4,5,6,7,8,9
    • 1 số kí tự đặc biệt: + – * / = < > [ ] . , ; # ^ $ @ & ( ) { } : ‘ và dấu cách
  • Bảng chữ cái trong NNLT Python:
    • là các kí tự trong bảng mã unicode

1.2. Cú pháp

  • là bộ quy tắc để viết chương trình

1.3. Ngữ nghĩa

  • Xác định ý nghĩa thao tác cần thực hiện, ứng với tổ hợp kí tự dựa vào ngữ cảnh của nó

2. Một số khái niệm

2.1. Tên

2.1.1. Khái niệm

  • Mọi đối tượng trong 1 chương trình đều được đặt tên
  • Tên đặt theo quy tắc của từng ngôn ngữ lập trình cụ thể
  • NNLT Pascal:
    • tên là một dãy kí tự bao gồm:
      • chữ số, dấu gạch dưới, chữ cái
      • bắt đầu bằng chữ cái hoặc dấu gạch dưới
      • Không phân biệt chữ hoa và chữ thường,
    • VD: A, R21, P21_C, _45
  • NNLT Python:
    • tên là một dãy kí tự bao gồm:
      • chữ số, dấu gạch dưới, chữ cái in hoa hoặc in thường,
      • bắt đầu bằng: chữ cái hoặc dấu gạch dưới
      • phân biệt chữ hoa và chữ thường,
      • không giới độ dài của tên,
      • không chứa một số kí tự đặc biệt như @#?/…
    • VD: a, ab, heso,…

2.1.2. Tên dành riêng (keyword)

  • Được ngôn ngữ lập trình quy định dùng với ý nghĩa xác định
  • người lập trình không được sử dụng với ý nghĩa khác
  • Không được đặt tên trùng với keyword, nếu trùng thì chương trình sẽ báo lỗi
  • VD:
    • Trong NNLT Pascal:
      • Program, Uses, Const, Type, Var, Begin, End…
    • Trong NNLT Python: tên dành riêng phần lớn được viết thường, trừ các tên sau: True, False, None
      • Else, for, def…

2.1.3. Tên chuẩn

  • Được ngôn ngữ lập trình dùng với một ý nghĩa nhất định nào đó.
  • Tuy nhiên, người lập trình có thể khai báo và dùng chúng với ý nghĩa và mục đích khác
  • VD
    • Trong NNLT Pascal:
      • abs, sqr, integer, real, write…
    • Trong NNLT Python:
      • Abs, float, int, chr…

2.1.4. Tên do người dùng đặt

  • được người lập trình đặt với một ý nghĩa riêng
  • tuân theo quy tắc đặt tên
  • không được trùng với tên dành riêng (keyword)
  • nên đặt tên gợi lên ý nghĩa sử dụng

2.2. Biến

  • biến là đại lượng có giá trị thay đổi trong quá trình sử dụng
  • biến được sử dụng để lưu trữ dữ liệu trong chương trình
  • biến phải có tên; tên biến là tên do người lập trình đặt

2.3. Hằng

  • là đại lượng có giá trị không thay đổi trong quá trình sử dụng
  • có 3 loại hằng
    • hằng số học: là các số nguyên hay số thực
    • hằng logic: true hoặc false
    • hằng xâu: là dãy ký tự trong bộ mã ASCII được đặt trong cặp dấu nháy
      • Pascal: nháy đơn
      • Python: nháy đơn, nháy kép

2.4. Chú thích

  • được dùng để giải thích các dòng code
  • giúp cho người đọc hay chính người viết code sau này hiểu được source code dễ dàng hơn
  • các ký tự và đoạn code trong comment sẽ không ảnh hưởng tới kết quả chương trình.
  • VD:
    • Pascal:
      • bắt đầu bằng dấu { hoặc cặp dấu (*
      • kết thúc bằng dấu } hoặc cặp dấu *)
    • Python
      • Comment trên 1 dòng
        • bắt đầu với ký tự #
      • Comment trên nhiều dòng
        • bắt đầu bằng 3 dấu nháy đơn (”’) hoặc 3 dấu nháy kép (“””)
        • kết thúc cũng bằng 3 dấu nháy đơn (”’) hoặc 3 dấu nháy kép (“””)