Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 74 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
74
Dung lượng
435,5 KB
Nội dung
Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Bài giảng môn Lập Trình Căn Bản Giáo trình Giáo trình LẬP TRÌNH CĂN BẢN LẬP TRÌNH CĂN BẢN Dành cho sinh viên chính quy chuyên ngành Công Nghệ Thông Tin ThS. Nguyễn Cao Trí caotri@dit.hcmut.edu.vn www.dit.hcmut.edu.vn/~caotri Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Trang 2 Giới thiệu Giới thiệu Mục tiêu môn học Giới thiệu các khái niệm cơ bản về lập trình trên máy tính. Cung cấp cơ sở lý thuyết và kỹ năng cơ bản về lập trình cho các môn học sau. Nội dung – Một số thuật ngữ liên quan đến máy tính và lập trình. – Sơ lược về ngôn ngữ lập trình – Ngôn ngữ minh họa Pseudo code và Pascal – Các giải thuật cơ bản Kỹ năng tư duy và thực hành trên ngôn ngữ cụ thể. Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Trang 3 Phương thức Phương thức Phương thức học – Giờ lý thuyết: giảng và báo cáo – Giờ thực hành tại phòng máy Kiểm tra và thi – Kiểm tra thực hành: kỹ năng lập trình – Thi lý thuyết : trắc nghiệm khách quan – Được tham khảo tài liệu Tài liệu tham khảo – Slide bài giảng Lập Trình Căn Bản – Giáo trình Lập trình căn bản – Khoa CNTT Tài liệu khác – CDROM bài tập PASCAL và thực hành – www.dit.hcmut.edu.vn/~caotri Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Bài giảng môn Lập Trình Căn Bản Chương 1 Chương 1 Khái niệm cơ bản Khái niệm cơ bản Một số khái niệm cơ bản về – Máy tính & chương trình máy tính – Ngôn ngữ lập trình ,translator, Giải thuật và flow chart – Giải thuật & biểu diễn giải thuật – Flowchart Công cụ phát triển – Công cụ IDE, Compiler – Error & debug Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Trang 5 Máy tính - Computer Máy tính - Computer Máy tính Analog Máy tính số – Hệ nhị phân – Máy tính lập trình được – Mô hình máy Turing và Von Newman – Các thế hệ máy tính Đặc tính chung – Khả năng tính toán – Khả năng thực hiện các phép toán logic – Tốc độ tính toán cao – Làm theo chỉ thị Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Trang 6 Kiến trúc máy tính Kiến trúc máy tính Máy tính (Computer system) Bao gồm nhiều thiết bị phần cứng (hardware devices) Keyboard Screen (monitor) Disks Memory Processing Units Hệ điều hành (Operating System – OS) Phần mềm (software) – Công dụng: êệ thống, ứng dụng, cơ sở dữ liệu – Môi trường hoạt động: OS, Network, WEB, Server, Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Trang 7 Chương trình máy tính Chương trình máy tính Chương trình – Danh mục các trang thiết bị, tài nguyên sử dụng – Tiến trình sử dụng các tài nguyên và thực hiện các công việc định trước – Kết quả thực hiện Chương trình máy tính – Tập hợp các lệnh được liệt kê theo một trình tự nhất định – Các dữ liệu sẽ được nhận – Các tài nguyên cần sử dụng – Các kết quả sẽ có được – Mục tiêu: xử lý dữ liệu theo yêu cầu định trước Lập trình: viết chương trình cho máy tính Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Trang 8 Ngôn ngữ lập trình Ngôn ngữ lập trình Ngôn ngữ lập trình – Phương tiện để viết chương trình cho máy tính – Hàng trăm ngôn ngữ lập trình khác nhau – Những quy định về cú pháp (syntax) & ngữ nghĩa (semantic) – Máy tính có thể hiểu được Phân chia làm 3 nhóm chính – Ngôn ngữ máy - Machine languages Ngôn ngữ duy nhất của máy tính - CPU – Hợp ngữ - Assembly languages – Ngôn ngữ cấp cao - High-level languages Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Trang 9 Ngôn ngữ máy - Machine languages Ngôn ngữ máy - Machine languages Ngôn ngữ duy nhất được máy tính (CPU) hiểu trực tiếp. Được xác định bởi tập lệnh của CPU – Phụ thuộc vào máy tính cụ thể – Dạng nhị phân {0,1}* – Rất khó đọc hiểu – Khó có khả năng viết chương trình trực tiếp Khó nhớ hàng chục ngàn lệnh dạng {0,1}* Rất khó xác định & sửa lỗi Không được sử dụng trong thực tế để viết chương trình Nền tảng xây dựng hợp ngữ Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Trang 10 Hợp ngữ - Assembly Languages Hợp ngữ - Assembly Languages Sử dụng các từ khóa tiếng Anh cho các lệnh hay nhóm lệnh của mã máy. Được dịch sang mã máy khi thực hiện Chuyển đỗi nhanh chóng Dễ đọc và dễ hiểu hơn Vẫn tương đối khó sử dụng do – Các lệnh còn đơn giản nên phải dùng nhiều lệnh. – Chưa có những cấu trúc điều khiển thuận tiện – Khả năng tìm và sửa lỗi cũng chưa thuận tiện. Nền tảng xây dựng các ngôn ngữ cấp cao [...]... 2 Dữ liệu & cấu trúc chương trình Các khái niệm cơ bản về dữ liệu và biểu diễn dữ liệu trong máy tính Khai báo dữ liệu trong chương trình Một số phép toán cơ bản Cấu trúc cơ bản một chương trình PASCAL Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Bài giảng môn Lập Trình Căn Bản Danh hiệu Khái niệm “Danh hiệu” – – Là tên của các đối tượng khác nhau trong lập trình, dùng để phân biệt giữa... chương trình - codeing – – Xác định giải thuật Viết code và dịch thử , hiệu chỉnh các lỗi syntax Thử nghiệm - Testing – Chạy thử với các dữ liệu mẫu để kiểm tra lỗi semantic và runtime Vận hành và bảo trì Phát triển theo yêu cầu Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Trang 19 Một số ngôn ngữ lập trình Lập trình goto – Assembly – Basic Lập trình cấu trúc – Pascal, C – Foxpro Lập trình. ..Ngôn ngữ cấp cao Một câu lệnh diễn tả nhiều động thái Có cấu trúc ngày càng giống ngôn ngữ tự nhiên (tiếng Anh) Được dịch sang assembly hay mã máy bằng các chương trình dịch trước khi thực thi – Source code & Executed code Được phân làm nhiều lớp – Lập trình goto – Lập trình cấu trúc – Structured – Lập trình hướng đối tượng – Object Oriented – Các dạng... biểu điều khiển Phát biểu điều khiển và flowchart So sánh và đánh giá Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Bài giảng môn Lập Trình Căn Bản Tổng quan Phát biểu điều khiển: của chương trình là những dòng lệnh dùng để điều khiển hoạt động Các phát biểu điều khiển cơ bản 1 Phát biểu gán (assignment statement) 2 Các phát biểu điều khiển (control statements) Phát biểu ghép BEGIN END; 2 Phát... Tp.HCM Khoa Công Nghệ Thông Tin Trường hợp i Khác • Stop/End kết thúc của giải thuật Có thể có một hoặc nhiều điểm STOP Trang 15 Flow chart Ưu điểm – – Độc lập với ngôn ngữ tự nhiên – Độc lập với ngôn ngữ lập trình – Bảo đảm khả năng lập trình – Trình bày trực quan giải thuật Cho phép dễ dàng kiểm tra giải thuật Nguyên tắc kiểm tra – Đi từ START theo bất cứ đường nào cũng phải đến một điểm dừng STOP... Trang 11 Học ngôn ngữ lập trình Học ngữ pháp – Quy tắc ngữ pháp – Từ vựng – Cấu trúc câu Ngữ nghĩa của các lệnh Các “thành ngữ” Học ngôn ngữ lập trình VS Học ngôn ngữ tự nhiên – Quy tắc ngữ pháp đơn giản – Từ vựng ít, tự quy định – Cấu trúc câu đơn giản Hạn chế và khó khăn của sử dụng ngôn ngữ lập trình Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Trang 12 Chương trình dịch Dùng... trình dịch Dùng để dịch từ một ngôn ngữ lập trình này sang ngôn ngữ lập trình khác Mục tiêu cuối cùng là dịch sang mã máy để có được executed code –> chương trình thực thi Phân loại: – Intepreter – thông dịch – Compiler – biên dịch – Intepreter vs Compiler Công cụ phát triển – Integrated Development Environment (IDE) – Soạn thảo – Dịch và sửa lỗi chương trình – Chạy thử và sửa lỗi Đại Học Bách Khoa... liệu có cấu trúc/Kiểu do người dùng định nghĩa – – – – – Array (dãy, mãng) Record (bản ghi, mẫu tin, mục tin) Set (tập hợp) File (tập tin, tệp) String (chuỗi, xâu) Kiểu pointer (con trỏ, chỉ điểm) Các kiểu dữ liệu căn bản: kiểu đơn giản + string Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Trang 26 Kiểu dữ liệu căn bản Kiểu Integer: biểu diễn các số nguyên dạng thập phân Chiếm 2 byte trong... nhỏ nhất đến (1.9E-39) và lớn nhất đến (1.7E38) Kiểu Char: biểu diễn cho dữ liệu ký tự Chiếm 1 byte trong bộ nhớ Miền giá trị theo bảng mã ASCCI Biểu diễn bằng ký tự nằm giữa hai dấu nháy đơn 'A’, 'a’, – Bảng mã ASSCI chuẩn và mở rộng – Bảng mã và fonts – Các vấn đề bản mã tiếng Việt 1 byte, 2 byte, Unicode Một số phép toán: so sánh, Ord ('F’) = 70 , Chr(65) = 'A’ Kiểu Boolean: biểu diễn cho giá... Có thể thực hiện phép so sánh, không thể cộng, trừ, nhân, chia Mọi dữ liệu muốn được xử lý bằng máy tính thì phải quy về một kiểu dự liệu nào đó mà ngôn ngữ lập trình đó hiểu được Số kiểu dữ liệu là một yếu tố so sánh ngôn ngữ lập trình Càng nhiều kiểu thì càng thuận lợi cho xử lý Bao nhiêu kiểu dữ liệu thì đủ? Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Trang 25 Các kiểu dữ liệu Các . Thông Tin Bài giảng môn Lập Trình Căn Bản Giáo trình Giáo trình LẬP TRÌNH CĂN BẢN LẬP TRÌNH CĂN BẢN Dành cho sinh viên chính quy chuyên ngành Công Nghệ Thông Tin ThS. Nguyễn Cao Trí caotri@dit.hcmut.edu.vn www.dit.hcmut.edu.vn/~caotri Đại. thực hành: kỹ năng lập trình – Thi lý thuyết : trắc nghiệm khách quan – Được tham khảo tài liệu Tài liệu tham khảo – Slide bài giảng Lập Trình Căn Bản – Giáo trình Lập trình căn bản – Khoa CNTT Tài. khác – CDROM bài tập PASCAL và thực hành – www.dit.hcmut.edu.vn/~caotri Đại Học Bách Khoa Tp.HCM Khoa Công Nghệ Thông Tin Bài giảng môn Lập Trình Căn Bản Chương 1 Chương 1 Khái niệm cơ bản Khái niệm cơ bản Một