Lab.

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
โครงสร้างของภาษา C ในโปรแกรมที่พัฒนาด้วยภาษา C ทุกโปรแกรมจะมีโครงสร้างการพัฒนาไม่แตกต่างกัน ซึ่งประกอบด้วย 6 ส่วนหลัก ๆ โดยที่แต่ละส่วนจะมีหน้าที่แตกต่างกัน.
Advertisements

บทที่ 2 รหัสควบคุมและการคำนวณ
Introduction to C Introduction to C.
รายวิชา ง40102 หลักการแก้ปัญหาและการโปรแกรม
โครงสร้างโปรแกรมภาษา C
ตัวแปรประเภทตัวชี้ (Pointer)
ฐานข้อมูลสิทธิบัตรทั่วโลก (ไทย)
ตัวแปรชุด การเขียนโปรแกรมภาษาคอมพิวเตอร์ 1
การเขียนโปรแกรมด้วยคำสั่งเบื้องต้น
2.2.3 การแก้ไขแอดเดรส โดยการใช้อินเด็กรีจิสเตอร์
Introduction to C Programming
ตัวแปรชุด (Array) Chapter Introduction to Programming
บทที่ 11 การเขียนโปรแกรมโดยใช้ข้อมูลชนิดพอยท์เตอร์
Intermediate Representation (รูปแบบการแทนในระยะกลาง)
Register Allocation and Graph Coloring
สถาปัตยกรรมแบบ stack และ การผลิตโค๊ด
การผลิตโค๊ดสำหรับ Procedure Call
สภาวะแวดล้อมในขณะโปรแกรมทำงาน
โครงสร้างการควบคุมการทำงานของโปรแกรม Program control structures
Ordering and Liveness Analysis ลำดับและการวิเคราะห์บอกความ เป็นอยู่หรือความตาย.
รหัสระหว่างกลาง (Intermediate code)
Functional programming part II
Lecture No. 3 ทบทวนทฤษฎีและแบบฝึกหัด
Structure Programming
ตัวอย่าง Flowchart.
ชนิดของข้อมูลและตัวดำเนินการ
จงหาระยะห่างของจุดต่อไปนี้ 1. จุด 0 ไปยัง จุด 0 ไปยัง 2
องค์ประกอบของโปรแกรม
บทที่ 2 Operator and Expression
เนื้อหา ประเภทของโปรแกรมภาษา ขั้นตอนการพัฒนาโปรแกรม
บทที่ 13 Pre-processor directive & macro Kairoek choeychuen
Lab 2: การใช้ MATLAB สำหรับการสร้างแบบจำลองเพื่อวิเคราะห์
ขั้นตอนการแปลงไฟล์.
ขั้นตอนการแปลงไฟล์.
C Programming Lecture no. 6: Function.
SCC : Suthida Chaichomchuen
Addressing Modes Assembly Programming.
Advanced VB (VB ขั้นสูง)
2.5 ตัวแปรชุดมิติเดียวและตัวแปรชุดสองมิติ
การเขียนโปรแกรมคอมพิวเตอร์และอัลกอริธึม
Functional components of a computer
อาร์เรย์และข้อความสตริง
บทที่ 15 โปรแกรมย่อยและแสต็ก
ธนาวินท์ รักธรรมานนท์
ตัวแปร (Variable) คือ ชื่อที่ตั้งขึ้นเพื่อเก็บข้อมูลในหน่วยความจำ สามารถเก็บข้อมูลชนิดใดก็ ได้ ลักษณะที่สำคัญ ค่าที่จัดเก็บ เมื่อปิดโปรแกรมข้อมูลจะหายไป.
Introduction to C Language
Memory Management ในยุคก่อน
ความรู้พื้นฐานการเขียนโปรแกรม
ใบงานที่ 3 โครงสร้างของโปรแกรมภาษาซี
การสอบถามข้อมูลด้วยฟังก์ชั่นสำหรับ
เครื่องหมายและการดำเนินการ ในภาษา C
ประวัติและขั้นตอนการพัฒนาโปรแกรมภาษาซี
ทบทวน กันก่อน .....กระบวนการแปลโปรแกรม
Week 10 การเขียนโปรแกรมเบื้องต้น #2
Computer Programming for Engineers
ตัวแปรชุด Arrays.
หลักการเขียนโปรแกรม ( )
หลักการเขียนโปรแกรม ( )
การสร้างแบบสอบถาม และ การกำหนดเงื่อนไข.
A QUICK OVERVIEW OF PDP-8 ARCHITECTURE
หลักการเขียนโปรแกรม ( )
โครงสร้าง ภาษาซี.
Addressing Modes ธนวัฒน์ แซ่เอียบ.
Assembly Languages: PDP8
แนะนำการเขียนโปรแกรมภาษา C Introduction to C Programming Language
ซอฟต์แวร์ (Softwarre)
ตัวแปร และชนิดข้อมูล.
หลักการทั่วไปเกี่ยวกับการเขียนโปรแกรม
Subroutine ธนวัฒน์ แซ่ เอียบ. Subrountine – คือส่วนหนึ่งของ code จากโปรแกรมทั้งหมด สำหรับปฏิบัติงานโดยเฉพาะ และเป็นอิสระ จาก code ส่วนอื่นของโปรแกรม ประโยชน์
Lab ธนวัฒน์ แซ่ เอียบ. Direct addressing รูปแบบนี้แต่ละคำสั่งสามารถอ้าง memory location ได้คือ –Current page –Page 0 การคำนวณ effective address ได้มาจากคำสั่ง.
ใบสำเนางานนำเสนอ:

