ThS. Trần Thị Mỹ Tiên<br />
<br />
BÀI GIẢNG<br />
<br />
TIN HỌC ĐẠI CƯƠNG<br />
(Tài liệu dùng cho sinh viên khối ngành kĩ thuật)<br />
<br />
THÀNH PHỐ HỒ CHÍ MINH – NĂM 2013<br />
<br />
MỤC LỤC<br />
PHẦN 1 ĐẠI CƯƠNG VỀ TIN HỌC ...................................................................................................... 2<br />
Chương 1 CÁC KIẾN THỨC CƠ BẢN VỀ TIN HỌC ...................................................................... 3<br />
1.1<br />
1.2<br />
1.3<br />
1.4<br />
1.5<br />
<br />
Giới thiệu về máy tính điện tử ...................................................................................................... 3<br />
Thông tin và xử lí thông tin .......................................................................................................... 7<br />
Hệ đếm và biểu diễn thông tin trong máy tính .............................................................................. 9<br />
Cấu trúc cơ bản của máy tính...................................................................................................... 16<br />
Phần mềm máy tính .................................................................................................................... 20<br />
<br />
Chương 2 HỆ ĐIỀU HÀNH VÀ CÁC CHƯƠNG TRÌNH TIỆN ÍCH ........................................... 22<br />
2.1<br />
2.2<br />
2.3<br />
2.4<br />
<br />
Khái niệm và các chức năng chính của hệ điều hành .................................................................. 22<br />
Phân loại hệ điều hành ................................................................................................................ 29<br />
Một số hệ điều hành phổ biến ..................................................................................................... 29<br />
Các chương trình tiện ích của hệ điều hành Windows ................................................................ 30<br />
<br />
Chương 3 THUẬT TOÁN .................................................................................................................. 34<br />
3.1<br />
3.2<br />
3.3<br />
3.4<br />
<br />
Giới thiệu .................................................................................................................................... 34<br />
Khái niệm thuật toán ................................................................................................................... 34<br />
Các phương pháp biểu diễn thuật toán ........................................................................................ 35<br />
Các cấu trúc cơ bản..................................................................................................................... 38<br />
<br />
PHẦN 2 NGÔN NGỮ LẬP TRÌNH C ................................................................................................... 45<br />
Chương 1 TỔNG QUAN VỀ NGÔN NGỮ LẬP TRÌNH C ............................................................. 47<br />
1.1<br />
1.2<br />
1.3<br />
1.4<br />
<br />
Giới thiệu ngôn ngữ C ................................................................................................................ 47<br />
Các thành phần cơ bản của ngôn ngữ C ...................................................................................... 48<br />
Cấu trúc cơ bản của một chương trình C .................................................................................... 65<br />
Biên dịch và thực thi chương trình C .......................................................................................... 67<br />
<br />
Chương 2 NHẬP XUẤT DỮ LIỆU VÀ CÁC LỆNH ĐIỀU KHIỂN ............................................... 70<br />
2.1 Nhập xuất dữ liệu ....................................................................................................................... 70<br />
2.2 Các lệnh điều khiển .................................................................................................................... 81<br />
Chương 3 HÀM VÀ TỔ CHỨC CHƯƠNG TRÌNH ...................................................................... 100<br />
3.1<br />
3.2<br />
3.3<br />
3.4<br />
3.5<br />
3.6<br />
<br />
Tổ chức chương trình thành các chương trình con .................................................................... 100<br />
Định nghĩa hàm và khai báo nguyên mẫu hàm ......................................................................... 101<br />
Lời gọi hàm .............................................................................................................................. 104<br />
Truyền đối số cho hàm ............................................................................................................. 107<br />
Phạm vi của biến....................................................................................................................... 110<br />
Hàm đệ quy .............................................................................................................................. 113<br />
<br />
Chương 4 MẢNG VÀ CON TRỎ .................................................................................................... 118<br />
4.1 Mảng......................................................................................................................................... 118<br />
4.2 Con trỏ ...................................................................................................................................... 132<br />
<br />
1<br />
<br />
PHẦN 1<br />
ĐẠI CƯƠNG VỀ TIN HỌC<br />
<br />
2<br />
<br />
Chương 1<br />
CÁC KIẾN THỨC CƠ BẢN VỀ TIN HỌC<br />
1.1 Giới thiệu về máy tính điện tử<br />
Máy tính là một trong những công cụ mạnh nhất mà con người đã tạo ra. Nó hiện<br />
diện ở khắp mọi nơi, từ trường học cho đến các cơ quan, ngân hàng, bệnh viện, siêu<br />
thị, căn nhà của chúng ta,…Với sự phát triển vượt bậc trong lĩnh vực công nghệ thông<br />
tin, máy tính hiện nay rất đa dạng về tính năng và kích cỡ, đáp ứng được nhu cầu của<br />
nhiều người tiêu dùng khác nhau.<br />
Thông qua máy tính, xã hội có thể tiếp cận ngay lập tức thông tin từ khắp mọi<br />
nơi trên thế giới như tin tức, thông tin dự báo thời tiết, tỉ số của các trận đấu, lịch trình<br />
các chuyến bay, danh bạ điện thoại, bản đồ và đường đi, …. Mọi người cũng có thể<br />
gửi những tin nhắn, chia sẻ sách, hình ảnh, nhạc, video, thực hiện các cuộc gọi, kết bạn<br />
mới, chia sẻ ý kiến, đặt vé máy bay, mua sắm, hoặc tham gia các khóa học chỉ với một<br />
chiếc máy tính có kết nối mạng internet.<br />
<br />
Hình 1.1 - Ứng dụng của tin học<br />
<br />
Dù ở nhà hay đang đi trên đường, mọi người đều có thể sử dụng máy tính để<br />
quản lí lịch biểu, kiểm tra tài khoản, chuyển tiền, thanh toán hóa đơn hoặc mua bán cổ<br />
phiếu. Khi công nghệ càng phát triển thì máy tính trở thành một phần trong cuộc sống<br />
hàng ngày. Nhiều người tin rằng, có kiến thức và kinh nghiệm sử dụng máy tính hiệu<br />
quả sẽ góp phần tạo nên thành công cho họ.<br />
Vậy máy tính điện tử là gì?<br />
Máy tính là một thiết bị điện tử hoạt động dưới sự điều khiển của các chỉ thị<br />
được lưu trữ trong bộ nhớ. Nó có khả năng đọc, xử lí, xuất và lưu trữ dữ liệu. Rất<br />
nhiều kiểu dữ liệu khác nhau có thể được xử lí bởi máy tính bao gồm dữ liệu số (số<br />
nguyên, số thực), dữ liệu kí tự (tên, địa chỉ,…), dữ liệu đồ họa (hình vẽ, biểu đồ, ….),<br />
và âm thanh. Trong đó, hai kiểu dữ liệu phổ biến nhất là dữ liệu số và dữ liệu kí tự.<br />
<br />
3<br />
<br />
1.1.1 Lịch sử phát triển của máy tính<br />
Năm 1945, Von Neumann là người đề xuất ra nguyên lý làm việc của máy tính<br />
số, Theo đó, máy tính làm việc theo chương trình được lưu trữ trong bộ nhớ chính của<br />
nó cùng với các dữ liệu liên quan. Và chiếc máy tính điện tử đầu tiên “ENIAC” đã ra<br />
đời năm 1946 được phát triển bởi Eckert và Mauchly. Từ đó đến nay, sự phát triển<br />
của máy tính đã trải qua nhiều thế hệ.<br />
Thế hệ thứ nhất (1940-1956): sử dụng một số lượng lớn bóng đèn chân không.<br />
UNIVAC và ENIAC là ví dụ điển hình của thiết bị tính toán nhanh nhất thời kì này.<br />
Tuy nhiên, chúng là một thiết bị rất khổng lồ, chiếm diện tích lớn, tiêu thụ nhiều điện<br />
năng và độ tin cậy thấp, thường xuyên bị trặc do lỗi phần cứng. Tốc độ tính toán cũng<br />
chỉ từ vài nghìn đến vài chục nghìn phép tính trên một giây. Phần mềm chưa phát<br />
triển, chủ yếu là sử dụng ngôn ngữ máy để lập trình. Dữ liệu được đưa vào máy sử<br />
dụng thẻ đục lỗ. Thế hệ máy tính này đắt đến mức chỉ có các chính phủ hay các viện<br />
nghiên cứu lớn mới có đủ điều kiện để duy trì hoạt động của chúng.<br />
Thế hệ thứ hai (1956-1963): Bóng bán dẫn (Transistor) được sử dụng để thay<br />
thế cho bóng đèn chân không. Bóng bán dẫn giúp máy tính trở nên nhỏ gọn hơn, tiêu<br />
thụ điện năng ít hơn, bộ nhớ có dung lượng lớn hơn, và tin cậy hơn. Ở thế hệ này đã<br />
bắt đầu chuyển từ mã nhị phân sang sử dụng kí tự và ngôn ngữ bậc thấp cho phép lập<br />
trình viên viết các chỉ thị bằng các từ. Một số ngôn ngữ bậc cao cũng được phát triển<br />
trong thời gian này, chẳng hạn như COBOL, FORTRAN, ALGOL, SNOBOL.<br />
Thế hệ thứ 3 (1964-1971): Phát triển mạch tích hợp (IC) là một sự cải tiến lớn<br />
trong giai đoạn này. Các bóng bán dẫn được thu nhỏ và tích hợp trên một con chip<br />
đơn, làm tăng đáng kể tốc độ và hiệu suất của máy tính. Các ngôn ngữ bậc cao như<br />
COBOL và FORTRAN được chuẩn hóa theo chuẩn ANSI. Ngoài ra, một số ngôn ngữ<br />
mới cũng được giới thiệu trong thời gian này như PL/I PASCAL và BASIC. Các tiến<br />
bộ khác cần phải kể đến: người dùng có thể tương tác với máy tính thông qua bàn<br />
phím và màn hình, hệ điều hành bắt đầu xuất hiện cho phép máy tính có thể chạy<br />
nhiều ứng dụng cùng một lúc.<br />
Thế hệ thứ 4 (1971-1989): Hàng ngàn mạch tích hợp được xây dựng trên một<br />
con chip đơn gọi là bộ vi xử lí (microprocessor). Con chip Intel 4004 được phát triển<br />
năm 1971 có thể chứa tất cả các thành phần của máy tính, từ CPU, bộ nhớ, cho đến các<br />
điều khiển xuất/nhập. Bên cạnh sự nhỏ gọn, máy tính trở nên mạnh mẽ hơn với khả<br />
năng liên kết với nhau qua hình thức kết nối mạng, đánh dấu sự phát triển của<br />
Internet. Máy tính ở thế hệ thứ 4 cũng cho thấy sự phát triển của giao diện đồ họa,<br />
chuột và các thiết bị cầm tay. Đĩa mềm đã được sử dụng thay thế cho đĩa từ, các hệ<br />
điều hành mới được giới thiệu như MS-DOS, MS-WINDOWS UNIX và hệ điều hành<br />
độc quyền của hãng Apple.<br />
Thế hệ thứ 5 (ngày nay): Lĩnh vực nghiên cứu hiện nay chủ yếu tập trung vào<br />
việc phát triển những máy tính biết suy nghĩ, có khả năng tự học, tự xử lí gọi là trí tuệ<br />
nhân tạo. Một số ứng dụng của nó đã được dùng rộng rãi, chẳng hạn như nhận dạng<br />
hình ảnh, nhận dạng giọng nói, dịch thuật,…<br />
4<br />
<br />