1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài giảng tin học đại cương chương 5 lê thị ngọc thảo

17 0 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

Tiêu đề Các Ngôn Ngữ Lập Trình
Tác giả Lê Thị Ngọc Thảo
Trường học ĐH Tôn Đức Thắng
Chuyên ngành CNTT
Thể loại bài giảng
Định dạng
Số trang 17
Dung lượng 297,78 KB

Nội dung

CHƯƠNG 5: CÁC NGÔN NGỮLẬP TRÌNH... Chương 5: Các ngôn ngữ lập trìnhzKhái niệm ngôn ngữ lập trìnhzSự tiến hóa của ngôn ngữ lập trìnhzCác ngôn ngữ lập trình tiêu biểuzBiên dịch và thông dị

Trang 1

CHƯƠNG 5:

CÁC NGÔN NGỮ

LẬP TRÌNH

Trang 2

Chương 5: Các ngôn ngữ lập trình

z Khái niệm ngôn ngữ lập trình

z Sự tiến hóa của ngôn ngữ lập trình

z Các ngôn ngữ lập trình tiêu biểu

z Biên dịch và thông dịch

z Các phương pháp lập trình

Trang 3

Khái niệm ngôn ngữ lập trình (1)

z Con người “nói chuyện” với nhau:

• Ngôn ngữ tự nhiên

z Con người “nói chuyện” với máy tính:

• Ngôn ngữ lập trình

Trang 4

Khái niệm ngôn ngữ lập trình (2)

z Ngôn ngữ lập trình(Programming language) là một

hệ thống dùng để viết các chương trình cho máy tính

bao gồm:

Cú pháp(Syntax): một chuỗi các kí hiệu hợp lệ

Ngữ nghĩa(Semantic): ý nghĩa của các kí hiệu

z Chương trình (Program) là một tập lệnh (instruction )

điều khiển việc xử lý dữ liệu (data) của máy tính

Program = Data Structures + Alg orithms

Trang 5

Sự tiến hóa của ngôn ngữ lập trình

Machine Language Assembly language

High Level Language

Được dịch bởi Compiler hoặc Interpreter

Được dịch bởi Assembler (Pascal, C, C++, Java, C#, Prolog, Lisp, )

(Assembly language)

Trang 6

Machine Language (1)

z Là ngôn ngữ duy nhất được máy tính hiểu trực tiếp

z Sử dụng hệ thống số nhị phân để biểu diễn lệnh (Instruction)

z Instruction = mẫu bit (bit pattern) được hiểu bởi phần cứng

máy tính

• Instruction: Opcode | Operands

• Chương trình là một dãy các chỉ thị

CPU

I/O

Memory

010001001100

000110100010

Trang 7

Machine Language (2)

) Ưu điểm

9 Chương trình viết bằng ngôn ngữ máy

thực thi nhanh

9 Lập trình khó

9 Phụ thuộc cấu hình phần cứng của máy

9 Dễ dẫn đến sai sót

9 Khó bảo trì và sửa lỗi

Trang 8

Assembly Language (1)

Dùng Alphanumberic code để biểu diễn lệnh và địa chỉ ô nhớ thay vì bit pattern

MOV A, r0 #store

Ví dụ 2: Tính (A+B)2 = A2 + 2AB + B2

LOAD A

MULT A

LOAD A

MULT B

MULT 2

LOAD B

MULT B

ADD H1

Trang 9

Assembly Language (2)

Trang 10

Assembly Language (3)

z Chương trình được viết bằng ngôn ngữ Assembly trước khi được

thực thi bởi CPU nó phải được dịch sang mã máy (machine code).

z Ưu điểm

• Việc lập trình nhanh hơn, và chương trình đọc dễ hiểu hơn ngôn ngữ mã máy

• Nguời lập trình dễ nhớ lệnh hơn dùng mã máy

z Nhược điểm

• Chương trình phụ thuộc bộ xử lý

• Chương trình chạy chậm hơn khi được viết bằng mã máy

Source code in

Assembly language

Object code in Machine language

Assembler

Trang 11

Ngôn ngữ lập trình cấp cao

z Thân thiện với người sử dụng, bởi vì nó dùng các khái niệm, thuật ngữ gần với ngôn ngữ tự nhiên.

• Ví dụ 1:

if A > B then print “A larger than B”

else print “A less than B”

• Ví dụ 2:

int fact(int n) {

if (n==0)

return 1 else

return n*fact(n-1) }

z Độc lập với các hệ máy

z Chương trình dễ đọc, dễ hiểu, dễ bảo trì

z Khả chuyển trên nhiều hệ máy khác nhau

z Chương trình phải được dịch sang mã máy trước khi được thực thi

n!=

n*(n-1)! n>0

Trang 12

Một số ngôn ngữ lập trình cấp cao

z BASIC, Beginner's All-Purpose Symbolic Instruction Code

• John Kermeny và Thomas Kurtz (1964) tại trường đại học

Dartmouth

z COBOL, COmmon Business Oriented Language,

• Bộ quốc phòng Hoa Kỳ (1960) hình thức tựa tiếng Anh

z C

• Dennis Ritchie, phòng thí nghiệm Bell vào năm 1972

z FORTRAN, FORmula TRANslator

• IBM, John Backus (1957) dành cho khoa học, kỹ sư & toán học

z PASCAL

• Niklaus Wirth, Zurich, Thụy Sĩ,1968, giảng dạy lập trình

• Blaise Pascal (1623 - 1662) người đầu tiên tạo ra máy tính

Trang 13

Lịch sử phát triển các NNLT

Trang 14

Quá Trình Dịch Một Chương Trình

Trang 15

Thông dịch & Biên dịch (1)

Source program Compiler Target program

Target program

Biên dịch

Source program Interpreter Output

Input

Thông dịch

Trang 16

Thông dịch & Biên dịch (2)

Hiển thị lỗi từng dòng lệnh của chương trình nguồn

Trong quá trình dịch, nếu phát

hiện lỗi, compiler sẽ hiển thị lỗi

của toàn bộ chương trình nguồn.

Mỗi lần thực thi chương trình đều phải dịch lại mã nguồn Ælàm cho chương trình chạy chậm.

Mã đối tượng được lưu lại thành

các tập tin Obj để sử dụng cho

các lần thực thi chương trình sau

đó, mà không cần phải dịch lại

chương trình Ælàm cho chương

trình chạy nhanh hơn

Dịch và thực thi từng dòng lệnh một của chương trình nguồn.

Dịch toàn bộ chương trình nguồn

thành mã đối tượng.

Interpreter Compiler

Trang 17

Các phương pháp lập trình

z Lập trình cấu trúc (Structural Programming)

• Tính đơn thể,

• Cấu trúc điều khiển

• Vào/Ra đơn

• Dễ: viết, đọc, hiểu, kiểm lỗi và hiệu chỉnh

z Lập trình hướng đối tượng (Object Oriented

• Phương pháp kết hợp cả dữ liệu và các câu lệnh của

chương trình

• Tạo ra các đối tượng (object)

Ngày đăng: 29/03/2024, 23:14