PDA

View Full Version : xin giúp đỡ môn trình biên dịch gấp



ntmhien1507
03-01-2010, 17:10
Đây là bài tập lớn về môn trình biên dịch mà thầy em cho. Có anh chị nào biết thì giúp em với:
Viết trình biên dịch để dịch 1 đoạn chương trình gồm các phát biểu sau ra dạng mã máy bộ tứ:
Phát biểu ghép (tương tự Pascal)
Phát biểu gán (tương tự Pascal)
Phát biểu if then else (tương tự Pascal)
Các biểu thức kết thúc bằng dấu ;
Các biểu thức trong các phát biểu là các biểu thức số học và luận lý, bao gồm các phép toán + , - , *, /,NOt, And, or và các phép so sánh. Các toán hạng gồm các danh hiệu, hằng số thực, nguyên, true, false(kể cả biểu thức) và kiểu array. Độ ưu tiên các phép toán tương tự Pascal
Thực hiện kiểm tra kiểu tĩnh và chuyển đổi từ nguyên sang thực khi cần thiết
Các danh hiệu phải khai báo trước
Quá trình phân tích cú pháp phải được thực hiện từ dưới lên.
Cả hai giai đoạn phân tích từ vựng và cú pháp phải thực hiện song song 2 quá trình sau:
- Viết chương trình bằng tay
- Sử dụng 1 bộ sinh mã tự động để xây dựng chương trình thông qua sự đặc tả từ vựng và cú pháp
Giai đoạn xử lý ngữ nghĩa phải thực hiện bằng cách đặt các hành vi ngữ nghĩa vào bản đặt tả cú pháp và sử dụng công cụ sinh mã ở phần 1 để thực hiện quá trình này
-ký pháp hậu tố
vd:chuỗi nhập: x7 + (3.55-day)*x7
khi nhập vào chương trình in ra:id:x7 và day,num=3.55
Hiện giờ em cũng không biết phải bắt đầu từ đâu nữa. Ai biết thì chỉ cho em với. Em cảm ơn trước... .Bác nào biết viết bằng vb xin giúp dùm