ทำความเข้าใจบทบาทของ RAX ในการเขียนโปรแกรมภาษาแอสเซมบลี
`rax` คือรีจิสเตอร์ในสถาปัตยกรรมชุดคำสั่ง x86-64 (ISA) ย่อมาจาก "ที่อยู่ลงทะเบียน" และใช้เพื่อจัดเก็บที่อยู่ของตำแหน่งหน่วยความจำ ในภาษาแอสเซมบลี `rax` สามารถใช้เป็นปลายทางหรือตัวถูกดำเนินการต้นทางสำหรับคำสั่งส่วนใหญ่ที่ปรับเปลี่ยนหน่วยความจำ ตัวอย่างเช่น คำสั่ง `mov` สามารถใช้เพื่อย้ายข้อมูลระหว่างหน่วยความจำและรีจิสเตอร์ และ `rax` สามารถใช้เป็นปลายทางหรือรีจิสเตอร์ต้นทางได้ ต่อไปนี้คือตัวอย่างบางส่วนของวิธีใช้ `rax` ในภาษาแอสเซมบลี:
* `mov rax, qword [address]` ย้ายค่าที่อยู่ `address` ไปยัง `rax` register.
* `mov [address], rax` ย้ายค่าใน `rax` register ไปยังที่อยู่ `address` .
* `เพิ่ม rax, qword [address]` เพิ่มค่าที่ที่อยู่ `address` ให้กับ `rax` register.
* `หรือ rax, qword [address]` จะตั้งค่า `rax` register ให้เป็นค่าที่ ที่อยู่ `address` หรือตั้งค่าเป็น 0 หากที่อยู่ไม่ถูกต้อง โปรดทราบว่า `rax` เป็นรีจิสเตอร์แบบ 64 บิต จึงสามารถเก็บค่าได้ทั้งแบบ 32 บิตและ 64 บิต อย่างไรก็ตาม เมื่อทำงานกับค่า 32 บิต คุณอาจจำเป็นต้องใช้รีจิสเตอร์อื่น เช่น `eax`



