ไมโครโปรเซสเซอร์ - โหมดกำหนดแอดเดรส 8086

วิธีต่างๆที่ซอร์สถูกแสดงในคำสั่งเรียกว่า addressing modes. มี 8 โหมดการกำหนดแอดเดรสที่แตกต่างกันในการเขียนโปรแกรม 8086 -

โหมดกำหนดแอดเดรสทันที

โหมดการกำหนดแอดเดรสซึ่งตัวถูกดำเนินการข้อมูลเป็นส่วนหนึ่งของคำสั่งนั้นเรียกว่าโหมดกำหนดแอดเดรสทันที

ตัวอย่าง

MOV CX, 4929 H, ADD AX, 2387 H,  MOV AL, FFH

ลงทะเบียนโหมดการกำหนดที่อยู่

หมายความว่ารีจิสเตอร์เป็นแหล่งที่มาของตัวถูกดำเนินการสำหรับคำสั่ง

ตัวอย่าง

MOV CX, AX   ; copies the contents of the 16-bit AX register into  
             ; the 16-bit CX register),  
ADD BX, AX

โหมดกำหนดแอดเดรสโดยตรง

โหมดการกำหนดแอดเดรสซึ่งแอดเดรสที่มีประสิทธิภาพของตำแหน่งหน่วยความจำถูกเขียนโดยตรงในคำสั่ง

ตัวอย่าง

MOV AX, [1592H], MOV AL, [0300H]

ลงทะเบียนโหมดการกำหนดแอดเดรสทางอ้อม

โหมดกำหนดแอดเดรสนี้ช่วยให้สามารถส่งข้อมูลไปยังตำแหน่งหน่วยความจำใด ๆ ผ่านที่อยู่ออฟเซ็ตที่อยู่ในรีจิสเตอร์ต่อไปนี้: BP, BX, DI & SI

ตัวอย่าง

MOV AX, [BX]  ; Suppose the register BX contains 4895H, then the contents  
              ; 4895H are moved to AX 
ADD CX, {BX}

ตามโหมดการกำหนดที่อยู่

ในโหมดการกำหนดแอดเดรสนี้แอดเดรสออฟเซ็ตของตัวถูกดำเนินการจะได้รับจากผลรวมของเนื้อหาของรีจิสเตอร์ BX / BP และการกระจัด 8 บิต / 16 บิต

ตัวอย่าง

MOV DX, [BX+04], ADD CL, [BX+08]

โหมดกำหนดแอดเดรสที่จัดทำดัชนี

ในโหมดการกำหนดแอดเดรสนี้จะพบแอดเดรสออฟเซ็ตของตัวถูกดำเนินการโดยการเพิ่มเนื้อหาของการลงทะเบียน SI หรือ DI และการกระจัด 8 บิต / 16 บิต

ตัวอย่าง

MOV BX, [SI+16], ADD AL, [DI+16]

ตามดัชนีที่อยู่โหมด

ในโหมดการกำหนดแอดเดรสนี้แอดเดรสออฟเซ็ตของตัวถูกดำเนินการจะคำนวณโดยการรวมรีจิสเตอร์ฐานเข้ากับเนื้อหาของรีจิสเตอร์ดัชนี

ตัวอย่าง

ADD CX, [AX+SI], MOV AX, [AX+DI]

ตามดัชนีด้วยโหมดการกระจัด

ในโหมดการกำหนดแอดเดรสนี้ออฟเซ็ตของตัวถูกดำเนินการจะคำนวณโดยการเพิ่มเนื้อหารีจิสเตอร์พื้นฐาน ดัชนีจะลงทะเบียนเนื้อหาและการกระจัด 8 หรือ 16 บิต

ตัวอย่าง

MOV AX, [BX+DI+08], ADD CX, [BX+SI+16]