1. Trang chủ
  2. » Công Nghệ Thông Tin

giáo án thao giảng, bồi dưỡng thi giáo viên giỏi môn tin bài ngôn ngữ lập trình (1)

17 265 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 258,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Em hiểu thế nào là 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.?. NGÔN NGỮ LẬP TRÌNH- Các lệnh viết bằng ngôn ngữ máy ở d

Trang 1

Kiểm tra bài cũ

* Câu hỏi: Xác định input, output và viết thuật toán của bài toán tính tổng hai số nguyên A, B?

* Trả lời:

Input: A, B là các số nguyên

Output: Đưa ra Tổng hai số A, B

Trang 2

Theo cách liệt kê:

B1: Nhập A, B;

B2: Tính Tổng  A+B;

B3: Đưa ra Tổng rồi kết thúc;

Theo sơ đồ khối:

Nhập A, B;

Tong  A+ B;

Đưa ra Tong

và kết thúc

Trang 3

Tiết 17- Bài 5

NGÔN NGỮ LẬP TRÌNH

Trang 4

? Ngôn ngữ lập trình là gì?

Tiết 17 – Bài 5 NGÔN NGỮ LẬP TRÌNH

- Ngôn ngữ để viết chương trình được gọi là ngôn ngữ lập

trình.

- Ngôn ngữ lập trình được chia làm 3 loại: (ứng với 3 thế hệ ngôn ngữ)

- Thế hệ 1: Ngôn ngữ máy

- Thế hệ 2: Hợp ngữ

- Thế hệ 3: Ngôn ngữ bậc cao (Ngôn ngữ lập trình bậc cao)

Trang 5

1 Ngôn ngữ máy

- Mỗi loại máy tính đều có 1 ngôn ngữ máy riêng.

Ví dụ:

- BXL 32 BIT, VI KIẾN TRÚC NetBurst

+ BXL Pentium 4

+ BXL Celeron

+Pentium 4 Extreme Edition (P4EE)

- BXL 64 BIT, VI KIẾN TRÚC NETBURST

+ P4 Prescott (năm 2004 )

+ Pentium D (năm 2005)

- BXL 64BIT, KiẾN TRÚC CORE

+Intel Core 2 Duo

+ Core 2 Extreme

Tiết 17 – Bài 5 NGÔN NGỮ LẬP TRÌNH

Trang 6

? Em hiểu thế nào là 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.

Tiết 17 – Bài 5 NGÔN NGỮ LẬP TRÌNH

1001 0001 0110 0100 0001 0000

0000 0011 0110 0110 0001 0000

1010 0011 0000 0000 0010 1011

Ví dụ: Đoạn chương trình sau mô tả việc thực hiện

cộng hai giá trị trên ngôn ngữ máy

Trang 7

Tiết 17 - Bài 5 NGÔN NGỮ LẬP TRÌNH

- Các lệnh viết bằng ngôn ngữ máy ở dạng mã nhị phân hoặc

mã hexa

? Chương trình viết bằng ngôn ngữ khác có thực hiện trực

tiếp trên máy tính luôn được không? Tại sao?

- Mỗi chương trình viết bằng ngôn ngữ khác đều phải dịch ra

ngôn ngữ máy bằng một chương trình dịch.

Trang 8

Tiết 17 – Bài 5 NGÔN NGỮ LẬP TRÌNH

? Vậy ngôn ngữ máy những ưu điểm gì ?

- Ưu điểm: Khai thác triệt để và tối ưu khả năng của máy tính.

? Em hãy đưa ra những nhược điểm của ngôn ngữ máy?

- Nhược điểm:

+ Ngôn ngữ máy phức tạp, phụ thuộc nhiều vào phần cứng.

+ Chương trình viết mất nhiều công sức, cồng kềnh, khó hiệu chỉnh, khó cải tiến.

+ Tính phổ dụng không cao.

Ngôn ngữ này không thích hợp với số đông người lập trình.

Trang 9

Tiết 17 – Bài 5 NGÔN NGỮ LẬP TRÌNH

2 Hợp ngữ

Ví dụ:

Để cộng hai giá trị có trong hai thanh ghi AX, BX ta thực hiện như sau:

Trong đó:

ADD: là kí hiệu phép cộng (viết tắt từ tiếng Anh);

Kết quả của phép cộng sẽ được ghi trong thanh AX.

? Qua ví dụ trên em có nhận xét gì về hợp ngữ?

Trang 10

? Vậy hợp ngữ là gì?

- Là ngôn ngữ kết hợp ngôn ngữ máy với ngôn ngữ tự nhiên của con người Nó cho phép người lập trình sử dụng một số từ (thường là viết tắt các từ tiếng Anh) để thể hiện các lệnh cần thực hiện.

Tiết 17 – Bài 5 NGÔN NGỮ LẬP TRÌNH

Ví dụ: Đoạn chương trình sau mô tả thực hiện cộng hai số nguyên A,B

