ย้อนกลับสัญลักษณ์โปแลนด์ (RPN)

ผู้เขียน: John Stephens
วันที่สร้าง: 28 มกราคม 2021
วันที่อัปเดต: 18 พฤษภาคม 2024
Anonim
droid48 - HP 48 Scientific Calculator Emulator - Reverse Polish Notation
วิดีโอ: droid48 - HP 48 Scientific Calculator Emulator - Reverse Polish Notation

เนื้อหา

คำจำกัดความ - Reverse Polish Notation (RPN) หมายถึงอะไร

Reverse Polish notation (RPN) เป็นวิธีการถ่ายทอดนิพจน์ทางคณิตศาสตร์โดยไม่ต้องใช้ตัวคั่นเช่นวงเล็บและวงเล็บ ในสัญกรณ์นี้ผู้ประกอบการปฏิบัติตามตัวถูกดำเนินการจึงไม่จำเป็นต้องวงเล็บสำหรับการกำหนดลำดับความสำคัญการประเมินผล การดำเนินการจะอ่านจากซ้ายไปขวา แต่การดำเนินการจะดำเนินการทุกครั้งที่ถึงตัวดำเนินการและใช้ตัวเลขสองตัวสุดท้ายเป็นตัวถูกดำเนินการเสมอ สัญกรณ์นี้เหมาะสำหรับคอมพิวเตอร์และเครื่องคิดเลขเนื่องจากมีตัวอักษรน้อยลงในการติดตามและการดำเนินการที่น้อยลงในการดำเนินการ


ย้อนกลับสัญกรณ์โปแลนด์เป็นที่รู้จักกันว่าสัญกรณ์ postfix

ข้อมูลเบื้องต้นเกี่ยวกับ Microsoft Azure และ Microsoft Cloud | ในคู่มือนี้คุณจะได้เรียนรู้ว่าการประมวลผลแบบคลาวด์คืออะไรและ Microsoft Azure สามารถช่วยคุณในการโยกย้ายและดำเนินธุรกิจจากคลาวด์อย่างไร

Techopedia อธิบาย Reverse Polish Notation (RPN)

ตรงกันข้ามโปแลนด์สัญกรณ์ถูกเสนอโดย Burks, Warren and Wright ในปี 1954 และตั้งชื่อเพราะมันเป็นเพียงการย้อนกลับของสัญกรณ์โปแลนด์ (สัญกรณ์คำนำหน้า), คิดค้นโดยนักตรรกวิทยาชาวโปแลนด์ Jan Lukasiewicz ซึ่งทำให้ผู้ปฏิบัติงาน ในทศวรรษที่ 1960 ได้มีการสร้างอัตชีวประวัติโดยอิสระอีกครั้งโดย Dijkstra และ F.L Bauer สำหรับลดจำนวนครั้งในการเข้าถึงหน่วยความจำคอมพิวเตอร์และเพิ่มประสิทธิภาพ มันใช้ประโยชน์จากสแต็กของคอมพิวเตอร์เพื่อจัดเก็บตัวถูกดำเนินการของมันก่อนที่จะดำเนินการประกอบการ

RPN นำไปสู่การคำนวณที่เร็วขึ้นด้วยเหตุผลสองสามประการ หนึ่งคือมีข้อมูลน้อยในการจัดเก็บ ดังนั้นแทนที่จะต้องเก็บอักขระเก้าตัวสำหรับนิพจน์ ((5 - 3) * 2) คอมพิวเตอร์ที่ใช้ RPN จะต้องเก็บอักขระห้าตัวด้วยนิพจน์ 5 3 - 2 * และเนื่องจากมีจำนวนตัวอักษรในการประมวลผลน้อยลงการประมวลผลจึงเร็วขึ้น


ดังนั้นในคอมพิวเตอร์ที่ใช้ RPN การประเมินผลของนิพจน์ 5 1 - 3 * จะเป็นดังนี้:

  1. กด 5 ลงในสแต็ก นี่คือค่าแรก
  2. กด 1 ลงในสแต็ก นี่คือค่าที่สองและอยู่ในตำแหน่งเหนือ 5
  3. ใช้การดำเนินการลบโดยรับสองตัวถูกดำเนินการจากสแต็ก (1 และ 5) ค่าสูงสุด (1) จะถูกลบออกจากค่าที่อยู่ด้านล่าง (5) และผลลัพธ์ (4) จะถูกเก็บไว้กลับไปที่สแต็ก 4 ตอนนี้เป็นค่าเดียวในสแต็กและอยู่ด้านล่าง
  4. กด 3 ลงในสแต็ก ค่านี้อยู่ในตำแหน่งที่สูงกว่า 4 ในสแต็ก
  5. ใช้การดำเนินการคูณโดยนำตัวเลขสองตัวสุดท้ายออกจากสแต็กและคูณพวกเขา ผลลัพธ์จะถูกวางกลับเข้าไปในกองซ้อน หลังจากการดำเนินการนี้สแต็กตอนนี้มีหมายเลข 12 เท่านั้น