Slide Chương trình dịch - C1 Tổng quan - GV Hoàng Anh Việt

LI
lienhejb
0 lượt tải
48
0
Slide Chương trình dịch (HUST) - GV Hoàng Anh Việt

Nội dung tài liệu

Trang 2

Chương I: Giới thiệu Chương trình dịch Nguyên lý cơ bản của Ngôn ngữ lập trình và Thiết kế cấu tạo của chương trình dịch 2 goupee.com fb.com/groups/goupee

Trang 3

Chương trình dịch Vấn đề Người dùng:sử dụng basic, pascal ,c,java…… Ngôn ngữ cấp cao Diễn Biên dịch dịch Chỉ hiểu được mã nhị phân biểu thị chỉ lệnh và dữ liệu 3 3 goupee.com fb.com/groups/goupee

Trang 4

• Chú trọng đến nguyên lý và kỹ thuật liên quan. • Môn học về Chương trình dịch cung cấp phương pháp luận giải quyết những vấn để của lĩnh vực Khoa học máy tính ở cấp độ vĩ mô. Đặt vấn đề, giải quyết vấn đề •Môn học này có sự kết hợp của Lý luận và thực hành. 4 4 goupee.com fb.com/groups/goupee

Trang 5

Nội dung môn học Chương I: Giới thiệu Chương II: Văn phạm phi ngữ cảnh Chương III Phân tích từ vựng Chương IV Phân tích ngữ pháp Chương V Phân tích ngữ nghĩa và sinh mã trung gian Chương VI Sinh mã mục tiêu. 5 goupee.com fb.com/groups/goupee

Trang 6

§1.1 Lịch sử phát triển của Kỹ thuật dịch  1820—1850Charles Babbage người Mỹ phát mính ra chiếc máy vi tính đầu tiên.  Những năm 30 của thế kỷ này nhà toán học người Anh Turing đã đề xuất ra khái niệm máy Turing. Máy Turing trở thành mô hình toán học của máy tính hiện đại.  1994 A.Aiken của trường Đại học Haward đã thiết kế thành công máy MARKI với khả năng tự động điều kiển đọc mã, trở thành chiếc máy tự động đầu tiên trên thế giới.  Năm 1946 Chiếc máy tính điện tử đầu tiên (ENIAC) ra đời tại Mỹ. 6 goupee.com fb.com/groups/goupee

Trang 7

Sự hình thành ngôn ngữ.  Ngôn ngữ máy và Hợp ngữ Ngôn ngữ máy -Ngôn ngữ ký hiệu hợp ngữ - Ngôn ngữ Macro  FORTRAN、ALGOLvà COBOL  FORTRAN(FORmulaTRANslation) Ngôn ngữ diễn dịch công thức, là ngôn ngữ cấp cao đầu tiên ra đời vào những năm 50 1954-1959 FORTRAN0Sự ra đời của FORTRAN 0 và Hệ thống biên dịch đánh dấu sự hình thành của kỹ thuật dịch. 7 goupee.com fb.com/groups/goupee

Trang 8

Sự hình thành ngôn ngữ. ALGOL(ALGOkithmic Language) Ngôn ngữ Đại số toán học ALGOL58 ALGOL60 SỬ dụng ký pháp BNF: hình thức hóa ngôn ngữ, tạo tiền đề cho lĩnh vực nghiên cứu về phân tích ngữ pháp của ngôn ngữ. COBOL Đề xuất phương pháp mô tả dữ liệu độc lập với máy tính cụ thể, tạo tiền đề phát triển của hệ quản trị cơ sở dữ liệu. 8 goupee.com fb.com/groups/goupee

Trang 9

Sự hình thành ngôn ngữ.  PASCAL Do một tiểu nhóm của ALGOL60 phát minh chủ yếu dùng vào việc giảng dạy, và viết một số phần mềm hệ thống, PASCAL kế thừa ưu việt của ALGO60. PASCAL có một vai trò rất lớn trong lịch sử phát triển của ngôn ngữ lập trình hướng cấu trúc.  Ada  PROLOG  IDE(Interactive Development Environment) 9 goupee.com fb.com/groups/goupee

Trang 10

Sự hình thành ngôn ngữ.  SIMULA 67 Từ ALGOL60 phát triển lên,phát triển class đánh dấu sự phát triển của dữ liệu trừu tượng  Smalltalk 72-80 Kiến tạo giao diện người dùng: View Đơn vị của chương trình là: Class. Đánh dấu sự thành thục của lập trình hướng đối tượng.  C++ Cấu trúc và hướng đối tượng kết hợp tòan mỹ.Hệ thông biên dịch của C tính năng cao nhưng tính oan toàn còn hạn chế.  Java Thế hệ ngôn ngữ phát triên cho Web, tính an toàn được nâng cao (so sánh với C) 10 goupee.com fb.com/groups/goupee

Trang 11

