ĐẠI HỌC BÁCH KHOA TP.HCM. NHẬP MÔN ĐIỆN TOÁN - LẬP TRÌNH Ngôn ngữ lập trình • Ngôn ngữ máy

48 4 0
ĐẠI HỌC BÁCH KHOA TP.HCM. NHẬP MÔN ĐIỆN TOÁN - LẬP TRÌNH Ngôn ngữ lập trình • Ngôn ngữ máy

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Chương LẬP TRÌNH 6.1 Ngơn ngữ lập trình 6.2 Xử lý ngơn ngữ 6.3 Thiết kế chương trình 6.4 Kiểm tra gỡ rối 6.5 Lập tài liệu Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide 6.1 Ngơn ngữ lập trình • Ngơn ngữ máy: – Là tập hợp gồm nhiều lệnh máy • Lệnh máy – Là chuỗi bit – Chỉ thực số tác vụ đơn giản phép tính số học hoạt động đọc ghi vùng nhớ/ ghi – Một lệnh máy bao gồm phần: mã lệnh tốn hạng – Chỉ có hai cấu trúc điều khiển để thực lệnh: nhảy Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide • Ngơn ngữ lập trình: – Chương trình (program): Một đoạn mã lệnh yêu cầu máy tính thực cơng việc cụ thể – Lập trình (programming): Viết chương trình, cách sử dụng ngơn ngữ lập trình – Ngơn ngữ lập trình: Một hình thức ngơn ngữ giúp người biểu diễn ý tưởng dạng chương trình, nhờ máy tính thực ý tưởng Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide Ví dụ 1010 0001 0000 0000 0000 0001 0000 0101 0000 0101 0000 0000 1010 0011 0000 0000… (64 kí số 0, 1) ⇒Ngơn ngữ máy, người khơng thể đọc hiểu (rất khó viết đọc) Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide Ngơn ngữ lập trình cấp thấp cấp cao • Ngơn ngữ lập trình mức thấp nhất: ngơn ngữ máy • Ngơn ngữ lập trình cấp cao: ngơn ngữ nhiều kiểu diễu liệu nhiều cấu trúc điều khiển so với cung cấp ngơn ngữ máy; đồng thời cách biểu diễn phát biểu gần với ngôn ngữ tự nhiên Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide Một số dạng ngôn ngữ lập trình cấp cao • Đa mục đích: Basic, C (C++, C#), Java, Fortran, Pascal • Lập trình đệ quy • Lập trình khai báo lập trình thủ tục – Khai báo: C, Pascal – Thủ tục: Prolog, Lisp • Lập trình logic • Ngơn ngữ lập trình hàm • Lập trình hướng đối tượng Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide Ví dụ 1010 0001 0000 0000 0000 0001 0000 0101 0000 0101 0000 0000 1010 0011 0000 0000… (64 kí số 0, 1) ⇒Ngơn ngữ máy, người đọc hiểu (rất khó viết khơng thể đọc) Mov ax, [100] Add ax, Mov [100], ax ⇒ Hợp ngữ, người đọc được, bao gồm cấu trúc nhảy ngơn ngữ máy ⇒ khó biểu diễn ý tưởng (khó đọc khó viết) ⇒ a := a + (a chứa địa [100]) Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide Ví dụ (tt) a := +1; For i:=1 to read(a); ⇒ Ngôn ngữ Pascal: cung cấp nhiều cấu trúc liệu hơn, biểu diễn ý tưởng tốt hơn, nhiên tương đối khó đọc so với ngơn ngữ tự nhiên (dễ viết tương đối dễ đọc) Select ID from Table Where ID > ⇒ Ngôn ngữ SQL: gần với ngôn ngữ tự nhiên, nhiên không cung cấp nhiều cấu trúc điều khiển (dễ đọc, khó viết) Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide Cơ chế thực chương trình • Cơ chế • Cơ chế nhảy => Lặp rẽ nhánh Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide Cấu trúc điều khiển • Cấu trúc điều khiển: Một cấu trúc ngôn ngữ quy định thứ tự thực lệnh • Ngơn ngữ máy: Tuần tự nhảy • Ngơn ngữ cấp cao – Rẽ nhánh – Lặp Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide 10 Thiết kế chương trình • u cầu chương trình máy tính: khơng xảy lỗi vào lúc thời gian thực thi – Kết xuất bị lỗi – Bị treo – Xử lý liệu bất thường • Thiết kế chương trình tốt giúp giảm thiểu tối đa lỗi chương trình • Thiết kế chương trình có cấu trúc – Phân tích từ xuống (top-down) – Tinh chế bước (stepwise refinement) Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide 34 Thiết kế lời giải • Phân tích từ xuống, tinh chế bước: – Lời giải tổng quát đưa trước, bao gồm module chương trình – Mỗi module phân tích thành nhiều module nhỏ Sử dụng biểu đồ dòng chảy mã giả Read a,b • Mã giả (pseudo code): – read a,b – Answer = a/b – Write answer Answer = a/b Write answer Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide 35 Lập trình cấu trúc (Structured Programming) • Là phương pháp thiết kế chương trình phổ biến nay, bao gồm nguyên lý sau: – Sử dụng cấu trúc điều khiển hạn chế dạng sau: tuần tự, lựa chọn lặp – Module hố chương trình – Phân tích từ xuống, phân rã bước – Trình bày chương trình theo định dạng rõ ràng – Sử dụng thích – Ưu tiên lựa chọn giải pháp đơn giản Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide 36 Case Study • Hiểu vấn đề: Đọc mười số nguyên dương âm từ bàn phím tính tổng số dương âm riêng biệt In hai tổng tính • Chương trình phân rã thành cơng việc sau: – Đọc số vào – Xử lý số đọc vào (tính tổng số dương số âm) – In kết Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide 37 Tinh chế bước Bước Bước Đọc số vào Đọc số vào số dương? N N Y Xử lý số Tăng tổng số dương Tăng tổng số âm đủ 10 số? Y N đủ 10 số? In kết Y In kết Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide 38 Kiểm tra lời giải • Sử dụng liệu kiểm tra (test data) để kiểm tra kết xuất chương trình so sánh với lời giải mong đợi • Khi bắt gặp lỗi, kiểm tra thiết kế chỉnh sửa chương trình trước tiếp tục kiểm tra • Nhiệm vụ workflow kiểm tra thử nghiệm chương trình thực thi xem có lỗi khơng, có lỗi cụ thể nằm lệnh nào, bị lỗi sữa lỗi – lặp kiểm thử hàm chức theo thứ tự xác định Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide 39 Kiểm thử • kiểm thử hộp đen (black-box testing) : kiểm thử thành phần theo góc nhìn từ ngồi xem hành vi thành phần có thỏa mãn đặc tả sử dụng khơng ? Thí dụ ta thử gọi hàm cos(0) xem hàm có trả không, hàm trả giá trị khác 1, ta nói hàm cos bị lỗi • kiểm thử hộp trắng (white-box testing) : kiểm thử thành phần theo góc nhìn bên xem lệnh thành phần có chạy theo giải thuật thiết kế khơng ? Thường kiểm tra hộp đen thành phần bị lỗi ta tiến hành kiểm thử hộp trắng để xác định xác lệnh gây lỗi thành phần Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Toán - Chương Slide 40 6.5 Tài liệu hoá chương trình • Nhằm mục đích cung cấp cho người sử dụng tất thơng tin cần thiết để hồn tồn hiểu mục đích chương trình cách xây dựng chương trình • Một tài liệu chương trình thường bao gồm phần sau: – Loại chương trình – Người sử dụng chương trình – Xác định xem có cần thiết thay đổi mã nguồn chương trình sau kiểm tra chấp nhận lần cuối hay không Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide 41 Các yêu cầu với tài liệu chương trình • Tài liệu dành cho lập trình viên: đặc tả thiết kế chương trình Thơng tin sơ lược cách chương trình giao tiếp với người sử dụng • Tài liệu dành cho người sử dụng: mơ tả chi tiết tính chương trình thường kèm theo hướng dẫn mẫu (tutorial) • Tài liệu dành cho nhà quản lý: mô tả tổng quan chương trình, chẳng hạn tính năng, khả chương trình, yêu cầu phần cứng v.v… Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide 42 Các đề mục tài liệu chương trình • Một tài liệu chương trình thường bao gồm phần sau – Định danh (identification) – Đặc tả chung – Thông tin người dùng – Đặc tả chương trình Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Toán - Chương Slide 43 Định danh cho chương trình • • • • • • Tên chương trình Mơ tả ngắn tính chương trình Tác giả Ngày viết chương trình Ngơn ngữ sử dụng phiên Yêu cầu phần cứng Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Toán - Chương Slide 44 Đặc tả chung • Mơ tả hoạt động chương trình điều kiện hoạt động bình thường • Các file đặc tả • Hạn chế và/ giới hạn chương trình • Các cơng thức, tài liệu tham khảo văn mơ tả chương trình kỹ thuật phức tạp sử dụng Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Toán - Chương Slide 45 Đặc tả chương trình • Lược đồ cấu trúc, lược đồ dịng chảy (flowchart), bảng định • Các bảng mã giả có thích • Q trình kiểm tra bao gồm lớp liệu kiểm tra với kết mong đợi nhật ký kiểm tra Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Toán - Chương Slide 46 Hướng dẫn sử dụng • Chỉ dẫn cài đặt • Giải thích chi tiết hoạt động chương trình • Các hướng dẫn mẫu Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide 47 The Ten Commandments of Computer Ethics THOU SHALT NOT USE A COMPUTER TO HARM OTHER PEOPLE THOU SHALT NOT INTERFERE WITH OTHER PEOPLE'S COMPUTER WORK THOU SHALT NOT SNOOP AROUND IN OTHER PEOPLE'S COMPUTER FILES THOU SHALT NOT USE A COMPUTER TO STEAL THOU SHALT NOT USE A COMPUTER TO BEAR FALSE WITNESS THOU SHALT NOT COPY OR USE PROPRIETARY SOFTWARE FOR WHICH YOU HAVE NOT PAID THOU SHALT NOT USE OTHER PEOPLE'S COMPUTER RESOURCES WITHOUT AUTHORIZATION OR PROPER COMPENSATION THOU SHALT NOT APPROPRIATE OTHER PEOPLE'S INTELLECTUAL OUTPUT THOU SHALT THINK ABOUT THE SOCIAL CONSEQUENCES OF THE PROGRAM YOU ARE WRITING OR THE SYSTEM YOU ARE DESIGNING 10 THOU SHALT ALWAYS USE A COMPUTER IN WAYS THAT INSURE CONSIDERATION AND RESPECT FOR YOUR FELLOW HUMANS Written by the The Computer Ethics Institute Khoa KH & KT Máy Tính, ĐẠI HỌC BÁCH KHOA TP.HCM Nhập mơn Điện Tốn - Chương Slide 48

Ngày đăng: 16/03/2022, 00:14

Tài liệu cùng người dùng

Tài liệu liên quan