Chapter 11 Instruction Sets: Addressing Modes

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
3. วิธีทำให้ข้อมูลเป็นสารสนเทศมีกี่วิธีอะไรบ้าง
Advertisements

Machine Structure, Machine Language, and Assembly Language
โครงสร้างข้อมูลสแตก มีลักษณะเป็นรายการในแนวเชิงเส้น(Linear List)รูปแบบหนึ่ง และมีข้อกำหนดให้ชุดปฏิบัติการสามารถเพิ่มและลบรายการเพียงด้านเดียว ซึ่งเป็นด้านบนสุดของสแตก(Top.
รายวิชา ง40102 หลักการแก้ปัญหาและการโปรแกรม
Process Synchronization
Lists Data Structure LAUKHWAN NGAMPRASIT LAUKHWAN NGAMPRASIT.
Fast Page Mode DRAM (FPM DRAM) AND Extended-Data Output (EDO) DRAM
โครงสร้างข้อมูลสแตก มีลักษณะเป็นรายการในแนวเชิงเส้น(Linear List)รูปแบบหนึ่ง และมีข้อกำหนดให้ชุดปฏิบัติการสามารถเพิ่มและลบรายการเพียงด้านเดียว ซึ่งเป็นด้านบนสุดของสแตก(Top.
INDEXED FILES แฟ้มดรรชนี.
สถาปัตยกรรมแบบ stack และ การผลิตโค๊ด
สภาวะแวดล้อมในขณะโปรแกรมทำงาน
รหัสระหว่างกลาง (Intermediate code)
Data Type part.III.
Central Processing Unit
การแทนค่าข้อมูล และ Primary Storage (Memory)
Tips : หลักการในการออกแบบฐานข้อมูล
CS Assembly Language Programming
Structure Programming
CS Assembly Language Programming
Chapter 2 Switching.
หลักการทำงานของคอมพิวเตอร์
PHP LANGUAGE.
หลักการทำงานของคอมพิวเตอร์
Arrays.
Number Representations
ขั้นตอนการแปลงไฟล์.
ส่วนประกอบของคอมพิวเตอร์ (Personal Computer : PC)
ขั้นตอนการแปลงไฟล์.
? คอมพิวเตอร์ คอมพิวเตอร์ คือ อะไรนะ ?
Control Transfer Instructions
Memory Interface Memory Pin Connections 1. Address Inputs
Addressing Modes Assembly Programming.
2.5 ตัวแปรชุดมิติเดียวและตัวแปรชุดสองมิติ
CS Assembly Language Programming
Functional components of a computer
Introduction to Cache Memory Systems
การใช้งานเบื้องต้นของเครื่องคิดเลขทางการเงิน
ดีบักเป็นเครื่องมืออันหนึ่งที่ให้ผู้ใช้ ตรวจสอบ และแก้ไขค่าใน หน่วยความจำ โหลด เก็บ ตรวจสอบค่าในเรจิสเตอร์ และสามารถ เขียนโปรแกรมแอสเซมบลีได้อย่าง สะดวก.
ตัวแปร (variable) ตัวแปร เป็นชื่อที่เราตั้งขึ้น เพื่อให้คอมพิวเตอร์เตรียมที่ใน หน่วยความจำไว้สำหรับเก็บข้อมูลที่นำไปประมวลผล การตั้งชื่อตัวแปร ชื่อตัวแปรในภาษา.
Memory Management ในยุคก่อน
บทที่ 8 File Management. ประเด็นที่ต้องพิจารณา ถ้าต้องการเก็บข้อมูลจะเก็บข้อมูลไว้ที่ไหน สามารถเก็บข้อมูลตรงไปยัง media โดยไม่ต้อง จัดรูปแบบการเก็บได้หรือไม่
หน่วยประมวลผลกลางและหน่วยความจำ Central Processing Unit and Memory
Charter 7 1 Chapter 7 การจัดการไฟล์ข้อมูล Data File Management.
Linked List (ลิงค์ลิสต์)
ตัวแปรกับชนิดของข้อมูล
เครื่องมือและเครื่องทุ่นแรงในงานบัญชี
Process.
ผู้จัดทำ นางสาว สุทธิดา แสงอุไร มัธยมศึกษาปีที่ 4/2 เลขที่ 27.
อาร์เรย์ (Arrays).
บทที่ 3 การจ่ายงาน (Process Management).
PHP การตรวจสอบเงื่อนไข.
Lab.
บทที่ 9 พอยเตอร์. สื่อชุดนี้เป็นลิขสิทธิ์ของสำนักพิมพ์วังอักษรใช้เพื่อ การศึกษาเท่านั้น พอยเตอร์ (Pointer) พอยเตอร์คือต้นฉบับของชนิดข้อมูล เป็นชนิด ข้อมูลที่สร้างจากข้อมูลมาตรฐานชนิดหนึ่ง.
A QUICK OVERVIEW OF PDP-8 ARCHITECTURE
Chapter 4 Cache Memory Computer Memory System Overview
โครงสร้างข้อมูลแบบลิงก์ลิสต์
หลักการเขียนโปรแกรม ( )
เริ่มจากอดีต ตั้งแต่ยุคสมัยเริ่มต้น ของการใช้ PC มีการนำเอาสแตติกแรมมา ใช้ แต่ขนาดของ RAM ในขณะนั้นมีเพียง 8-16 กิโลไบต์ ซึ่งต้องใช้พื้นที่บอร์ด ขนาดใหญ่
Addressing Modes ธนวัฒน์ แซ่เอียบ.
Input / Output ธนวัฒน์ แซ่เอียบ.
Assembly Languages: PDP8
ระบบคอมพิวเตอร์ (computer system)
EDO RAM นางสาวชุติมา พุ่มพฤกษ์
ตัวแปร และชนิดข้อมูล.
โครงสร้างข้อมูลแบบ สแตก (stack)
หน่วยรับเข้า ทำหน้าที่รับข้อมูลจากผู้ใช้เข้าสู่หน่วยความจำหลัก ปัจจุบันมีสื่อต่าง ๆ ให้เลือกใช้ได้มากมาย แบ่งเป็นประเภทต่าง ๆ 1.แป้นพิมพ์ (Keyboard) 2.เมาส์
หน่วยที่1 ข้อมูลทางการตลาด
ส่วนประกอบของคอมพิวเตอร์
คุณลักษณะของคำสั่งภาษาเครื่อง ชนิดของตัวถูกดำเนินการ
สถาปัตยกรรมคอมพิวเตอร์ (Computer Architecture)
ใบสำเนางานนำเสนอ:

Chapter 11 Instruction Sets: Addressing Modes and Formats (การกำหนดที่อยู่และรูปแบบ ) Addresssing Mode จะเป็นการอ้างอิงตัวถูกกระทำภายในคำสั่ง ซึ่งจะประกอบไปด้วยค่าที่แท้จริงของตัวถูกกระทำ การอ้างอิงไปยังที่อยู่ของตัวถูกกระทำ ซึ่งการอ้างอิงมีหลายวิธีขึ้นอยู่กับสภาวะการกำหนดที่อยู่(addressing Mode) ที่กำหนดใช้สำหรับชุดคำสั่งนั้น รูปแบบของคำสั่ง(Instruction Format) ใช้ในการกำหนดโครงสร้างของเขตข้อมูลต่างๆ ของคำสั่งแต่ละคำสั่ง

Addressing Modes เป็นการคำนวณ Address ของคำสั่งกับหน่วยความจำ ข้อมูลที่อยู่ในชุดคำสั่งทั่วๆ ไปมักมีขนาดเล็กเพราะมันมีความจำกัด ในขณะที่บางครั้งการประมวลผลต้องการอ้างอิงข้อมูลที่มีขนาดใหญ่กว่า(เช่นไปอ้างอิงข้อมูลในหน่วยความจำหรือหน่วยความจำภายนอก) ดังนั้นจึงมีการคิดค้นวิธีการอ้างอิงหน่วยความจำขึ้นมาหลายแบบ ดังนี้ Immediate(การใช้ตัวถูกกระทำโดยตรง) Direct(การอ้างอิงโดยตรง) Indirect(การอ้างอิงทางอ้อม) Register(การอ้างอิงผ่าน Register โดยตรง) Register Indirect(การอ้างอิงผ่าน Register ทางอ้อม) Displacement (Indexed) Stack 2

Immediate Addressing (การใช้ตัวถูกกระทำโดยตรง) Operand is part of instruction Operand = address field e.g. ในชุดคำสั่งของ MCS-51 เช่น Add A,#05H No memory reference to fetch data(ไม่มีการอ้างอิงข้อมูลภายนอกเหนือไปจากการอ่านคำสั่งเข้ามาใน CPU ทำให้ประหยัดวงรอบการอ้างอิง) Fast(เร็ว) Limited range ขนาดของตัวเลขถูกจำกัดด้วยขนาดของ เขตข้อมูล ดังนั้นขนาดของข้อมูลมีขนาดเล็ก Operand Opcode Instruction 3

Direct Addressing อ้างอิงการ Memory(การอ้างอิงโดยตรง) คือในส่วนของ Operand จะบรรจุตำแหน่งที่อยู่จริง e.g. ADD 03H คือ 03H เป็นที่อยู่ตำแหน่ง 0003H ของ Memory Single memory reference to access data Address A Opcode Instruction Memory Operand 5

Indirect Addressing (memory ชี้ไปยัง memory)(การอ้างอิงทางอ้อม) เนื่องจากวิธีการ Direct นั้น ความยาวของ Operand จะมีขนาดสั้นกว่า ทำให้อ้างถึงข้อมูลใน Memory ได้จำกัด ดังนั้นวิธีการ Indirect นี้ จึงนำมาใช้ในการแก้ปัญหานั้น Address A Opcode Instruction Memory Operand Pointer to operand e.g. ADD (03h) จะการบวกค่าที่ถูกชี้โดยข้อมูลในตำแหน่ง 0003h ซึ่งข้อมูลภายในตำแหน่ง 0003h ก็จะเป็นข้อมูลที่ชี้ไปยังตำแหน่งที่ต้องการ ข้อเสียคืออ้างอิงวงรอบ 2 รอบ 7

Register Addressing (การอ้างอิงผ่าน Register โดยตรง) จะคล้ายกับวิธี Direct เพียงแต่ข้อมูลของ Direct จะบรรจุตำแหน่งหน่วยความจำ แต่ วิธีนี้จะบรรจุหมายเลข Register ที่อ้างอิง เช่น Add AX ทำการบวกค่าที่ Register AX เก็บอยู่ Register Address R Opcode Instruction Registers Operand 10

Register Indirect Addressing(การอ้างอิงผ่าน Register ทางอ้อม) เช่น Add (Ax) เอาข้อมูลใน Memory ที่ Register ชี้อยู่ มาบวก Register Address R Opcode Instruction Memory Operand Pointer to Operand Registers 13

Displacement Addressing เป็นการรวมเอาการอ้างอิงหน่วยความจำแบบ Direct และการอ้างอิงแบบ Register Indirect EA = A + (R), ADD = (R) + 7 Register R Opcode Instruction Memory Operand Pointer to Operand Registers Address A + 15

Operand is (implicitly) on top of stack Stack Addressing Operand is (implicitly) on top of stack Stack ไม่จำเป็นต้องอ้างอิงตำแหน่งที่อยู่ คำสั่งไม่จำเป็นต้องอ้างอิงหน่วยความจำ e.g. ADD Pop top two items from stack and add 21

แนวการสร้างชุดคำสั่งที่ Support การอ้าง Address Add #7 Immedia // + กับเลข 7 โดยตรง Add 10H Direct //+กับข้อมูลอยู่ในM emory Add (7) In direct //+กับข้อมูลที่ Memory ชี้อยู่ Add $7 แบบอื่นๆ เราจะรู้ได้ยังไงว่าแบบไหน ตรงชุดคำสั่งเราอาจจะต้องกำหนดใหม่เช่น ชุดคำสั่งขนาด 8 bit เราก็กำหนดเป็น ADD 7 เพิ่ม