§1.2 Ngôn ngữ lập trình • Ngôn ngữ cấp thấp: Phụ thuộc hệ máy Ngôn ngữ máy hợp ngữ • Ngôn ngữ cấp cao Không phụ thuộc hệ máy cụ thể • FORTRAN——Ngôn ngữ thuật toán • BASIC——Ngôn ngữ tương tác • PASCAL——Ngôn ngữ cấu trúc • SQL —— Ngôn ngữ tìm kiếm CSDL • • Ngôn ngữ cấp trung C Có chức năng của ngôn ngữ cấp thấp và cấp cao. 11 11 goupee.com fb.com/groups/goupee

Trang 12

1.Ưu điểm của Ngôn ngữ cấp cao Hiệu suất cao (Lập trình), tính tương thích tốt Không cần quan tâm hệ máy cụ thể, như cấp phát bộ nhớ. Có cấu trúc dữ liệu phong phú Gần gũi ngôn ngữ tự nhiên, dễ học dễ nắm bắt. 12 12 goupee.com fb.com/groups/goupee

Trang 13

2. Định nghĩa của Ngôn ngữ lập trình cấp cao. Ngôn ngữ lập trình cấp cao, nói một cách đơn giản là một ngôn ngữ lập trình giúp người dùng dễ hiểu, nắm bắt. Hoặc theo cách khác có đầy đủ đặc điểm sau về: phương pháp biểu đạt, quy ước, quy tắc. 13 13 goupee.com fb.com/groups/goupee

Trang 14

2.Định nghĩa ngôn ngữ lập trình (tiếp) (1) Không yêu cầu người lập trình phải nắm được những tri thức liên quan hệ máy cụ thể (Thanh ghi, dữ liệu biểu thị, I/O).Đặc trưng này không xét đến hiệu năng. (2) Độc lập với bất kỳ hệ máy cụ thể nào, dễ sử dụng để viết ra chương trình có thể chạy trên nhiều hệ máy khác nhau. (3) Mã nguồn được viết bằng ngôn ngữ lập trình cấp cao có thể được dịch thành ngôn ngữ máy chạy được trên các hệ máy khác nhau tương ứng. (4) Ngôn ngữ cấp cao có thể mô tả vấn đề một cách tự nhiên, là một ngôn ngữ hướng giải pháp. 14 14 goupee.com fb.com/groups/goupee

Trang 15

§1.3 Chương trình biên dịch, Chương trình Hợp Ngữ, Chương trình Diễn dịch 1.CT Phiên dịch Là một chương trình có thể phiên dịch mã CT viết bằng ngôn ngữ A sang mã CT tương đương viết bằng ngôn ngữ B. Ngôn ngữ A: Ngôn ngữ nguồn của. Ngôn ngữ B: Ngôn ngữ mục tiêu. Mã CT viết bằng ngôn ngữ nguồn: Mã nguồn. Mã CT viết bằng ngôn ngữ mục tiêu: Mã mục tiêu. 15 goupee.com fb.com/groups/goupee

Trang 16

NN CT NN Máy Cấp cao phiên dịch Hợp ngữ NN nguồn NN mục tiêu CT CT nguồn Phiên dịch CT mục tiêu Tương đương Logic 16 goupee.com fb.com/groups/goupee

Trang 17

2. Chương trình Biên dịch Nếu ngôn ngữ nguồn là ngôn ngữ cấp cao, ngôn ngữ mục tiêu là ngôn ngữ cấp thấp (ngôn ngữ máy, hợp ngữ), thì CT phiên dịch gọi là CT Biên dịch 3. Chương trình Hợp ngữ Nếu ngôn ngữ nguồn là Hợp ngữ, ngôn ngữ mục tiêu là ngôn ngữ Máy, thì CT phiên dịch gọi là CT Hợp dịch 17 goupee.com fb.com/groups/goupee

Trang 18

Thuyết minh: CT Biên dịch, Ngôn ngữ nguồn và Máy vi tính là những khái niệm liên quan mật thiết với nhau: — Ngôn ngữ nguồn khác nhau có CT Biên dịch khác nhau. — Một ngôn ngữ nguồn có thể có nhiều CT Biên dịch khác nhau. Giai đoạn biên dịch sinh ra CT mục tiêu không phải CT mã máy, mà là CT Hợp ngữ, quá trình thực thi CT nguồn phân thành 3 giai đoạn: Biên dịch, Hợp dịch, Thực thi (chạy) 18 goupee.com fb.com/groups/goupee

Trang 20

Computer CT mục tiêu Dữ liệu Kết quả nhập CT Chạy được Giai đoạn thực thi 20 goupee.com fb.com/groups/goupee

Hiển thị 20 trang đầu. Tải tài liệu để xem đầy đủ.

Bình luận (0)

Đăng nhập để tham gia bình luận

Chưa có bình luận nào. Hãy là người đầu tiên!