Friday, July 17, 2015

Precedence rule และ Associativity

Precedence rule และ Associativity

Precedence rule คือกฎที่กำหนดความสำคัญของตัวดำเนินการ (operators)  ซึ่งในการประเมินผลนิพจน์จะประเมินผลนิพจน์ตามความสำคัญของตัวดำเนินการ  อะไรสำคัญก่อนก็จะถูกดำเนินการก่อน และอะไรสำคัญน้อยจะถูกดำเนินการเป็นลำดับถัดไป

Associativity คือการพิจารณาว่าในกรณีที่ตัวดำเนินการมีความสำคัญเท่ากันนั้น  จะประเมินผลอย่างไร เช่น ประเมินตามลำดับของตัวดำเนินการจากซ้ายมือไปขวามือหรือจากขวามือไปซ้ายมือ ภาษาแต่ละภาษามีการออกแบบที่แตกต่างกันได้ ภาษาส่วนใหญ่เลือกกำหนดการดำเนินการจากซ้ายมือไปขวามือ
เช่น
A = B + C * 10 / 40
ถ้าความสำคัญของตัวดำเนินการจากสำคัญมากไปสำคัญน้อยคือ
* /,
 +
=
และ Associativity กำหนดให้ดำเนินการจากซ้ายไปขวา
การประเมินผลนิพจน์คือ
C * 10 -> ผลลัพธ์1
ผลลัพธ์1 / 40 -> ผลลัพธ์2
B +   ผลลัพธ์2 ->  ผลลัพธ์3
ผลลัพธ์3 -> A
หรือ 
(A = (B + ((C * 10)1 /40 )234

[ทำแบบฝึกหัด]

No comments:

Post a Comment