8. การ push และ pop บน stack

8.1. ข้อตกลงในเอกสาร

คำสั่ง push() และ pop() ยอมรับอาร์กิวเมนต์เป็น register set ที่ประกอบด้วยชุดย่อย หรืออาจทั้งหมด ของรีจิสเตอร์วัตถุประสงค์ทั่วไป R0-R12 และ link register (lr หรือ R14) เช่นเดียวกับ Python set ลำดับที่ระบุรีจิสเตอร์ไม่มีความสำคัญ ดังนั้นในตัวอย่างต่อไปนี้ คำสั่ง pop() จะกู้คืน R1, R7 และ R8 ให้มีค่าก่อนหน้า push():

  • push({r1, r8, r7}) บันทึกสามรีจิสเตอร์บน stack

  • pop({r7, r1, r8}) กู้คืนรีจิสเตอร์เหล่านั้น

8.2. การดำเนินการบน stack

  • push({regset}) push ชุดรีจิสเตอร์ขึ้น stack

  • pop({regset}) กู้คืนชุดรีจิสเตอร์จาก stack