M UC LU ÛÛ
3.2.4 Tính thứ bậc của tốn tử
Chúng ta nĩi ră ng tốn t nh n cĩ th ï b ûc cao h n tốn tị ử â ư â ơ ử c üng n u * l y các tốn hạng cu a nĩ tr ïc tốn t +. Trong sơ ế ấ í ươ ử ố hỏc phép nh n va phép chia cĩ th ï b ûc cao h n phép c üng vaâ ì ư â ơ ơ ì phép tr .ừ
a. Cú pháp cho biểu thức
Văn phạm cho các bi u th ïc s học cĩ th đ üc x y d ûngể ư ố ể ươ â ư t m üt ba ng trình ba y tính k t h üp va th ï b ûc cu a tốn t .ừ ơ í ì ế ơ ì ư â í ử Chúng ta bă t đ u v ïi b n tốn t s học th ng th ng va m ütõ ầ ơ ố ử ố ơ ườ ì ơ ba ng th ï b ûc, trình ba y các tốn t theo th ï b ûc nga y ca ngí ư â ì ử ư â ì ì cao, các tốn t cĩ cu ng th ï b ûc tr n m üt ha ng.ử ì ư â ở ê ơ ì
k t h üp trái: * /ế ơ
Chúng ta tạo ra hai ch a t ûn ư â expr va ì term cho hai m ïc th ïư ư b ûc va m üt ch a t ûn â ì ơ ư â factor n ỵa đ tạo ra nh ỵng đ n vị c ba nư ể ư ơ ơ í cho bi u th ïc. Các đ n vị c ba n hi ûn cĩ trong bi u th ïc la cácể ư ơ ơ í ê ể ư ì ký số(digit) va các bi u th ïc cĩ đĩng m ngoặc đ n.ì ể ư ở ơ
factor → digit| (expr)
B y gi ta xét đ n tốn t hai ng i * va / v ïi th ï b ûc cao nh t.â ờ ế ử ơ ì ơ ư â ấ B i vì nh ỵng tốn t na y cĩ tính k t h üp trái, lu ût sinh cu aở ư ử ì ế ơ â í chúng t ng t û nh lu ût sinh cho các ươ ư ư â list(3.1) v ïi tính k tơ ế h üp trái.ơ
term → term * factor
|term / factor |factor
T ng t û, ươ ư expr sinh ra danh sách(list) các termđ üc ph n cáchươ â b i tốn t c üng va trở ử ơ ì ừ
expr → expr + term
|expr - term |term
Do v ûy chúng ta thu đ üc văn phạm sauâ ươ
expr → expr + term | expr - term | term
term → term * factor | term / factor | factor
factor → digit | (expr)
Văn phạm na y x lý bi u th ïc nh m üt danh sách các ì ử ể ư ư ơ term
đ üc ph n cách b i d u * hoặc /. B t ky m üt bi u th ïc na o cĩươ â ở ấ ấ ì ơ ể ư ì đĩng m ngoặc đ u la ở ề ì factor, vì th v ïi các d u ngoặc chúngế ơ ấ ta cĩ th x y d ûng các bi u th ïc tu y nghi nhi u c p l ng va oể â ư ể ư ì ề ấ ồ ì nhau.
b. Cú pháp các câu lệnh
T khĩa cho phép chúng ta nh ûn ra các c u l ûnh trong ph nừ â â ê ầ l ïn các ng n ng ỵỵơ ơ ư
l ûp trình. T t ca mọi c u l ûnh đ üc x y d ûng cho ng n ng ỵâ ấ í â ê ươ â ư ơ ư n Gia n đ u bă t đ u bă ng m üt t khĩa ngoại tr l ûnh gán
Đơ í ề õ ầ ị ơ ừ ừ ê
va l i gọi ha m.ì ờ ì
Ví dụ:
M üt đoạn văn phạm đ üc x y d ûng cho cú pháp c u l ûnhơ ươ â ư â ê n Gia n nh sau:
Đơ í ư
| nếu bt_logic thì lệnh
| nếu bt_logic thì lệnh nếu_khơng lệnh
| trong_khi bt_logic lặp lệnh
D ûa va o nguy n tă c na y chúng ta cĩ th x y d ûng cú phápư ì ê õ ì ể â ư cho bi u th ïc s học, du ng hai ký hi ûu ch a k t thúc ể ư ố ì ê ư ế expr vaì
term cho hai m ïc u ti n,ư ư ê term cho * va /, ì expr cho + va -. Ký hi ûuì ê ch a k t thúc ư ế factor sinh ra cho các bi u th ïc c ba n.ể ư ơ í
expr → expr + term expr - term term
term → term * factor term / factor factor
factor → digit (expr)