1 / 29

Chương 2 : Các khái niệm cơ bản

Chương 2 : Các khái niệm cơ bản. Ngôn ngữ lập trình. Con người liên lạc với nhau dùng : ngôn ngữ tự nhiên : các từ ngữ và âm thanh Con ng ư ời “nói chuyện” với máy tính dùng : Ngôn ngữ lập trình: tập từ ngữ và ký hiệu Tuân theo các luật đ ư ợc gọi là cú pháp (syntax )

marika
Download Presentation

Chương 2 : Các khái niệm cơ bản

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 503002 - Các khái niệm cơ bản Chương2: Cáckháiniệmcơbản

  2. 503002 - Các khái niệm cơ bản Ngônngữlậptrình • Con ngườiliênlạcvớinhaudùng: • ngônngữtựnhiên: cáctừngữvàâmthanh • Con người “nói chuyện” với máy tínhdùng: • Ngôn ngữ lập trình: tập từ ngữ và ký hiệu • Tuân theo các luật được gọi là cú pháp (syntax) • Có rất nhiều ngôn ngữ lập trình đang được sử dụng.

  3. 503002 - Các khái niệm cơ bản Ngônngữlậptrình • Dựa vào mức độ chi tiết hóa việc mô tả các thao tác, người ta chia ngôn ngữ lập trình thành các lớp: • Ngôn ngữ máy, • Hợp ngữ, • Ngôn ngữ cấp cao.

  4. 503002 - Các khái niệm cơ bản Ngônngữlậptrình • Các ngôn ngữ cấp cao gần với ngôn ngữ tự nhiên nên rất tiện lợi cho việc mô tả các thao tác và dễ học, dễ nhớ.

  5. 503002 - Các khái niệm cơ bản Ngônngữlậptrình +1300042774 +1400593419 +1200274027 Ngôn ngữ máy LOAD A ADD B STORE C Ngôn ngữ tổ hợp(hợp ngữ) C=A+B Ngôn ngữ cấp cao

  6. 503002 - Các khái niệm cơ bản Ngônngữlậptrình • Ngôn ngữ máy: • Dùng các chuỗi số làm chỉ thị cho máy tính. Ví dụ: • +1300042774 • +1400593419 • +1200274027

  7. 503002 - Các khái niệm cơ bản Ngônngữlậptrình • Ngôn ngữ tổ hợp: • Dùng các từ viết tắt của những từ tiếng Anh làm chỉ thị cho máy tính. Ví dụ: • MOV AX, 0123 • ADD AX, 0025 • MOV CX, AX

  8. 503002 - Các khái niệm cơ bản Ngônngữlậptrình • Ngôn ngữ cấp cao: • Các chỉ thị được dùng như tiếng Anh hàng ngày. Ví dụ: • SUM = A + B

  9. 503002 - Các khái niệm cơ bản Ngônngữlậptrình • Ví dụ

  10. 503002 - Các khái niệm cơ bản Chươngtrìnhdịch • Chương trình dịch: để chuyển đổi chương trình từ Ngôn Ngữ cấp cao (NN tổ hợp) thành NN máy. • Có 2 kỹ thuật chính: • Trình biên dịch(compiler) • Trình thông dịch(interpreter)

  11. 503002 - Các khái niệm cơ bản Chươngtrìnhdịch Trình biên dịch: chuyển một chương trình ở NN cấp cao sang ngôn máy và lưu kết quả vào đĩa để có thể thi hành về sau. • Chương trình nguồn (source program) là chương trình ngôn ngữ cấp cao được chuyển đổi. • Chương trình đối tượng (object program) là chương trình ngôn ngữ máy được tạo ra.

  12. 503002 - Các khái niệm cơ bản Chươngtrìnhdịch Thực hiện • Duyệt, kiểm tra cú pháp chương trình • Kiểm tra logic và đảm bảo các dữ liệu sử dụng được định nghĩa hợp lý • Phát hiện và tạo ra một danh sách lỗi cú pháp của các mệnh đề (statement).

  13. 503002 - Các khái niệm cơ bản Chươngtrìnhdịch Trìnhthôngdịch(interpreter): phântíchvàthựcthitừngcâulệnhcủachươngtrình NN cấpcao. C làngônngữcấpcao, dùngtrìnhbiêndịch.

  14. 503002 - Các khái niệm cơ bản Soạnthảomãnguồn-Biêndịch- Liênkếtvàthựcthi • Mỗi ngôn ngữ lập trình có một vài môi trường lập trình tương ứng. • Ví dụ ngôn ngữ C có các môi trường lập trình Borland C, Microsoft Visual C++, … • Môi trường lập trình cung cấp các dịch vụ như:Soạn thảo mã nguồn,Lưu trữ, tìm kiếm,Xác định loại lỗi nếu có, chỉ rõ lỗi ở câu lệnh nào, Cho xem các kết quả trung gian…

  15. 503002 - Các khái niệm cơ bản Soạnthảomãnguồn-Biêndịch- Liênkếtvàthựcthi • Cácmôitrườnglậptrìnhkhácbiệtnhau ở cácloạidịchvụmànócóthểcungcấp. • Đặc biệt là các dịch vụ mở rộng, nâng cấp, tăng cường các khả năng mới cho ngôn ngữ lập trình. • Khi biên dịch chương trình nguồn, người lập trình sẽ phát hiện được các lỗi cú pháp. • Khi liên kết và thực thi chương trình trên dữ liệu cụ thể thì mới phát hiện được các lỗi ngữ nghĩa.

  16. 503002 - Các khái niệm cơ bản Soạnthảomãnguồn-Biêndịch- Liênkếtvàthựcthi

  17. 503002 - Các khái niệm cơ bản Vídụchươngtrình C

  18. 503002 - Các khái niệm cơ bản Vídụchươngtrình C • Mộtsốquytắckhiviếtchươngtrình C: • Mỗi câu lệnh có thể viết trên một hay nhiều dòngnhưng phải được kết thúc bằng dấu “;” • Chú thích có thể đƣợc viết trên một dòng, nhiềudòng hoặc trên phần còn lại của câu lệnh. • Khi sử dụng một hàm thưviện cần khai báo hàm ởđầu chƣơng trình bằng toán tử #include, vídụ: #include<iostream.h> • Một chương trình chỉ có một hàm chính (main), có thể có thêm vài hàm khác (gọi là hàm con).

  19. 503002 - Các khái niệm cơ bản Các thành phần của chương trình C/C++ đơn giản • #include <??> yêu cầu trình biên dịch đọc tập tin chứa các khai báo như khai báo thư viện mà chương trình dùng

  20. 503002 - Các khái niệm cơ bản Các thành phần của chương trình C/C++ đơn giản 2. Hàm chính(main) là thành phần buộc phải có trong mọi chương trình C.

  21. 503002 - Các khái niệm cơ bản Các thành phần của chương trình C/C++ đơn giản 3. Địnhnghĩadữliệuvàcácphátbiểu. • Các phát biểu là phần thực thi của chương trình(đọc từ bàn phím, xuất ra màn hình, tính toán, gọi hàm,...) • Các phát biểu được đặt giữa cặp { và } của hàm (main), tạo nên “thân hàm”. • Mỗi phát biểu đơn (câu lệnh) được kết thúc bởi “;‟ • Các phát biểu cùng được đặt giữa cặp{ và } tạo thànhphát biểu ghép (còn gọi khối lệnh).

  22. 503002 - Các khái niệm cơ bản Các thành phần của chương trình C/C++ đơn giản 4. Khai báo hàm và định nghĩa hàm. • Khai báo hàm là đưa ra một “ mẫuhàm”, gồmtênhàm, kiểutrảvềcủahàmvà các tham số của hàm, kết thúc bởi dấu “;”. vídụ: int sum(int n); • Định nghĩa hàm gồm tên hàm, kiểutrảvề, các tham số vàthân hàm (chứa các câulệnhthựchiện chươngtrình), thực thi một việc cụ thể (khôngcódấu ; ở cuốihàm)

  23. 503002 - Các khái niệm cơ bản Các thành phần của chương trình C/C++ đơn giản 5. Chúthích: • được trình biên dịch “bỏ qua”, không ảnh hưởng đến việc thực thi của chươngtrình. • Cóhailoạichúthích: • Chú thích dòng: là phần văn bản đặt ngay saucặp kí tự: // • Chú thích khối:là phần văn bản đặt giữa /* và */

  24. 503002 - Các khái niệm cơ bản Các thành phần của chương trình C/C++ đơn giản 6. Xuấtdữliệu: • cout là đối tƣợng xuất chuẩn, xuất dữ liệu ra màn hình • Một phát biểu xuất kết quả ra màn hìnhgồm: cout, phép toán xuất <<, đối tượng được xuất, và “;‟. • Vídụ: cout << “Chúng ta đanghọcmônLâpTrình C”; => đốitượngđượcxuất ở đâylàmộtchuỗi : Chúng ta đanghọcmônLậpTrình C

  25. 503002 - Các khái niệm cơ bản Các thành phần của chương trình C/C++ đơn giản 6. Xuấtdữliệu: • Vídụ:

  26. 503002 - Các khái niệm cơ bản Các thành phần của chương trình C/C++ đơn giản 6. Xuấtdữliệu: • Mộtđốitượng được xuất có thể là: • Sốnguyên (sốthực) hay biếnnguyên (biếnthực). • Kí tự (một hằng kí tự được đặt giữa cặp dấu ‘ ’) hoặc biến kiểu kí tự. • Thông điệp gồm nhiều kí tự (chuỗi kí tự) được đặt giữa cặp dấu “ ”. • Định dạng xuất: cho phép có bao nhiêu số ở phần thập phân, canh lề phải dữ liệu xuất...

  27. 503002 - Các khái niệm cơ bản Các thành phần của chương trình C/C++ đơn giản 6. Xuất dữ liệu:

  28. 503002 - Các khái niệm cơ bản Các thành phần của chương trình C/C++ đơn giản 6. Xuấtdữliệu: • Nhiều phát biểu xuất có thể được nối lại thành một phát biểu xuất, khi đó cần lưu ý là trước mỗi đối tượng được xuất là một phép toán xuất và ngược lại. • Các đối tượng được xuất ra sẽ liên tiếp nhau trên cùng một dòng. • Nếu muốn một đối tượng được xuất ra trên một dòng mới thì gọi endl hay “\n” trong phát biểu xuất. • Vídụ: int a=b=c=9; cout<<a<<b<<c;

  29. 503002 - Các khái niệm cơ bản Các thành phần của chương trình C/C++ đơn giản 7. Nhậpdữliệu: • cin là dòng nhập chuẩn, đọc(lưu)dữ liệu được gõ từ bàn phím. • Dạng tổng quát: cin>> var; • var là một biến nào đóđãđượckhaibáo. • Phát biểu nhập có nhiều đối tượng: Vídụ: cin>>var1>>var2…>>varN;

More Related