1. Trang chủ >
  2. Công Nghệ Thông Tin >
  3. Kỹ thuật lập trình >

CHƯƠNG 2. PHÂN TÍCH TỪ VỰNG

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.27 MB, 268 trang )


TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG



CHƯƠNG 2. PHÂN TÍCH TỪ VỰNG



1. Mục đích

- Chia cắt xâu vào (CT nguồn) thành dãy các

từ tố.

- Hai cách cài đặt

• Sử dụng một lượt cho việc phân tích từ

vựng  dãy các token phân tích cú

pháp.

• Phân tích từ vựng dùng chung một lượt

với phân tích cú pháp. Một lần chỉ phát

29

hiện 1 token gọi là từ tố tiếp đến.



TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG



CHƯƠNG 2. PHÂN TÍCH TỪ VỰNG



2. Nội dung

- Đọc xâu vào từng ký tự một  gom lại

thành token đến khi gặp ký tự không thể kết

hợp thành token.

- Luôn luôn đọc trước một ký tự.

- Loại bỏ ký tự trống và xác định chú thích.

- Chuyển những thông tin của những từ tố

(văn bản, mã phân loại) vừa phát hiện cho

bộ phân tích cú pháp.

- Phát hiện lỗi.



30



TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG



CHƯƠNG 2. PHÂN TÍCH TỪ VỰNG



2. Nội dung

- Sự giao tiếp giữa bộ phân tích từ vựng và bộ

phân tích cú pháp

CT

nguồn



Bộ

phân tích

từ vựng



Gửi token

Yêu cầu token



Bộ

phân tích

cú pháp



Bảng

danh biểu

31



TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG



CHƯƠNG 2. PHÂN TÍCH TỪ VỰNG



3. Otomat hữu hạn đơn định

3.1. Định nghĩa: M(Σ, Q, δ, q0, F)

Σ: bộ chữ vào

Q: tập hữu hạn các trạng thái

q0 ∈ Q: trạng thái đầu

F ⊆ Q: tập các trạng thái kết thúc

δ: hàm chuyển trạng thái có dạng δ(q,a)=p

Với q,p ∈ Q, a ∈ Σ

 δ(q,a)=p: nghĩa là ở trạng thái q, đọc a, chuyển

32

sang trạng thái p



TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG



CHƯƠNG 2. PHÂN TÍCH TỪ VỰNG



3. Otomat hữu hạn đơn định

3.2. Biểu diễn các hàm chuyển trạng thái

 Dùng bảng: sử dụng ma trận δ có:

- Chỉ số hàng: trạng thái

- Chỉ số cột: ký hiệu vào

- Giá trị tại hàng q, cột a là trạng thái p,

sao cho δ(q,a)=p

33



TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG



CHƯƠNG 2. PHÂN TÍCH TỪ VỰNG



3. Otomat hữu hạn đơn định

3.2. Biểu diễn các hàm chuyển trạng thái

 Dùng bảng:

Ví dụ: có hàm chuyển của một Otomat như

sau: δ(1,a)=2, δ(2,b)=2, δ(2,c)=2



δ



a



1



2



2



b



c



2



2



34



TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG



CHƯƠNG 2. PHÂN TÍCH TỪ VỰNG



3. Otomat hữu hạn đơn định

3.2. Biểu diễn các hàm chuyển trạng thái

 Hình vẽ:

- mỗi trạng thái q∈Q được đặt trong các vòng

tròn.

- Trạng thái bắt đầu q0 có thêm dấu ‘>’ ở đầu.

- Trạng thái kết thúc q∈F được đặt trong vòng

tròn kép.



- Các cung nối từ trạng thái q sang trạng35

thái p

có mang các nhãn a∈Σ, có nghĩa δ(q,a)=p



TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG



CHƯƠNG 2. PHÂN TÍCH TỪ VỰNG



3. Otomat hữu hạn đơn định

3.2. Biểu diễn các hàm chuyển trạng thái

 Hình vẽ:

Ví dụ: có hàm chuyển của một Otomat như

sau: δ(1,a)=2, δ(2,b)=2, δ(2,c)=2

b



1



a



2



c

36



TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG



CHƯƠNG 2. PHÂN TÍCH TỪ VỰNG



3. Otomat hữu hạn đơn định

3.2. Biểu diễn các hàm chuyển trạng thái

 Nhận xét:

- Biểu diễn hàm chuyển trạng thái bằng hình

vẽ có ưu điểm hơn. Trong hình vẽ ta xác

định đầy đủ tất cả các thành phần của

Otomat.

- Biểu diễn bằng bảng xác định hàm chuyển

trạng thái, tập các trạng thái, bộ chữ vào

nhưng không phân biệt được trạng thái37bắt

đầu và trạng thái kết thúc.



TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG



CHƯƠNG 2. PHÂN TÍCH TỪ VỰNG



3. Otomat hữu hạn đơn định

3.3. Hoạt động của Otomat



- Đọc các ký hiệu của xâu vào từ trái sang phải,

bắt đầu từ trạng thái q0.

- Mỗi bước đọc một ký hiệu thì chuyển sang

trạng thái theo δ. Có thể đọc xong hay không

đọc xong xâu vào.



38



TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG



CHƯƠNG 2. PHÂN TÍCH TỪ VỰNG



3. Otomat hữu hạn đơn định

3.3. Hoạt động của Otomat

- Đọc xong xâu vào đến một trạng thái p∈F

thì xâu vào được đoán nhận (xâu đúng).

- Đọc xong xâu vào mà rơi vào trạng thái p∉F

thì xâu vào không được đoán nhận.

- Không đọc xong xâu vào (do δ rơi vào điểm

không xác định) thì xâu vào không được

đoán nhận.

39



Xem Thêm
Tải bản đầy đủ (.ppt) (268 trang)

×