Natkub
16-06-2007, 12:31 PM
[hide=1]//-----------------------------------------------------------------------------------
//-----------------------------------------------------------------------------------
[SIZE=2]# การอ้างแอดเดรสของไมโครโปรเซสเซอร์ # </span></span>
CPU สามารถเข้าถึงหรืออ้างตำแหน่งของข้อมูลได้หลายทาง ประเภทของการอ้างตำแหน่งที่เก็บข้อมูล เรียกว่า “Addressing Mode” โดยทั่วไปการอ้างแอดเดรสมีทั้งแบบติดต่อกับหน่วยความจำ และไม่ติดต่อกับหน่วยความจำ จากตัวอย่างคำสั่ง MOV
โครงสร้างคำสั่งทั่วไป
MOV Destination,Source
เป็นการนำข้อมูลจากตำแหน่งต้นทางไปยังปลายทาง โดย Destination เป็นตัวกระทำ1(Operand1) และ Source เป็นตัวกระทำ2 (Operand2)
การอ้างตำแหน่งข้อมูลที่นิยมกันมี 7 โหมด
แอดเดรสซิ่งแบบไม่ติดต่อหน่วยความจำ(1-2)
1.Immediate addressing
2.Register addressing
แอดเดรสซิ่งแบบติดต่อหน่วยความจำ(3-7)
3.Direct addressing
4.Register indirect addressing
5.Base relative addressing
6.Indexed addressing
7.Base relative indexed addressing
//-----------------------------------------------------------------------------------
1.Immediate Addressing Mode
- เป็นการติดต่อข้อมูลแบบค่าคงที่ขนาด 8 บิตหรือ 16 บิต
- ค่าคงที่จะตามหลังรหัสคำสั่ง (Opcode)
- มักใช้ในการกำหนดค่าให้กับรีจิสเตอร์ หรือหน่วยความจำ
- ไม่สามารถใช้เป็นโอเปอร์แรนด์ปลายทางได้
- ค่าของเลข 16 บิต
** แบบคิดเครื่องหมายจะมีค่าอยู่ระหว่าง -32768 (8000H) ถึง 32767 (7FFFH)
** แบบไม่คิดเครื่องหมายจะมีค่าอยู่ระหว่าง 0-65535 (0FFFFH)
- ค่าของเลข 8 บิต
** แบบคิดเครื่องหมายจะมีค่าอยู่ระหว่าง -128 (80H) ถึง 127 (7FH)
** แบบไม่คิดเครื่องหมายจะมีค่าอยู่ระหว่าง 0-255 (0FFH)
[code]ตัวอย่าง
MOV
//-----------------------------------------------------------------------------------
[SIZE=2]# การอ้างแอดเดรสของไมโครโปรเซสเซอร์ # </span></span>
CPU สามารถเข้าถึงหรืออ้างตำแหน่งของข้อมูลได้หลายทาง ประเภทของการอ้างตำแหน่งที่เก็บข้อมูล เรียกว่า “Addressing Mode” โดยทั่วไปการอ้างแอดเดรสมีทั้งแบบติดต่อกับหน่วยความจำ และไม่ติดต่อกับหน่วยความจำ จากตัวอย่างคำสั่ง MOV
โครงสร้างคำสั่งทั่วไป
MOV Destination,Source
เป็นการนำข้อมูลจากตำแหน่งต้นทางไปยังปลายทาง โดย Destination เป็นตัวกระทำ1(Operand1) และ Source เป็นตัวกระทำ2 (Operand2)
การอ้างตำแหน่งข้อมูลที่นิยมกันมี 7 โหมด
แอดเดรสซิ่งแบบไม่ติดต่อหน่วยความจำ(1-2)
1.Immediate addressing
2.Register addressing
แอดเดรสซิ่งแบบติดต่อหน่วยความจำ(3-7)
3.Direct addressing
4.Register indirect addressing
5.Base relative addressing
6.Indexed addressing
7.Base relative indexed addressing
//-----------------------------------------------------------------------------------
1.Immediate Addressing Mode
- เป็นการติดต่อข้อมูลแบบค่าคงที่ขนาด 8 บิตหรือ 16 บิต
- ค่าคงที่จะตามหลังรหัสคำสั่ง (Opcode)
- มักใช้ในการกำหนดค่าให้กับรีจิสเตอร์ หรือหน่วยความจำ
- ไม่สามารถใช้เป็นโอเปอร์แรนด์ปลายทางได้
- ค่าของเลข 16 บิต
** แบบคิดเครื่องหมายจะมีค่าอยู่ระหว่าง -32768 (8000H) ถึง 32767 (7FFFH)
** แบบไม่คิดเครื่องหมายจะมีค่าอยู่ระหว่าง 0-65535 (0FFFFH)
- ค่าของเลข 8 บิต
** แบบคิดเครื่องหมายจะมีค่าอยู่ระหว่าง -128 (80H) ถึง 127 (7FH)
** แบบไม่คิดเครื่องหมายจะมีค่าอยู่ระหว่าง 0-255 (0FFH)
[code]ตัวอย่าง
MOV