งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

1 Addressing Modes 2 Addressing การแอดเดรสซิ่ง เป็นวิธีการที่จะเข้าถึง ข้อมูลในที่ต่าง ๆ ซึ่งการแอดเดรสที่ต่างกัน จะทำให้การเขียนโปรแกรมมี

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "1 Addressing Modes 2 Addressing การแอดเดรสซิ่ง เป็นวิธีการที่จะเข้าถึง ข้อมูลในที่ต่าง ๆ ซึ่งการแอดเดรสที่ต่างกัน จะทำให้การเขียนโปรแกรมมี"— ใบสำเนางานนำเสนอ:

1 1 Addressing Modes

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

3 3 โครงสร้างคำสั่งทั่วไป คำสั่งโอเปอร์แลนด์โอเปอร์แลนด์ ปลายทาง ต้นทาง Instruction Destination Source MOVAX,BX ADD AND OR

4 4 Addressing Modes 1.Immediate addressing 2.Register addressing 3.Direct addressing 4.Register indirect addressing 5.Base relative addressing 6.Indexed addressing 7.Base relative indexed addressing

5 5 การแอดเดรสซิ่งแบบไม่ติดต่อหน่วยความจำ l Immediate addressing l Register addressing

6 6 การแอดเดรสซิ่งแบบติดต่อหน่วยความจำ l Direct addressing l Register indirect addressing l Base relative addressing l Indexed addressing l Base relative indexed addressing

7 7 1.Immediate Addressing Mode l เป็นการติดต่อข้อมูลแบบค่าคงที่ขนาด 8 บิตหรือ 16 บิต l ค่าคงที่จะตามหลังรหัสคำสั่ง (Opcode) l มักใช้ในการกำหนดค่าให้กับรีจิสเตอร์ หรือ หน่วยความจำ l ไม่สามารถใช้เป็นโอเปอร์แรนด์ปลายทาง ได้

8 8 Immediate... l ค่าของเลข 16 บิต แบบคิดเครื่องหมายจะมีค่าอยู่ระหว่าง (8000H) ถึง (7FFFH) แบบไม่คิดเครื่องหมายจะมีค่าอยู่ระหว่าง (0FFFFH)

9 9 Immediate... l ค่าของเลข 8 บิต แบบคิดเครื่องหมายจะมีค่าอยู่ระหว่าง -128 (80H) ถึง 127 (7FH) แบบไม่คิดเครื่องหมายจะมีค่าอยู่ระหว่าง (0FFH)

10 10 Immediate... l ตัวอย่าง MOV AL, 44 MOV AX, 44H MOV DI, 0 MOV BX, ”AB” MOV CL, B MOV Byte ptr[1234H], 12

11 11 2.Register Addressing Mode l เป็นการติดต่อข้อมูลในรีจิสเตอร์ 8 บิต AH, AL, BH, BL, CH, CL, DH, DL l หรือรีจิสเตอร์ 16 บิต AX, BX, CX, DX, SI, DI, SP, BP, CS, DS, ES, SS

12 12 Register... l สามารถใช้รีจิสเตอร์เป็นโอเปอร์แรนด์ต้น ทางหรือปลายทางได้ l ยกเว้นในกรณีที่ใช้ CS, DS, SS, ES เป็นโอเปอร์แรนด์ปลายทาง ต้อง กำหนดให้ AX เป็นโอเปอร์แรนด์ต้นทาง เท่านั้น

13 13 Register... l ตัวอย่าง MOV AL, BL MOV AX, BX MOV SP, BP MOV DS, AX MOV BX, DS

14 14 3.Direct Addressing Mode l เป็นการติดต่อข้อมูลไปที่หน่วยความจำ โดยระบุตำแหน่งที่จะติดต่อลงไปใน เครื่องหมาย [ ] โดยตรง

15 15 Direct... l ตัวอย่าง MOV AL, NUMB MOV BX, SHOW MOV NAME, BL MOV BP, DATA1 MOV AX, [1234H]

