Upload
linhhuynhk37sptin
View
102
Download
1
Embed Size (px)
Citation preview
14
nhớ
11
kn
BÀI GIẢNG TIN HỌC 10
14
nhớ
11
kn
Kiểm tra miệng:
• Bài 1: Tính diện tích và chu vi của HCN khi biết chiều dài và chiều rộng.
• Bài 2: Tính diện tích hình tròn, bán kính r.
• Yêu cầu:– Xác định Input và Output.– Trình bày thuật toán dạng liệt kê.
14
nhớ
11
kn
Lời giải
Bài 1• XĐBT
– Input: hai số a,b– Output: s, p
• Thuật toán:B1: nhập 2 số a và b
B2: s ← a*b,
p ← 2*(a+b)
B3: Thông báo s,p.
Kết thúc
Bài 2• XĐBT
– Input: pi, r– Output: s
• Thuật toán:B1: - nhập r
- pi=3.14
B2: s = pi*r*r,
B3: Thông báo s.
Kết thúc
14
nhớ
11
kn
Vậy, máy tính có thể thực hiện được bài toán theo thuật toán
trên không? Vì sao?
– Không!– Vì NN thể hiện thuật toán trên,
máy tính chưa hiểu được.
14
nhớ
11
kn
Làm sao để máy tính có thể thực hiện được?
Mời quý vị đi theo lối này =>
note
NGÔN NGỮ LẬP TRÌNHNGÔN NGỮ LẬP TRÌNHBÀI 5.BÀI 5.
14
nhớ
11
kn
Ví dụ NA-NV
• NV: Xin chào, mời ngài vào đây!
• NA:?? (không hiểu NV nói gì), muốn NA làm theo,NV phải làm thế nào?
• Làm thế này!– Phải nói TA– Thuê người dịch biết cả hai thứ tiếng A và V
Minh họa Người - Máy
14
nhớ
11
kn
•Để máy tính thực hiện công việc (bài toán) giúp con người, thuật toán phải được diễn tả bằng ngôn ngữ của máy tính hoặc ngôn ngữ mà có thể chuyển đổi về ngôn ngữ của máy tính.Ngôn ngữ đó được gọi chung là NNLT.
*Kết quả của việc diễn tả thuật toán bằng NNLT được gọi là một chương trình máy tính (gọi tắt là chương trình).
Kết quả của việc diễn tả thuật toán bằng NNLT được gọi là gì?
14
nhớ
11
kn
* Hiện nay, có nhiều loại ngôn ngữ lập trình do liên quan đến các kiến trúc và hoạt động của máy tính khác nhau. Và chúng được chia ra thành 3 loại: (ứng với 3 thế hệ NN)– Thế hệ 1: Ngôn ngữ máy– Thế hệ 2: Hợp ngữ
– Thế hệ 3: NN bậc cao (NNLT bậc cao).
Mỗi loại có những đặc điểm riêng.
14
nhớ
11
kn
1. Ngôn ngữ máy
• Là ngôn ngữ duy nhất để viết chương trình mà máy tính có thể trực tiếp hiểu và thực hiện được.
• Các lệnh viết bằng ngôn ngữ máy ở dạng hệnhị phân hoặc hệ hexa.
• VD • Ưu điểm: Khai thác triệt để các đặc điểm phần cứng
của máy tính.
• Nhược điểm: Khó nhớ câu lệnh, CT dài. Không thực hiện được trên loại máy tính khác.
“Có nhiều loại NN máy” T or F?
14
nhớ
11
kn
2. Hợp ngữ
• Cho phép người lập trình sử dụng một số từ tắt (tiếng Anh) để thể hiện các lệnh cần thực hiện.
• VD: – Mov A,Rn – VD khác (CT)
• Hợp ngữ còn được gọi là NN cấp thấp, tận dụng được nguồn tài nguyên (CPU,RAM…) hạn hẹp. Khai thác được các thế mạnh, viết ra các CT điểu khiển phần cứng như: Main, Ram, Rom, các vi mạch… Vì thế, ngày nay vẫn tồn tại và phát triển.
sự thay đổi đó thể hiện thế nào?
14
nhớ
11
kn
2. Hợp ngữ
• Chương trình viết bằng hợp ngữ phải được dịch ra ngôn ngữ máy nhờ chương trình hợp dịch thì máy tính mới có thể thực hiện được.
• Vd về trình hợp dịch: Tasm.exe, Emu8086v…
(Hợp ngữ là một ngôn ngữ đã thuận lợi hơn cho các nhà lập trình chuyên nghiệp nhưng vẫn chưa thật thích hợp với đông đảo người lập trình. Nên việc ra đời các NNLT thế hệ 3 là một tất yếu!)
*Chạy CT in dòng HelloWord!
14
nhớ
11
kn
3. Ngôn ngữ bậc cao.
• Thể hiện các câu lệnh gần với ngôn ngữ tự nhiên hay ngôn ngữ con người. NNbậc cao có tính độc lập cao, ít phụ thuộc vào các loại máy.
• VD dòng lệnh cho biết số nguyên N là chẵn hay lẻ của Pascal:IF (N mod 2 =0) THEN Write(‘ N so Chan’)
ELSE Write(‘N la so le’);• Hoặc CT viết dòng chữ “Hello Word!” ra màn hình
như sau:Begin
Write(‘Hello Word!”);Readln;
End.
14
nhớ
11
kn
3. Ngôn ngữ bậc cao.
• Một số ngôn ngữ bậc cao thường dùng hiện nay:– Pascal, C…: dễ minh họa, diễn tả các thuật toán
– VBA ,V.Studio, VFP…: Viết các phần mềm ứng dụng– Java, Asp, PHP, DotNet...: Thiết kế Website, Pm ứng dụng
…
• VD và (Chạy CT trên Pascal)• CT viết bằng NNLT bậc cao phải được chuyển về CT
trên NN máy thông qua chương trình dịch.
VD: Turbo Pascal, Freepascal, C, turbo C, Free C, VB, Visual Studio, DotNet…
14
nhớ
11
kn
Kiến thức nhớ
Ngôn ngữ lập trình
Ngôn
ngữ
máy
Hợp
ngữ
Ngôn
ngữ
bậc
cao
Chương trình dịch
Trình hợp dịch
14
nhớ
11
kn
Hãy chọn những khẳng định đúng về mình!
• Ngôn ngữ máy
• Hợp ngữ
• Ngôn ngữ bậc cao
14
nhớ
11
kn
Suy nghĩ và chọn!
1. để viết chương trình máy tính2. gần với ngôn ngữ tự nhiên3. thích hợp viết CT điều khiển phần cứng.4. máy tính trực tiếp hiểu được.5. sử dụng chương trình dịch để dịch sang NN
máy.6. có sự trợ giúp của chương trình hợp dịch thí
máy tính mới hiểu được.7. thực hiện trên nhiều loại máy khác nhau.
14
nhớ
11
kn
8. CT viết trên NN này thường không thực hiện được trên các loại máy khác nhau.
9. lệnh ở dạng mã hóa nhị phân.10. sử dụng một số từ tiếng Anh để viết câu lệnh.11. khó nhớ và viết câu lệnh.12. NNLT Pascal.13. nhiều người gọi tôi là ngôn ngữ cấp thấp.14. tôi được nhiều người biết tới nhất.
14
nhớ
11
kn
Đáp án:
• Ngôn ngữ máy :1, 3, 4, 8, 9, 11
• Hợp ngữ :1, 3, 6, 8, 10, 13
• Ngôn ngữ bậc cao :1, 2, 5, 7, 12, 14
Mời đại diện mỗi nhóm viết đáp án lên bảng
14
nhớ
11
kn
Hãy chọn những khẳng định đúng về mình!
• Ngôn ngữ máy
• Hợp ngữ
• Ngôn ngữ bậc cao
14
nhớ
11
kn
Suy nghĩ và chọn!
1. để viết chương trình máy tính2. gần với ngôn ngữ tự nhiên3. thích hợp viết CT điều khiển phần cứng.4. máy tính trực tiếp hiểu được.5. sử dụng chương trình dịch để dịch sang NN
máy.6. có sự trợ giúp của chương trình hợp dịch thí
máy tính mới hiểu được.7. thực hiện trên nhiều loại máy khác nhau.
14
nhớ
11
kn
8. CT viết trên NN này thường không thực hiện được trên các loại máy khác nhau.
9. lệnh ở dạng mã hóa nhị phân.
10. sử dụng một số từ tiếng Anh để viết câu lệnh.
11. NNLT Pascal.
14
nhớ
11
kn
Đáp án:
• Ngôn ngữ máy :1, 3, 4, 8, 9
• Hợp ngữ :1, 3, 6, 8, 10
• Ngôn ngữ bậc cao :1, 2, 5, 7, 11
Mời đại diện mỗi nhóm viết đáp án lên bảng
14
nhớ
11
kn
Kinh nghiệm!
• Bổ sung các kiến thức liên quan đến các thành phần trong sơ đồ.
14
nhớ
11
kn
TIẾT HỌC ĐẾN ĐÂY LÀ KẾT THÚC
CHÚC CÁC EM LUÔN CHĂM NGOAN, HỌC GIỎI