Lab

Label แนวคิดเดียวกับการนิยามค่าคงที่หรือการนิยามตัวแปรในภาษาระดับสูง ถ้ามีการอ้างถึง label จะหมายถึงการอ้างถึงตำแหน่งในหน่วยความจำของ label นั้น เช่น *10 count, 0 lim, 14 isz count

คำถามข้อที่ 1 1.1) label มีอะไรบ้าง 1.2) 0 จัดเก็บที่ location เท่าไรของหน่วยความจำ 1.3) 14 จัดเก็บที่ location เท่าไรของหน่วยความจำ 1.4) isz เป็นคำสั่งอะไร และส่วน operand อ้างถึง location เท่าไรของหน่วยความจำ

Directives เป็นการบอกตำแหน่งในหน่วยความจำให้กับคอมไพเลอร์ เช่น *0 101 one, 102 two, 103 *200 cla tad one hlt *1000 104 $

คำถามข้อที่ 2 2.1) ค่า 101 จัดเก็บที่ location เท่าไรของหน่วยความจำ 2.5) คำสั่ง cla คืออะไร และจัดเก็บที่ location เท่าไรของหน่วยความจำ 2.6) คำสั่ง tad คืออะไร และจัดเก็บที่ location เท่าไรของหน่วยความจำ และส่วน operand อ้างถึง location เท่าไรของหน่วยความจำ

เราสามารถเริ่มคำสั่งแรกที่ location อื่นได้หรือไม่ ? PDP8 เมื่อเครื่อง PDP8 เริ่มทำงาน ค่าของ PROGRAM COUNTER จะมีค่าเท่ากับ 200 เสมอ ดังนั้นเราจึงต้องเขียนคำสั่งแรก location ที่ 200 เราสามารถเริ่มคำสั่งแรกที่ location อื่นได้หรือไม่ ? และทุกครั้งที่เริ่มปฏิบัติงาน รีจีสเตอร์ทุกตัวยกเว้น PC และ location ในหน่วยความจำที่ไม่ได้ถูกอ้างถึงจะถูกกำหนดให้เท่ากับ 0 ค่าทั้งหมดของเครื่อง PDP8 เป็นเลขฐาน 8

Load example ตัวอย่างโค้ดของ PDP8 ที่โหลดค่า 5 เข้าสู่ Accumulator เช่น *0 five, 5 // store 5 at pos. 0 with label five *200 cla // clear acc tad five // add the value at label five hlt // halt $

คำถามข้อที่ 3 3.1) คำสั่งที่มีการโหลดค่า 5 เข้าสู่ Accumultor คืออะไร 3.2) ในคำสั่งโหลดนี้รีจีสเตอร์มีค่าใด PC = AC = IR = MAR (ช่วงแรก) = MDR (ช่วงแรก) = MAR (ช่วงที่สอง) = MDR (ช่วงที่สอง) =

Addition คำนวณการบวก 510+310 และเก็บผลลัพธ์ใน label(ตัวแปร) ชื่อว่า result *0 three, 3 five, 5 result, 0 *200 cla tad five tad three dca result hlt $

คำถามข้อที่ 4 ให้แสดงชื่อ label ทั้งหมด พร้อมทั้งระบุค่าของ address และค่าของ content ของแต่ละ label คำสั่งใดที่เกี่ยวข้องกับการบวก 5+3 โดยตรงมากที่สุด ก่อนเริ่มทำงาน “dca result” ไปจนกระทั่งจบการทำงาน รีจีสเตอร์ต่อไปนี้มีค่าใด

คำถามข้อที่ 4 Phaze II : Execute Phaze I : Fetch PC = PC = AC = AC = IR = MAR = MDR = Phaze II : Execute PC = AC = IR = MAR = MDR =

subtraction คำนวณการบวก 510-310 และเก็บผลลัพธ์ใน label(ตัวแปร) ชื่อว่า result *0 three, 3 five, 5 result, 0 *200 Cla tad three cia tad five dca result hlt $

คำถามข้อที่ 5 อธิบายคำสั่งที่เกี่ยวข้องกับการคำนวณ 5-3 ก่อนเริ่มทำงาน “dca result” ไปจนกระทั่งจบการทำงาน รีจีสเตอร์ต่อไปนี้มีค่าใด Phaze I : Fetch PC = AC = IR = MAR = MDR = Phaze II : Execute PC = AC = IR = MAR = MDR =

Homework ให้เขียนโค๊ดของ pdp8 เพื่อคำนวณ 2110+1010-810