Nội dung giáo trìnhCHƢƠNG 1. NHẬP MÔN CHƢƠNG TRÌNH DỊCHCHƢƠNG 2. PHÂN TÍCH TỪ VỰNGCHƢƠNG 3. CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP CHƢƠNG 4. CÁC PHƢƠNG PHÁP PHÂN TÍCH CÚ PHÁP CHƢƠNG 5. PHÂN TÍCH NGỮ NGHĨA CHƢƠNG 6. XỬ LÝ LỖI VÀ SINH MÃCác khái niệm cơ bản1.1. Sự phát triển của ngôn ngữ lập trình1.2. Khái niệm chƣơng trình dịch1.3. Phân loại chương trình dịch1.4. Các ứng dụng khác của kỹ thuật dịchCác khái niệm cơ bản1.4. Các ứng dụng khác của kỹ thuật dịchTrong các hệ thống: phần giao tiếp giữa ngƣời và máy thông qua các câu lệnh.Hệ thống xử lý NN tự nhiên: dịch thuật, tóm tắt văn bản.Các qui tắc từ vựng và cú pháp3.1. Bản chữ cáiGồm những ký hiệu đƣợc phép sử dụng để viết chƣơng trìnhSố lƣợng, ý nghĩa sử dụng của các ký tự trong bản chữ cái của các NN là khác nhau.Nhìn chung bản chữ cái của các NNLT:52 chữ cái: A Z, az10 chữ số: 0 9Các qui tắc từ vựng và cú pháp 3.2. Từ tố (Token)Từ tố là đơn vị nhỏ nhất có nghĩaTừ tố đƣợc xây dựng từ bản chữ cáiVí dụ: hằng, biến, từ khoá, các phép toán,…
Trang 1Giáo trình Kiến trúc máy tính và Hệ
1
CHƯƠNG TRÌNH DỊCH
Trang 2Giáo trình Kiến trúc máy tính và Hệ
Trang 3Giáo trình Kiến trúc máy tính và Hệ
CHƯƠNG 5 PHÂN TÍCH NGỮ NGHĨA
CHƯƠNG 6 XỬ LÝ LỖI VÀ SINH MÃ
Trang 4Giáo trình Kiến trúc máy tính và Hệ
4
1 Các khái niệm cơ bản
2 Đặc trƣng của ngôn ngữ lập trình (NNLT) bậc cao
3 Các qui tắc từ vựng và cú pháp
4 Các chức năng của một trình biên dịch
Chương 2
Trang 5Giáo trình Kiến trúc máy tính và Hệ
5
1.1 Sự phát triển của ngôn ngữ lập trình
1.2 Khái niệm chương trình dịch
1.3 Phân loại chương trình dịch
1.4 Các ứng dụng khác của kỹ thuật dịch
Chương 2
Trang 6Giáo trình Kiến trúc máy tính và Hệ
6
1.1 Sự phát triển của ngôn ngữ lập trình
Chương 2
NN máy (machine language)
Hợp ngữ (Assembly)
NNLT bậc cao (Higher _level language)
Trang 7Giáo trình Kiến trúc máy tính và Hệ
7
1.2 Khái niệm chương trình dịch
Chương trình dịch là chương trình dùng để dịch một chương trình (CT nguồn) viết trên NNLT nào đó (NN nguồn) sang một chương trình tương đương (CT đích) trên một NN khác (NN đích)
Chương 2
Trang 8Giáo trình Kiến trúc máy tính và Hệ
8
1.3 Phân loại chương trình dịch
Trình biên dịch
CT nguồn Trình biên
dịch CT đích
Máy tính thực thi Kết quả
Thời gian dịch
Dữ liệu
Thời gian thực thi
Trang 9Giáo trình Kiến trúc máy tính và Hệ
9
1.3 Phân loại chương trình dịch
Trình thông dịch
CT nguồn Trình thông
dịch Kết quả
Dữ liệu
Trang 10Giáo trình Kiến trúc máy tính và Hệ
10
1.4 Các ứng dụng khác của kỹ thuật dịch
- Trong các hệ thống: phần giao tiếp giữa
người và máy thông qua các câu lệnh.
- Hệ thống xử lý NN tự nhiên: dịch thuật,
tóm tắt văn bản.
Chương 2
Trang 11Giáo trình Kiến trúc máy tính và Hệ
Trang 12Giáo trình Kiến trúc máy tính và Hệ
chữ cái của các NN là khác nhau.
+ 52 chữ cái: A Z, az
+ 10 chữ số: 0 9
+ Các ký hiệu khác:*, /, +, -, …
Trang 13Giáo trình Kiến trúc máy tính và Hệ
Trang 14Giáo trình Kiến trúc máy tính và Hệ
14
3.3 Phạm trù cú pháp
theo một qui luật nào đó
+ BNF(Backus Naus Form):
<lệnhgán>::=<tên biến>:=<biểu thức>
Trang 15Giáo trình Kiến trúc máy tính và Hệ
nghĩa được khái niệm chương trình đến mức
độ tự có
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Trang 16Giáo trình Kiến trúc máy tính và Hệ
16
3.4 Các qui tắc từ vựng thông dụng
- Cách sử dụng khoảng trống(dấu trắng), dấu
tab(‘\t’), dấu sang dòng(‘\n’)
- Đối với liên kết tự do, có thể sử dụng nhiều
khoảng trống thay vì một khoảng trống
Trang 17Giáo trình Kiến trúc máy tính và Hệ
- Khoảng trống không bắt buộc: số và các
phép toán, tên biến và các phép toán
Ví dụ: x:=x+3*3;
- Cách sử dụng chú thích và xâu ký tự
Trang 18Giáo trình Kiến trúc máy tính và Hệ
- Sinh mã trung gian
- Tối ƣu mã trung gian
- Sinh mã đối tƣợng
Trang 19Giáo trình Kiến trúc máy tính và Hệ
Trang 20Giáo trình Kiến trúc máy tính và Hệ
- Phân tích xem các Token có tuân theo qui tắc
cú pháp của ngôn ngữ không
Trang 21Giáo trình Kiến trúc máy tính và Hệ
Trang 22Giáo trình Kiến trúc máy tính và Hệ
22
4.4 Xử lý lỗi
- CT nguồn vẫn có thể xảy ra lỗi
- Phần xử lý lỗi sẽ thông báo lỗi cho NSD
- Lỗi ở phần nào báo ở phần đó
Trang 23Giáo trình Kiến trúc máy tính và Hệ
23
4.4 Xử lý lỗi
- Có các loại lỗi:
• Lỗi từ vựng (trong Pascal sử dụng biến mà
chƣa khai báo)
• Lỗi cú pháp ((a+5; lỗi thiếu dấu ‘)’ )
• Lỗi ngữ nghĩa (x=3.5; nhƣng khai báo int x)
• Lỗi thực hiện (phép chia 0)
Trang 24Giáo trình Kiến trúc máy tính và Hệ
24
4.5 sinh mã trung gian
- Sau giai đoạn phân tích ngữ nghĩa
- Mã trung gian là một dạng trung gian của CT
nguồn có 2 đặc điểm:
• Dễ đƣợc sinh ra
• Dễ dịch sang ngôn ngữ đích
Trang 25Giáo trình Kiến trúc máy tính và Hệ
25
4.6 Tối ƣu mã trung gian
- Bỏ bớt các lệnh thừa.
- Cải tiến lại mã trung gian để khi sinh mã đối
tƣợng thì thời gian thực thi mã đối tƣợng sẽ ngắn hơn
Trang 26Giáo trình Kiến trúc máy tính và Hệ
4.7 Sinh mã đối tƣợng
- Giai đoạn cuối của trình biên dịch.
- Mã đối tƣợng có thể là mã máy, hợp ngữ hay
một ngôn ngữ khác ngôn ngữ nguồn.
Các pha (giai đoạn) có thể thực hiện song hành
Một vài pha có thể ghép lại thành lƣợt (chuyến)
Một lƣợt sẽ đọc toàn bộ CT nguồn hay một
dạng trung gian của CT nguồn, sau đó ghi kết quả để lƣợt sau đọc và xử lý tiếp.
Trang 27Giáo trình Kiến trúc máy tính và Hệ
V í dụ:
a:=(b+c)*6 5
Bộ PTTV id1:=(id2+id3)*Num4
Bộ PTCP n1 id1 := n2
* n3
id2
Num4 id3
+
Bộ PTNN n1 id1 := n2
* n3 Intoreal(65)
Bộ sinh mã trung gian
Temp1:=intoreal(65) Temp2:=id2+id3 Temp3:=temp2*temp1 Id1:=temp3
Bộ tối ưu sinh mã trung gian
Temp1:=id2+id3 Id1:=temp1*65.0
Bộ sinh mã đối tượng
MovF id2, R1 MovF id3, R2 Add R2, R1 Mult #65.0, R1
Trang 28Giáo trình Kiến trúc máy tính và Hệ
Trang 29Giáo trình Kiến trúc máy tính và Hệ
• 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 hiện 1 token gọi là từ tố tiếp đến
Trang 30Giáo trình Kiến trúc máy tính và Hệ
- Đọ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ỏ các ký tự trống và 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.
Trang 31Giáo trình Kiến trúc máy tính và Hệ
Bộ phân tích
từ vựng
Gửi token Bộ
phân tích
cú pháp Yêu cầu token
Bảng danh biểu
Trang 32Giáo trình Kiến trúc máy tính và Hệ
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
Trang 33Giáo trình Kiến trúc máy tính và Hệ
33
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
Trang 34Giáo trình Kiến trúc máy tính và Hệ
34
3.2 Biểu diễn các hàm chuyển trạng thái
Trang 35Giáo trình Kiến trúc máy tính và Hệ
3.2 Biểu diễn các hàm chuyển trạng thái
- Các cung nối từ trạng thái q sang trạng thái p
có mang các nhãn aΣ, có nghĩa δ(q,a)=p
Trang 36Giáo trình Kiến trúc máy tính và Hệ
36
3.2 Biểu diễn các hàm chuyển trạng thái
Trang 37Giáo trình Kiến trúc máy tính và Hệ
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ái bắt đầu và trạng thái kết thúc.
Trang 38Giáo trình Kiến trúc máy tính và Hệ
38
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.
Trang 39Giáo trình Kiến trúc máy tính và Hệ
39
3.3 Hoạt động của Otomat
- Đọc xong xâu vào đến một trạng thái pF
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 pF
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.
Trang 40Giáo trình Kiến trúc máy tính và Hệ
40
3.4 Ví dụ: Xác định Otomat đoán nhận số nhị phân M(Σ, Q, δ, q0, F)
Trang 41Giáo trình Kiến trúc máy tính và Hệ
41
3.4 Ví dụ: Xác định Otomat đoán nhận số nhị phân
0 trắng
2
Trang 42Giáo trình Kiến trúc máy tính và Hệ
Trang 43Giáo trình Kiến trúc máy tính và Hệ
Trang 44Giáo trình Kiến trúc máy tính và Hệ
Procedure Dockytu(var c:char);
…{Đọc ký tự tiếp, ký tự này luôn luôn được
đọc trước}
Function LoaiKT(c:char):Loaikytu;
…{Cho biết loại của ký tự c}
Procedure Baoloi;
…{Cho một thông báo lỗi}
Procedure Tuvung(var ma:Loaituto;var x:xau); Var i:0 max;
Begin For i:=1 to max do x[i]:=’’;
I:=0;
While loaikytu(kytutiep)=trang do
Dockytu(kytutiep);
Case loaikytu(kytutiep) of Conso: Begin
Repeat I:=i+1;
x[i]:=kytutiep;
Dockytu(kytutiep);
Until Loaikytu(kytutiep)<>conso;
Trang 45Giáo trình Kiến trúc máy tính và Hệ
Ccai: begin
Repeat
If i<max then Begin I:=i+1;
x[i]:=kytutiep;
end;
Dockytu(kytutiep);
Until (loaikytu(kytutiep)<>Ccai) and (loaikytu(kytutiep)<>conso);
Ma:=danhbieu;
End;
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Trang 46Giáo trình Kiến trúc máy tính và Hệ
46
4.1 Phương pháp điều khiển bằng bảng
Var bangchuyen: array[1 6,loaikytu] of 0 6;
Mảng này được nạp dữ liệu như sau:
trang Conso Cham Ttu Ccai
Trang 47Giáo trình Kiến trúc máy tính và Hệ
4.1 Phương pháp điều khiển bằng bảng
Procedure Tuvung(var ma:loaituto; var x:xau);
Trang 48Giáo trình Kiến trúc máy tính và Hệ
48
Gồm các token và các thuộc tính của token
Chỉ số Token Trị từ vựng Các thuộc tính khác 01
Trang 49Giáo trình Kiến trúc máy tính và Hệ
49
- Tổ chức tuần tự: mảng, danh sách liên kết,
danh sách móc nối
- Tổ chức cây tìm kiếm nhị phân
Trang 50Giáo trình Kiến trúc máy tính và Hệ
Trang 51Giáo trình Kiến trúc máy tính và Hệ
Trang 52Giáo trình Kiến trúc máy tính và Hệ
- Độ dài xâu là số các ký hiệu trong xâu
Ký hiệu: độ dài xâu x là |x|
Ví dụ: |01110|=5
Trang 53Giáo trình Kiến trúc máy tính và Hệ
Trang 54Giáo trình Kiến trúc máy tính và Hệ
54
1 Một số vấn đề về ngôn ngữ
1.1 Xâu
- Các phép toán trên xâu
• Ghép tiếp: cho 2 xâu x,y Ghép tiếp của x, y
là x.y hay xy là 1 xâu viết x trước, rồi đến y sau chứ không có dấu cách.
y=0110 xy=010110
Trang 55Giáo trình Kiến trúc máy tính và Hệ
55
1 Một số vấn đề về ngôn ngữ
1.1 Xâu
• Đảo ngƣợc xâu x (x r ): xâu đƣợc viết theo thứ
tự ngƣợc lại của xâu x
Trang 56Giáo trình Kiến trúc máy tính và Hệ
- Các phép toán trên ngôn ngữ
• Vì ngôn ngữ là tập hợp nên có các phép toán
tập hợp: (giao), (hợp), -(hiệu, bù)
Trang 57Giáo trình Kiến trúc máy tính và Hệ
x.x=x 2 ; x.x.x=x 3 ; x 0 =; x i =x i-1 x
L 0 ={}; L i =L i-1 L
- L*=L0L 1L2…; L+ =L 1L2…
Trang 58Giáo trình Kiến trúc máy tính và Hệ
58
1 Một số vấn đề về ngôn ngữ
1.3 Biểu diễn ngôn ngữ
Ngôn ngữ đơn giản
- Phương pháp liệt kê: ngôn ngữ có số xâu là
hữu hạn và có thể xác định được.
Ví dụ: ngôn ngữ là các số tự nhiên nhỏ hơn
20 và lớn hơn 12
L={13, 14, 15, 16, 17, 18, 19}
Trang 59Giáo trình Kiến trúc máy tính và Hệ
1 Một số vấn đề về ngôn ngữ
1.3 Biểu diễn ngôn ngữ
Ngôn ngữ đơn giản
- Phương pháp sử dụng tân từ P(x): ngôn ngữ
Trang 60Giáo trình Kiến trúc máy tính và Hệ
Trang 61Giáo trình Kiến trúc máy tính và Hệ
Trang 62Giáo trình Kiến trúc máy tính và Hệ
62
2 Văn phạm phi ngữ cảnh
Qui ước:
- Ký hiệu kết thúc được viết bằng chữ thường
- Ký hiệu chưa kết thúc được viết bằng chữ in
- Ký hiệu chưa kết thúc nằm bên trái của sản
xuất đầu tiên là ký hiệu bắt đầu.
Trang 63Giáo trình Kiến trúc máy tính và Hệ
63
2 Văn phạm phi ngữ cảnh
2.3 Các khái niệm
Xâu (câu) và dạng câu:
- gọi là xâu khi Σ*
- gọi là dạng câu khi (ΣΔ) *
Trang 64Giáo trình Kiến trúc máy tính và Hệ
Trang 65Giáo trình Kiến trúc máy tính và Hệ
65
2 Văn phạm phi ngữ cảnh
2.3 Các khái niệm
Quan hệ suy dẫn:
- Quan hệ suy dẫn nhiều lần: từ A áp dụng
nhiều sản xuất mới sinh đƣợc
Ký hiệu: A + với AΔ và (ΣΔ)*
- Độ dài suy dẫn: số lần áp dụng các sản xuất
- Độ dài của suy dẫn trực tiếp bằng 1
Trang 66Giáo trình Kiến trúc máy tính và Hệ
66
2 Văn phạm phi ngữ cảnh
2.3 Các khái niệm
Quan hệ suy dẫn:
- Nếu luôn luôn thay thế ký hiệu chưa kết
thúc ở bên trái nhất gọi là suy dẫn trái Tương tự ta có suy dẫn phải
Trang 67Giáo trình Kiến trúc máy tính và Hệ
2 Văn phạm phi ngữ cảnh
2.3 Các khái niệm
Cây suy dẫn: cây thoả mãn các điều kiện:
- Mỗi nút có 1 nhãn: ký hiệu kết thúc hoặc
chƣa kết thúc
- Nhãn của nút gốc: ký hiệu bắt đầu
- Nhãn của nút lá: ký hiệu kết thúc
- Nếu một nút có nhãn A có các nút con của nó
từ trái sang phải có nhãn x1, x2, x3, …xn thì
Trang 68Giáo trình Kiến trúc máy tính và Hệ
68
2 Văn phạm phi ngữ cảnh
2.3 Các khái niệm
Cây suy dẫn
- Suy dẫn trái tạo cây suy dẫn trái.
- Suy dẫn phải tạo cây suy dẫn phải.
- Ví dụ: cho văn phạm phi ngữ cảnh sau:
EE+E | E*E | (E) | a
Vẽ cây suy dẫn trái, phải sinh xâu: a+a*a
(1) (2) (3) (4)
Trang 69Giáo trình Kiến trúc máy tính và Hệ
69
2 Văn phạm phi ngữ cảnh
2.3 Các khái niệm
Văn phạm G=(Σ, Δ, s, p) sản sinh ra ngôn ngữ L(G)={wΣ * } Ta nói G là văn phạm
đơn nghĩa (không nhập nhằng) nếu với mỗi xâu wL(G) chỉ có một cây suy dẫn duy
nhất, trái lại thì G là văn phạm nhập nhằng.
Trang 70Giáo trình Kiến trúc máy tính và Hệ
70
2 Văn phạm phi ngữ cảnh
2.3 Các khái niệm
Văn phạm G1 và G2 được gọi là tương đương bất kỳ xâu x được sinh ra từ G1 thì G2 cũng sinh ra được và ngược lại
Trang 71Giáo trình Kiến trúc máy tính và Hệ
71
2 Văn phạm phi ngữ cảnh
2.3 Các khái niệm
Văn phạm đệ qui
Cho văn phạm PNC G, với A Δ mà
A+A thì A gọi là ký hiệu đệ qui, G gọi
là văn phạm đệ qui Với , (ΣΔ)*
- Nếu =: đệ qui trái
- Nếu =: đệ qui phải
Trang 72Giáo trình Kiến trúc máy tính và Hệ
Trang 73Giáo trình Kiến trúc máy tính và Hệ
Trang 74Giáo trình Kiến trúc máy tính và Hệ
Trang 75Giáo trình Kiến trúc máy tính và Hệ
Trang 76Giáo trình Kiến trúc máy tính và Hệ
76
3 Đại cương về phân tích cú pháp
3.2 Phương pháp giải quyết
Trang 77Giáo trình Kiến trúc máy tính và Hệ
77
3 Đại cương về phân tích cú pháp
3.2 Phương pháp giải quyết
Bắt đầu từ x áp dụng các suy dẫn ngược 1
sản xuất để thu S: PTCP từ dưới lên
- Nếu thu được S: x viết dúng cú pháp của văn
phạm G
- Nếu k0 thu được S: x viết k0 đúng cú pháp
của văn phạm G
Trang 78Giáo trình Kiến trúc máy tính và Hệ
3 Đại cương về phân tích cú pháp
3.2 Phương pháp giải quyết
Ví dụ: Cho văn phạm PNC G sau:
SB BR | (B) R E=E E a | b | (E+E) Xâu x: (a=(b+a))
Hỏi xâu x có viết đúng cú pháp của G k0?
(1)
(2) (3)
(4)
(5) (6) (7)
Trang 79Giáo trình Kiến trúc máy tính và Hệ
79
3 Đại cương về phân tích cú pháp
3.2 Phương pháp giải quyết
Trang 80Giáo trình Kiến trúc máy tính và Hệ
80
3 Đại cương về phân tích cú pháp
3.2 Phương pháp giải quyết
Trang 81Giáo trình Kiến trúc máy tính và Hệ
3 Đại cương về phân tích cú pháp
3.2 Phương pháp giải quyết
Ví dụ:
Phương pháp từ dưới lên
Vậy xâu x viết đúng cú pháp của G
Trang 82Giáo trình Kiến trúc máy tính và Hệ
82
3 Đại cương về phân tích cú pháp
3.3 Sơ đồ chung giải thuật PTCP từ dưới lên
Trang 83Giáo trình Kiến trúc máy tính và Hệ
3 Đại cương về phân tích cú pháp
3.3 Sơ đồ chung giải thuật PTCP từ dưới lên
Trang 84Giáo trình Kiến trúc máy tính và Hệ
84
3 Đại cương về phân tích cú pháp
3.3 Sơ đồ chung giải thuật PTCP từ dưới lên
Thuật toán:
Else
If (cán xuất hiện ở đỉnh stack) Then
- Lấy cán ra khỏi stack
- Đẩy A vào stack với A
Trang 85Giáo trình Kiến trúc máy tính và Hệ
3 Đại cương về phân tích cú pháp
3.3 Sơ đồ chung giải thuật PTCP từ dưới lên
Thuật toán:
Else
If (Buffer<>$) Then D/c k/h ở đỉnh của Buffer Stack Else
-Báo lỗi x không đúng cú pháp VP G -Dừng vòng lặp
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Trang 86Giáo trình Kiến trúc máy tính và Hệ
86
3 Đại cương về phân tích cú pháp
3.3 Sơ đồ chung giải thuật PTCP từ dưới lên
Ví dụ: Sif DK then L ;
DK true | false
L write(ID) | read(ID)
ID a | b Xâu x: if true then read(a); có đúng cú pháp
vp trên?
Trang 87Giáo trình Kiến trúc máy tính và Hệ
87
(0) $ if true then read(a); $ D/c
(2) $if true then read(a);$ R/g DKtrue
3 Đại cương về phân tích cú pháp
3.3 Sơ đồ chung giải thuật PTCP từ dưới lên
Ví dụ:
Trang 88Giáo trình Kiến trúc máy tính và Hệ
88
(7) $if DK then read(a );$ R/g IDa
(9) $if DK then read(ID) ;$ R/g Lread(ID)
3 Đại cương về phân tích cú pháp
3.3 Sơ đồ chung giải thuật PTCP từ dưới lên
Ví dụ:
Trang 89Giáo trình Kiến trúc máy tính và Hệ
3 Đại cương về phân tích cú pháp
3.3 Sơ đồ chung giải thuật PTCP từ dưới lên
Ví dụ:
Trang 90Giáo trình Kiến trúc máy tính và Hệ
3 Đại cương về phân tích cú pháp
3.4 Sơ đồ chung giải thuật PTCP từ trên xuống
Trang 91Giáo trình Kiến trúc máy tính và Hệ
91
3 Đại cương về phân tích cú pháp
3.4 Sơ đồ chung giải thuật PTCP từ trên xuống