Mục tiêu nghiên cứu đề tài là áp dụng lý thuyết vào xây dựng công cụ ứng dụng vào việc phát sinh mã nguồn sang ngôn ngữ lập trình C nhằm tạo điều kiện để tiếp tục nghiên cứu và xây dựng việc tự động phát sinh ca kiểm thử từ ngôn ngữ mô hình hóa. | ĐẠI HỌC ĐÀ NẴNG TRƯỜNG CĐ CÔNG NGHỆ THÔNG TIN BÁO CÁO TỔNG KẾT ĐỀ TÀI KHOA HỌC VÀ CÔNG NGHỆ CẤP CƠ SỞ NGHIÊN CỨU ỨNG DỤNG LEX YACC TRONG TỰ ĐỘNG PHÁT SINH MÃ NGUỒN Mã số T2016-07-04 Chủ nhiệm đề tài ThS. Dương Thị Mai Nga Đà Nẵng 12 2016 1 ĐẠI HỌC ĐÀ NẴNG TRƯỜNG CĐ CÔNG NGHỆ THÔNG TIN BÁO CÁO TỔNG KẾT ĐỀ TÀI KHOA HỌC VÀ CÔNG NGHỆ CẤP CƠ SỞ NGHIÊN CỨU ỨNG DỤNG LEX YACC TRONG TỰ ĐỘNG PHÁT SINH MÃ NGUỒN Mã số T2016-07-04 Xác nhận của cơ quan chủ trì đề tài Chủ nhiệm đề tài Đà Nẵng 12 2016 2 MỤC LỤC MỞ ĐẦU . 8 CHƯƠNG 1 TỔNG QUAN VỀ TRÌNH BIÊN DỊCH . 9 . KHÁI NIỆM TRÌNH BIÊN DỊCH. 9 . PHÂN TÍCH CHƯƠNG TRÌNH NGUỒN . 10 TỔNG KẾT CHƯƠNG 1 . 14 CHƯƠNG 2 CÔNG CỤ LEX YACC . 15 . GIỚI THIỆU VỀ LEX YACC . 15 . LEX . 17 . YACC . 21 . CÀI ĐẶT CÁC ỨNG DỤNG . 25 TỔNG KẾT CHƯƠNG 2 . 25 CHƯƠNG 3 XÂY DỰNG CÔNG CỤ SINH MÃ NGUỒN. 26 . GIỚI THIỆU NGÔN NGỮ ĐẶC TẢ TTT . 26 . Cấu trúc cơ bản của một chương trình . 26 . Các lệnh của ngôn ngữ TTT. 26 . Các thành phần khác . 27 . XÂY DỰNG GIẢI PHÁP DỊCH NGÔN NGỮ TTT SANG NGÔN NGỮ C . 29 . XÂY DỰNG TRÌNH BIÊN DỊCH VÀ THỬ NGHIỆM . 35 KẾT LUẬN VÀ KIẾN NGHỊ . 38 TÀI LIỆU THAM KHẢO . 39 PHỤ LỤC . 40 3 DANH MỤC BẢNG BIỂU Số hiệu bảng Tên bảng Trang Bảng Mô tả cách biểu diễn các biểu thức chính quy 18 Bảng Biểu diễn một số ví dụ của biểu thức chính quy 18 Bảng Danh sách các macro biến được định nghĩa trước của lex 20 Bảng Thứ tự ưu tiên các phép toán 28 Bảng chuyển đổi từ vựng giữa ngôn ngữ TTT và ngôn ngữ Bảng 29 C Bảng chuyển đổi cú pháp giữa ngôn ngữ TTT và ngôn ngữ Bảng 31 C Chuyển đổi các phép toán CTT của ngôn ngữ TTT sang Bảng 33 ngôn ngữ C 4 DANH MỤC CÁC HÌNH Số hiệu hình Tên hình Trang Hình Một trình biên dịch 9 Hình Giao diện của bộ phân tích từ vựng trong trình biên dịch 11 Hình Giao diện của bộ phân tích cú pháp trong trình biên dịch 12 Cây phân tích cú pháp cho câu lệnh Hình 13 position initial rate 60 Hình Ví dụ trình tự biên dịch đoạn mã nguồn a