16 16 4.Register Indirect Addressing Mode l เป็นการติดต่อข้อมูลในหน่วยความจำโดย ใช้การกำหนดตำแหน่งของข้อมูลที่จะ ติดต่อลงในรีจิสเตอร์ BX, BP, SI หรือ DI แทนการกำหนดค่าตรง ๆ ในวงเล็บ l ใช้ในการโปรแกรมเพื่อจัดการกับข้อมูล เป็นกลุ่ม

17 17 Register Indirect... l ตัวอย่าง MOV AX, [BX] MOV BL, [BP] MOV [SI], DX MOV [DI], DL MOV Byte ptr[BX], 5

18 18 5.Base Relative Addressing Mode l เป็นการติดต่อข้อมูลในหน่วยความจำโดย ใช้การกำหนดตำแหน่งของ รีจิสเตอร์เบส (BX,BP) บวกกับ ค่าสัมพัทธ์ (Relative) l ค่าสัมพัทธ์เป็นได้ทั้งค่าบวกและลบ l มีขนาดได้ทั้ง 8 บิต และ 16 บิต

19 19 Base Relative... l BX,BP : ใช้ในการเก็บจุดเริ่มต้นของตาราง l ค่าสัมพัทธ์ (Relation) : ชี้ข้อมูลในตาราง

20 20 Base Relative... l เมื่อใช้ BX เป็นตัวอ้างอิงจะเป็นการติดต่อ ไปยัง Data Segment ต้องใช้ DS หา Physical address l เมื่อใช้ BP เป็นตัวอ้างอิงจะเป็นการติดต่อ ไปยัง Stack Segment ต้องใช้ SS หา Physical address

21 21 Base Relative... l MOV AX,[BX+2] Physical add = DS x 10H + BX + 2 l MOV [BP-100],AX Physical add = SS x 10H + BP - 100

22 22 Base Relative... l ตัวอย่าง MOV AX, [BX+100H] MOV BL, ARRY[SI] MOV [BX+2], DX MOV TABLE[BP], DL

23 23 6.Indexed Addressing Mode l เป็นการติดต่อข้อมูลในหน่วยความจำโดย การอ้างอิงผ่าน รีจิสเตอร์อินเด็กซ์ (SI,DI) รวมกับ ค่าขจัด (Displacement) l SI,DI : เก็บดัชนีในการชี้ข้อมูลในตาราง l ค่าขจัด : ชี้จุดเริ่มต้นตาราง

24 24 Indexed... l MOV AL,1000[SI] Physical add = DS x 10H SI l MOV BL,TABLE[DI] Physical add = DS x 10H + TABLE + DI

25 25 Indexed... l ตัวอย่าง MOV AX, [1000+DI] MOV BL, 1000[SI] MOV [TABLE+SI], DX MOV TABLE[DI], DL

26 26 7.Base Relative Indexed Addressing Mode l เป็นการติดต่อข้อมูลในหน่วยความจำโดย การอ้างอิงผ่าน รีจิสเตอร์อินเด็กซ์ (SI,DI) รีจิสเตอร์เบส (BX,BP) และค่าสัมพัทธ์ (Relative)

27 27 l MOV AL,1000[BX+SI] Physical add = DSx10H+1000+BX+SI l MOV BL,TABLE[BP+DI] Physical add = SSx10H+TABLE+BP+DI Base Relative Indexed...

28 28 Base Relative Indexed... l ตัวอย่าง MOV AX, [BX+DI+20H] MOV BL, HOME[BP+SI] MOV NAME[BX+SI+2], DX MOV LIST[BP+DI], DL


ดาวน์โหลด ppt 1 Addressing Modes 2 Addressing การแอดเดรสซิ่ง เป็นวิธีการที่จะเข้าถึง ข้อมูลในที่ต่าง ๆ ซึ่งการแอดเดรสที่ต่างกัน จะทำให้การเขียนโปรแกรมมี

งานนำเสนอที่คล้ายกัน


Ads by Google