Bài giảng Nhập môn lập trình - Chương 1: Giới thiệu tổng quan về lập trình - Phạm Minh Tuấn

Nhập môn lập trình  
Trình bày: Phạm Minh Tuấn; Email: [email protected]du.vn  
Khái niệm về chương trình máy tính  
Các ngôn ngữ lập trình  
Các khái niệm cơ bản về lập trình  
Các vấn đề tìm hiểu mở rộng kiến thức  
nghề nghiệp  
Thuật ngữ và bài đọc thêm tiếng Anh  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
2
• Khái niệm  
– CPU của máy tính được thiết kế để có thể thực  
hiện được các chương trình mã máy (machine  
code program) đã được hệ điều hành (HĐH) nạp  
vào RAM của máy tính.  
– Chương trình mã máy thường phải tương thích  
với từng họ máy cụ thể, bao gồm tập hợp các chỉ  
thị được viết bằng các lệnh CPU của họ máy đó,  
được lưu trên đĩa dưới dạng một tập tin mã thực  
thi (executable program file) của HĐH cụ thể.  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
4
• Qui trình thực hiện  
– B1. Người sử dụng (người dùng cuối – end  
user) ra lệnh thực hiện (chạy) chương trình.  
– B2. HĐH nhận được lệnh sẽ thực hiện:  
• Tìm và nạp tập tin mã thực thi của chương trình  
(nằm trên đĩa) vào RAM của máy tính.  
• Bộ đếm lệnh của CPU (CPU program counter) được  
trỏ đến lệnh đầu tiên của chương trình (còn gọi là  
ngõ và chương trình – program entry point)  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
5
• Qui trình thực hiện (tiếp theo)  
– B3. CPU thực hiện từng chỉ thị một trong RAM  
cho đến khi gặp lệnh kết thúc:  
• Chép lệnh mã máy hiện hành vào thanh ghi lệnh.  
• Tăng bộ đếm lệnh (để trỏ đến lệnh kế tiếp).  
• Thi hành lệnh mã máy.  
– B4. Kết thúc thực hiện chương trình, HĐH chờ  
nhận lệnh mới.  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
6
• Đặc điểm  
– Mỗi chỉ thị của chương trình là một lệnh mã  
máy (một dãy các byte chỉ phù hợp với qui  
ước tập lệnh của một loại CPU nào đó)  
– Được cấu trúc hóa theo qui ước của HĐH.  
– Được chạy trên một họ CPU và HĐH cụ thể.  
– Nội dung rất khó hiểu đối với người dùng máy  
tính, chỉ có CPU thích hợp với hiểu rõ và  
thi hành được.  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
7
• Nhận xét  
– Khó có thể sản xuất ra phần mềm bằng cách  
viết trực tiếp các chương trình mã máy.  
– Nếu có làm được theo cách này thì:  
• Giá cả sẽ rất đắt do quá khó, tốn quá nhiều thời  
gian và công sức.  
• Khả năng dùng lại rất giới hạn do không thể bán  
cho người dùng trên họ máy tính khác hay người  
dùng sử dụng hệ điều hành khác.  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
8
• Khái niệm  
– Việc viết các chương trình mã máy rất cực và  
kém hiệu quả ngay cả đối với các lập trình  
viên chuyên nghiệp vì vậy giải pháp khởi đầu  
là sử dụng các NNLT cấp thấp như hợp ngữ  
hoặc các NNLT cấp cao (sẽ bàn ở phần sau).  
– Chương trình viết bằng NNLT được gọi là  
chương trình nguồn (source code program)  
hay mã nguồn (source code).  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
9
• Chương trình nguồn được dịch sang  
chương trình mã máy bằng các chương  
trình dịch:  
– Trình hợp dịch (assembler) để dịch các  
chương trình hợp ngữ.  
– Trình thông dịch (interpreter) và trình biên dịch  
(compiler) để dịch các chương trình cấp cao.  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
10  
• Ngôn ngữ lập trình (programming  
language) là ngôn ngữ được lập trình viên  
sử dụng để viết chương trình cho  
máy tính.  
• Khi một chương trình được viết bằng một  
NNLT nào đó thì các chỉ thị, câu lệnh trong  
chương trình phải tuân theo các qui tắc,  
các luật do NNLT đó qui định.  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
12  
• Đặc điểm  
– Là NNLT phụ thuộc vào từng họ máy cụ thể,  
vì vậy không có tính tương thích.  
– Dễ viết, đọc, sửa hơn chương trình mã máy.  
– Ưu điểm là tận dụng và khai thác được tính  
năng của mỗi họ máy cụ thể, nhờ vậy chương  
trình có thể chạy nhanh hơn.  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
13  
• Đặc điểm  
– Được đề xuất để khắc phục các hạn chế của  
NNLT cấp thấp.  
– Dễ dùng và dễ diễn đạt được các ý tưởng  
trừu tượng.  
– Có tính tương thích cao (khi thay đổi dạng  
máy tính thì chỉ cần sửa chương trình rất ít  
hoặc thậm chí không cần sửa mà vẫn đảm  
bảo chạy đúng).  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
14  
• NNLT cấp thấp  
– Hợp ngữ (assembly language)  
• NNLT cấp cao  
– C/C++  
– COBOL  
– FORTRAN  
– Java, C#  
– PHP, Ruby, Perl  
– Ada, BASIC, Visual Basic (VB), Lisp, Pascal, …  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
15  
• Một chương trình (program) là một dãy  
các chỉ thị (instruction) điều khiển sự  
hoạt động của máy tính nhằm giải quyết  
một công việc nào đó.  
• Người viết chương trình (còn gọi là lập  
trình viên hay thảo chương viên –  
programmer) là những người tạo lập ra  
những chương trình máy tính.  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
17  
• Hai chương trình đơn giản sau chỉ in ra  
một dòng chữ có nội dung là “Hello  
everybody!” bằng NNLT Java và C.  
Chương trình Java  
Chương trình C  
1 // Hello.java  
2 import java.util.*;  
3 public class Hello {  
/* Hello.c */  
#include <stdio.h>  
4
5
6
7
public static void main(String argv[])  
{
}
System.out.print(“Hello everybody!”);  
8 }  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
18  
• Đối với các NNLT cấp cao truyền thống  
(trước thế hệ của Java và C#), quá trình  
viết, dịch và chạy chương trình gồm các  
công đoạn như sau:  
– B1. Soạn chương trình nguồn và lưu lên đĩa.  
– B2. Dịch chương trình nguồn nhờ trình biên dịch.  
– B3. Nối kết các tập tin mã trung gian tạo ra ở B2.  
– B4. Chạy chương trình ngôn ngữ máy tạo ra ở B3.  
11/10/2012  
Khoa CNTT - ĐH Khoa học tự nhiên  
19  
Tải về để xem bản đầy đủ
pdf 31 trang baolam 27900 Free
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Nhập môn lập trình - Chương 1: Giới thiệu tổng quan về lập trình - Phạm Minh Tuấn", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_nhap_mon_lap_trinh_chuong_1_gioi_thieu_tong_quan_v.pdf