Slide Chương trình dịch - C6 Sinh mã trung gian - GV Hoàng Anh Việt
正在生成预览...
Slide bài giảng về Bài 6 - Sinh mã trung gian trong môn Chương trình dịch, trình bày các bước dịch, định nghĩa ngôn ngữ trung gian IR và mô tả chi tiết các nút biểu thức và nút lệnh của IR.
描述
Bài 6. SINH MÃ TRUNG GIAN Hoàng Anh Việt Viện CNTT&TT - ĐHBKHN 1 fb.com/groups/ Mô tả các bước dịch (1) Mã nguồn (dãy các kí tự) Phân tích từ vựng If (a == 0) min = a; Dãy các từ tố (token) If ( Id:a == 0 ) Id:min = Id:a ; if Cây cú pháp == a = 0 min Cây cú pháp điều khiển boolean == int a Phân tích cú pháp ; a Phân tích ngữ nghĩa if = int int 0 int min lvalue a ; int fb.com/groups/ Mô tả các bước dịch (2) if boolean == = int Sinh mã trung gian ; int int 0 int min a lvalue SEQ(CJUMP(TEMP(a) == 0, L1, L2), LABEL(L1), TEMP(min) = TEMP(a) LABEL(L2)) int a cmp rb, 0 jnz L2 L1: mov ra, rb L2: Sinh mã assembly Tối ưu mã cmp ecx, 0 cmovz edx,ecx fb.com/groups/ Ngôn ngữ trung gian Là ngôn ngữ cho một loại máy trừu tượng Cho phép sinh mã không phụ thuộc vào máy đích Cho phép tối ưu mã trước khi sinh mã máy thật sự Pentium Cây cú pháp + thông tin điều khiển Java bytecode AMD fb.com/groups/ Ngôn ngữ trung gian Dễ sinh ra từ cây cú pháp Dễ sinh mã máy Số lượng lệnh nhỏ, gọn Dễ tối ưu mã Dễ chuyển sang loại mã máy khác Cây cú pháp (>40 nút) Mã trung gian (13 nút) Pentium (>200 lệnh) fb.com/groups/ Ngôn ngữ trung gian Một dạng thể hiện của chương trình nằm giữa cây cú pháp điều khiển và mã máy Sử dụng Lệnh nhảy Thanh ghi Vị trí trên bộ nhớ Tối ưu mã Cây cú pháp Mã trung + gian thông tin điều khiển Pentium Java bytecod AMD fb.com/groups/ Một ngôn ngữ trung gian IR (Intermediate Representation) là một cây thể hiện các lệnh của một loại máy trừu tượng Nút lệnh không trả lại giá trị, được thực hiện theo thứ tự nhất định Ví dụ: MOVE, SEQ, CJUMP Nút biểu thức trả lại giá trị, các nút con có thể thực hiện theo thứ tự bất kì Ví dụ: ADD, SUB Cho phép tối ưu mã fb.com/groups/ Mô tả các nút biểu thức của IR CONST(i): hằng số nguyên i TEMP(t): thanh ghi t, máy trừu tượng có vô hạn
AI 摘要
- 文档名称
- Slide Chương trình dịch - C6 Sinh mã trung gian - GV Hoàng Anh Việt
- 学校 / 课程
- Đại học Bách khoa Hà Nội · Chương trình dịch
- 作者(文档中)
- Hoàng Anh Việt
- 内容
- Tài liệu này trình bày về mã trung gian trong chương trình dịch, là bước trung gian giữa cây cú pháp và mã máy, giúp tách biệt máy đích và tối ưu hóa. Nó định nghĩa các thành phần của mã trung gian như nút lệnh và nút biểu thức.
- 目录
- Bài 6.
- SINH MÃ TRUNG GIAN
- Mô tả các bước dịch (1)
- Mô tả các bước dịch (2)
- Ngôn ngữ trung gian
- Ngôn ngữ trung gian
- Ngôn ngữ trung gian
- Một ngôn ngữ trung gian
- Mô tả các nút biểu thức của IR
- CONST
- TEMP
- Toán tử
- MEM
- CALL
- NAME
- ESEQ
- Mô tả các nút lệnh của IR
- 页数
- 27 页
- 上传者
- lienhejb
常见问题
此文档免费吗?
是的。“Slide Chương trình dịch - C6 Sinh mã trung gian - GV Hoàng Anh Việt”是免费的 — 只需登录并点击“下载”即可获取原始文件。
这份文档有多少页?
该文档共有 27 页,适用于课程 Chương trình dịch。您可以在下载前进行在线预览。
我可以在下载前预览吗?
是的。您可以通过在线阅读器直接在本页面预览此文档,然后再决定是否下载。
Slide Chương trình dịch - C6 Sinh mã trung gian - GV Hoàng Anh Việt
正在生成预览...
Bài 6. SINH MÃ TRUNG GIAN Hoàng Anh Việt Viện CNTT&TT - ĐHBKHN 1 fb.com/groups/ Mô tả các bước dịch (1) Mã nguồn (dãy các kí tự) Phân tích từ vựng If (a == 0) min = a; Dãy các từ tố (token) If ( Id:a == 0 ) Id:min = Id:a ; if Cây cú pháp == a = 0 min Cây cú pháp điều khiển boolean == int a Phân tích cú pháp ; a Phân tích ngữ nghĩa if = int int 0 int min lvalue a ; int fb.com/groups/ Mô tả các bước dịch (2) if boolean == = int Sinh mã trung gian ; int int 0 int min a lvalue SEQ(CJUMP(TEMP(a) == 0, L1, L2), LABEL(L1), TEMP(min) = TEMP(a) LABEL(L2)) int a cmp rb, 0 jnz L2 L1: mov ra, rb L2: Sinh mã assembly Tối ưu mã cmp ecx, 0 cmovz edx,ecx fb.com/groups/ Ngôn ngữ trung gian Là ngôn ngữ cho một loại máy trừu tượng Cho phép sinh mã không phụ thuộc vào máy đích Cho phép tối ưu mã trước khi sinh mã máy thật sự Pentium Cây cú pháp + thông tin điều khiển Java bytecode AMD fb.com/groups/ Ngôn ngữ trung gian Dễ sinh ra từ cây cú pháp Dễ sinh mã máy Số lượng lệnh nhỏ, gọn Dễ tối ưu mã Dễ chuyển sang loại mã máy khác Cây cú pháp (>40 nút) Mã trung gian (13 nút) Pentium (>200 lệnh) fb.com/groups/ Ngôn ngữ trung gian Một dạng thể hiện của chương trình nằm giữa cây cú pháp điều khiển và mã máy Sử dụng Lệnh nhảy Thanh ghi Vị trí trên bộ nhớ Tối ưu mã Cây cú pháp Mã trung + gian thông tin điều khiển Pentium Java bytecod AMD fb.com/groups/ Một ngôn ngữ trung gian IR (Intermediate Representation) là một cây thể hiện các lệnh của một loại máy trừu tượng Nút lệnh không trả lại giá trị, được thực hiện theo thứ tự nhất định Ví dụ: MOVE, SEQ, CJUMP Nút biểu thức trả lại giá trị, các nút con có thể thực hiện theo thứ tự bất kì Ví dụ: ADD, SUB Cho phép tối ưu mã fb.com/groups/ Mô tả các nút biểu thức của IR CONST(i): hằng số nguyên i TEMP(t): thanh ghi t, máy trừu tượng có vô hạn
阅读全文
- 文档名称
- Slide Chương trình dịch - C6 Sinh mã trung gian - GV Hoàng Anh Việt
- 学校 / 课程
- Đại học Bách khoa Hà Nội · Chương trình dịch
- 作者(文档中)
- Hoàng Anh Việt
- 内容
- Tài liệu này trình bày về mã trung gian trong chương trình dịch, là bước trung gian giữa cây cú pháp và mã máy, giúp tách biệt máy đích và tối ưu hóa. Nó định nghĩa các thành phần của mã trung gian như nút lệnh và nút biểu thức.
- 目录
- Bài 6.
- SINH MÃ TRUNG GIAN
- Mô tả các bước dịch (1)
- Mô tả các bước dịch (2)
- Ngôn ngữ trung gian
- Ngôn ngữ trung gian
- Ngôn ngữ trung gian
- Một ngôn ngữ trung gian
- Mô tả các nút biểu thức của IR
- CONST
- TEMP
- Toán tử
- MEM
- CALL
- NAME
- ESEQ
- Mô tả các nút lệnh của IR
- 页数
- 27 页
- 上传者
- lienhejb
评论 (0)
暂无评论。快来抢沙发吧!
Slide Chương trình dịch (UNIT2) - GV Nguyễn Thị Thu Hương
Slide Chương trình dịch (UNIT5) - GV Nguyễn Thị Thu Hương
Slide Chương trình dịch (UNIT6) - GV Nguyễn Thị Thu Hương
Slide Chương trình dịch - C4 Phân tích cú pháp - GV Hoàng Anh Việt
Slide Chương trình dịch - C2 CT Dịch đầu tiên - GV Hoàng Anh Việt
K5 Bộ đề luyện thi Trạng Nguyên Tiếng Việt (NXB DHQG)
K2 Bộ đề luyện thi Trạng Nguyên Tiếng Việt (NXB DHQG)
K3 Bộ đề luyện thi Trạng Nguyên Tiếng Việt (NXB DHQG)
K4 Bộ đề luyện thi Trạng Nguyên Tiếng Việt (NXB DHQG)
K1 Bộ đề luyện thi Trạng Nguyên Tiếng Việt (NXB DHQG)
评论 (0)
暂无评论。快来抢沙发吧!