MOV AX, A ADD AX, B MOV Tong, AX

Trang 11

? Em nào có thể chỉ ra nhược điểm của hợp ngữ?

- Ưu điểm:

+ Đơn giản hóa câu lệnh

+ Dễ viết, dễ hiểu hơn ngôn ngữ máy.

Tiết 17 – Bài 5 NGÔN NGỮ LẬP TRÌNH

- Nhược điểm:

+ Câu lệnh vẫn còn phức tạp, khó nhớ, vẫn còn phụ thuộc vào loại máy

+ Tính phổ dụng không cao.

Ngôn ngữ này chỉ thích hợp với các nhà lập trình chuyên

? Hợp ngữ có những ưu điểm gì?

Trang 12

Tiết 17 – Bài 5 NGÔN NGỮ LẬP TRÌNH

?Máy tính có thực hiện được ngay các chương trình viết bằng hợp ngữ

khô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.

Ví dụ về hợp dịch: Tasm.exe, Emu8086 …

HỢP

NGỮ

NGÔN NGỮ MÁY CHƯƠNG TRÌNH

HỢP DỊCH

Trang 13

Tiết 17 - Bài 5 NGÔN NGỮ LẬP TRÌNH

3 Ngôn ngữ bậc cao.

Ví dụ:

NNLT Fortran

Program VD;

Read (*,*) A,B

Tong= A+B

Write(*,*) Tong

End

? Em có nhận xét gì về các câu lệnh được viết trong đoạn

Đoạn chương bên thực hiện công việc gì?

Trang 14

Tiết 17 – Bài 5 NGÔN NGỮ LẬP TRÌNH

? Vậy em hiểu ngôn ngữ bậc cao là gì?

Là ngôn ngữ trong đó các câu lệnh được viết gần với ngôn

ngữ tự nhiên.

Ví dụ dòng lệnh cho biết số nguyên N là số âm hay số dương

của Pascal:

IF (N < 0) THEN Write(‘ N la so am’)

ELSE Write(‘N la so dương’);

“Ngôn ngữ bậc cao thích hợp với số đông người lập trình”

Em có đồng ý với ý kiến trên không? Tại sao?

-Ưu điểm:

+ Ngắn gọn, dễ hiểu, dễ hiệu chỉnh và dễ nâng cấp.

+ Cho phép làm việc với nhiều kiểu dữ liệu và cách tổ chức dữ liệu

đa dạng.

+ Có tính độc lập cao, ít phụ thuộc vào loại máy.

Trang 15

? Hãy kể tên một số ngôn ngữ lập trình bậc cao mà em biết?

- 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, phần mềm ứng dụng …

Tiết 17 – Bài 5 NGÔN NGỮ LẬP TRÌNH

? Ngôn ngữ bậc cao có nhược điểm gì?

- Chương trình viết bằng ngôn ngữ bậc cao phải được chuyển

về chương trình trên ngôn ngữ máy thông qua chương trình dịch.

- Nhược điểm: Mất nhiều thời gian để dịch ra ngôn ngữ

máy.

Một số chương trình dịch: Turbo Pascal, Freepascal, C, turbo

Trang 16

Tiết 17 - Bài 5 NGÔN NGỮ LẬP TRÌNH

NNLT Pascal Begin

Readln(A,B);

Tong:=A+B;

Write(Tong); End.

MOV AX, A

ADD AX, B

MOV Tong, AX

Với bài toán tính tổng hai số nguyên A, B ta có thể viết trên 3 thế

hệ ngôn ngữ lập trình qua các đoạn chương trình như sau:

1001 0001 0110 0100 0001 0000

0000 0011 0110 0110 0001 0000

1010 0011 0000 0000 0010 1011

Đoạn CT 3

? Em hãy chỉ ra các loại ngôn ngữ lập trình được sử dụng

Viết bằng hợp ngữ

Viết bằng ngôn ngữ máy

Viết bằng ngôn ngữ bậc cao

Trang 17

? Hãy ghép mỗi đặc điểm ở cột bên phải với ngôn ngữ lập trình tương ứng ở cột bên trái

? Hãy ghép mỗi đặc điểm ở cột bên phải với ngôn ngữ lập trình tương ứng ở cột bên trái

A) Ngôn ngữ máy

B) Hợp ngữ

C) Ngôn ngữ bậc cao

1) Máy có thể trực tiếp hiểu được 2) Phải có chương trình hợp dịch để dịch sang

ngôn ngữ máy 3) Gần với ngôn ngữ tự nhiên 4) Có tính độc lập với từng loại máy cụ thể 5) Các lệnh là các dãy bit

6) Các lệnh sử dụng một số từ tiếng anh để

thay nhóm bit làm chương trình dễ đọc,

dễ viết hơn.

Đáp án

Tiết 17 - Bài 5 NGÔN NGỮ LẬP TRÌNH

Ngày đăng: 22/10/2014, 14:32

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w