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

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

Addressing Modes ธนวัฒน์ แซ่ เอียบ. Addressing เราสามารถพบ operand ได้ที่ไหน ? 1. 2. 3.

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


งานนำเสนอเรื่อง: "Addressing Modes ธนวัฒน์ แซ่ เอียบ. Addressing เราสามารถพบ operand ได้ที่ไหน ? 1. 2. 3."— ใบสำเนางานนำเสนอ:

1 Addressing Modes ธนวัฒน์ แซ่ เอียบ

2 Addressing เราสามารถพบ operand ได้ที่ไหน ?

3 Addressing ฟิลด์ที่ใช้ระบุ address ใน instruction มีขนาด เล็ก เนื่องจากพื้นที่ส่วนหนึ่งสูญเสียให้กลับส่วน ที่เป็น opcode **** opc ode operand (address field) locati on cont ent

4 Addressing ดังนั้นต้องมีเทคนิคที่สามารถอ้างถึง location ในหน่วยความจำทั้งหมดได้ ซึ่งมีเทคนิค ดังต่อไปนี้ –Immediate –Direct –Indirect –Register สถาปัตยกรรมทั้งหมดของคอมพิวเตอร์มี addressing mode มากกว่า 1 โหมดขึ้นไป Addressing mode กำหนดได้ที่ opcode ใน ส่วนที่เรียกว่า mode field

5 Immediate Addressing เป็นรูปแบบที่ง่ายที่สุดของ addressing นั่นคือ operand ปรากฏอยู่ใน instruction OPERAND = A ส่วนมากใช้นิยามค่าคงที่หรือค่าเริ่มต้นให้กับตัว แปร ข้อดี – ไม่มีการอ้างถึงหน่วยความจำทำให้ไม่ต้องใช้ cycle เพื่อเข้าถึงหน่วยความจำเพิ่มเติม Operand Instruction

6 Immediate Addressing ข้อเสีย – ขนาดของ operand ขึ้นอยู่กับขนาดของฟิลด์ address ตัวอย่าง Operand = (131 8 ) (89 10 ) Instruction

7 Direct Addressing ในฟิลด์ address เก็บ effective address ของ operand EA = A Effective address (EA) คือ address จริงๆ ของ location ที่มี operand – การคำนวณ EA เพื่อให้ address จริงใช้ กลไกของ paging และเกิดขึ้นเองภายใน เครื่อง A Instruction Operand Memory

8 Direct Addressing 0

9 การกำหนดโหมด direct ในเครื่อง PDP8 สามารถกำหนดได้จากการกำหนดบิตตำแหน่งที่ 4 เท่ากับ 0 และถ้ากำหนดบิตตำแหน่งที่ 5 เท่ากับ 1 จะหมายถึงใช้ page ปัจจุบัน ตัวอย่างคำสั่ง TAD ปรากฏอยู่ใน location ที่ locati on conte nt TAD(001) direct mode(0) current page(1) offset( )

10 Direct Addressing EA = page ของ location + offset ( ) locati on conte nt

11 Direct Addressing

12 การกำหนดโหมด direct ในเครื่อง PDP8 สามารถกำหนดได้จากการกำหนดบิตตำแหน่งที่ 4 เท่ากับ 0 และถ้ากำหนดบิตตำแหน่งที่ 5 เท่ากับ 0 จะหมายถึงใช้ page ที่ 0 ตัวอย่างคำสั่ง TAD 10 8 ปรากฏอยู่ใน location ที่ locati on conte nt TAD(001) direct mode(0) zero page(0) offset( )

13 Direct Addressing EA = page ที่ 0 + offset ( ) locati on conte nt

14 Direct Addressing

15 (x) คือ content ของ location ที่ x ดังนั้น operand = (EA) –TAD Operand = ( ) = –TAD 10 8 Operand = ( ) =

16 Indirect addressing จากรูปแบบของ direct เราสามารถอ้างถึง location ได้เฉพาะ page ปัจจุบันและ page ที่ 0 ดังนั้นปัญหาคือเราสามารถอ้างถึง location ตำแหน่งอื่นได้หรือไม่

17 Indirect addressing วิธีการคือ – มีกำหนดฟิลด์ address ให้ชี้ไปยัง location หนึ่ง ซึ่ง location นี้สามารถชี้ไปยัง location อื่นๆได้ทั้งหน่วยความจำ เพราะ location สามารถมีพื้นที่ว่างพอจัดเก็บ address ได้ ทั้งหมด A Instruction Operand Memory

18 Indirect addressing การกำหนดโหมด indirect ในเครื่อง PDP8 สามารถกำหนดได้จากการกำหนดบิตตำแหน่งที่ 4 เท่ากับ 1 และถ้ากำหนดบิตตำแหน่งที่ 5 เท่ากับ 1 จะหมายถึงใช้ current page ตัวอย่างคำสั่ง TAD ปรากฏอยู่ใน location ที่ locati on conte nt TAD(001) indirect mode(1) current page(1) offset( )

19 Indirect addressing A = page ของ location + offset ( ) locati on conte nt

20 Indirect addressing

21 EA = (A) EA = ( ) EA = ( ) Page ที่ 2

22 Indirect addressing

23 Operand = (EA) = ( ) =

24 ที่มา William Stalling, Computer Organization and Architecture, USA Yale N. Patt, Sanjay J. Patel, Introduction to Computing Systems: From Bits and Gates to C and Beyond, USA


ดาวน์โหลด ppt Addressing Modes ธนวัฒน์ แซ่ เอียบ. Addressing เราสามารถพบ operand ได้ที่ไหน ? 1. 2. 3.

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


Ads by Google