ดีบักเป็นเครื่องมืออันหนึ่งที่ให้ผู้ใช้ ตรวจสอบ และแก้ไขค่าใน หน่วยความจำ โหลด เก็บ ตรวจสอบค่าในเรจิสเตอร์ และสามารถ เขียนโปรแกรมแอสเซมบลีได้อย่าง สะดวก.

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
การควบคุมตำแหน่งการแสดงผล และการจัดวางข้อมูลบนจอภาพ
Advertisements

ชนิดของข้อมูลในโปรแกรม Interactive C
สาขาวิชาคอมพิวเตอร์ คณะวิทยาศาสตร์และเทคโนโลยี
โดยอาจารย์ศิริพร ศักดิ์บุญญารัตน์ ครูชำนาญการ โรงเรียนมหิดลวิทยานุสรณ์
ฟังก์ชั่นในภาษาซี.
การเขียนโปรแกรมด้วยคำสั่งเบื้องต้น
BC322 ครั้งที่ 6 Text file BC322 : computer Programming (Week6)
การแทนข้อมูลในคอมพิวเตอร์
โครงสร้างการควบคุมการทำงานของโปรแกรม Program control structures
รหัสระหว่างกลาง (Intermediate code)
Data Type part.III.
Lecture 11: อาร์เรย์แบบหลายมิติ
CS Assembly Language Programming
ชนิดของข้อมูลและตัวดำเนินการ
Week 6 ประกาศค่าตัวแปร.
รับและแสดงผลข้อมูล.
รูปแบบโครงสร้างภาษาซี
PHP LANGUAGE.
โครงสร้างภาษาซี.
ASCII รหัสแอสกี (ASCII Code) หรือ American Standard Code for Information Interchange เป็นรหัสที่ มีการใช้แพร่หลายกันมากที่สุด เช่น ในไมโครคอมพิวเตอร์
เรื่อง ประเภทของข้อมูล
Computer&Technology Mahidol Wittayanusorn School
Arrays.
Week4 Data types, Variables, Operators and Input/output (ต่อ)
ขั้นตอนการแปลงไฟล์.
การใช้งาน Microsoft Excel
SCC : Suthida Chaichomchuen
การจัดการข้อมูลด้วยคอมพิวเตอร์
Addressing Modes Assembly Programming.
ขั้นตอนวิธี (Algorithm)
การเขียนโปรแกรมเชิงวัตถุ ด้วยภาษาจาวา
การเขียนโปรแกรมคอมพิวเตอร์และอัลกอริธึม
บทที่ 11 การเขียนโปรแกรมภาษาซี
บทที่ 17 คำสั่งตารางและการสร้างแมคโคร
ธนาวินท์ รักธรรมานนท์
เซกเมนต์ (Segment) โครงสร้างคอมพิวเตอร์ และภาษาแอสเซมบลี้
บทที่ 7 คำสั่งสำหรับเขียนโปรแกรม
Chapter 4 การสร้าง Application
ตัวแปรกับชนิดของข้อมูล
แถวลำดับ (array) ง40202 การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์
การแปลงข้อมูลใน Excel เป็นฐานข้อมูลใน Access
ปฏิบัติการครั้งที่ 10 pointer. หน่วยความจำ หน่วยความจำนั้นเสมือนเป็นช่องว่างไว้เก็บ ของที่มีหมายเลขประจำติดไว้ที่แต่ละช่อง เพื่อใช้ในการระบุตำแหน่งของช่องได้
ใบงานที่ 7 การรับและแสดงผลข้อมูล
เรื่องข้อมูลและสาระสนเทศ
IP Address / Internet Address
การแทนข้อมูล คอมพิวเตอร์เป็นอุปกรณ์อิเล็กทรอนิกส์ซึ่งใช้สัญญาณอิเล็กทรอนิกส์ในการทำงานเพื่อเก็บข้อมูล ประมวลผลและแสดงผลลัพธ์ การมองเห็นข้อมูลของคอมพิวเตอร์กับการมองเห็นข้อมูลของผู้ใช้จะไม่เหมือนกัน.
อินเทอร์เน็ตInternet
ตัวแปรกับชนิดของข้อมูล
Week 2 Variables.
Week 12 Engineering Problem 2
CS Assembly Language Programming
Computer Programming for Engineers
Computer Programming for Engineers
ระบบคอมพิวเตอร์และการประมวลผล
Object-Oriented Programming
หลักการเขียนโปรแกรม ( )
SML Report Designer การออกแบบรายงาน.
การผลิตเอกสาร Documentation Production
Output of C.
“Disk Operating System”
บทที่ 9 พอยเตอร์. สื่อชุดนี้เป็นลิขสิทธิ์ของสำนักพิมพ์วังอักษรใช้เพื่อ การศึกษาเท่านั้น พอยเตอร์ (Pointer) พอยเตอร์คือต้นฉบับของชนิดข้อมูล เป็นชนิด ข้อมูลที่สร้างจากข้อมูลมาตรฐานชนิดหนึ่ง.
รู้จักกับ Microsoft Access 2003
รหัสคอมพิวเตอร์.
ง31102 เทคโนโลยีสารสนเทศ 2 ศูนย์คอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
หน่วยที่ 4 โครงสร้างโปรแกรมภาษาซี
Domain Name System   (DNS).
ตัวแปร และชนิดข้อมูล.
1. บทนำเกี่ยวกับอินเทอร์เน็ต อินเทอร์เน็ตมีจุดเริ่มต้นมาจากเหตุผล ทางการทหาร เนื่องจากในยุค สงครามเย็น เมื่อประมาณ พ. ศ 2510 ระหว่างฝ่ายคอมมิวนิสต์ และฝ่ายเสรี
ซอฟต์แวร์ (software) จัดทำโดย นาย ยุทธพงศ์ คำยอง
ส่วนประกอบของคอมพิวเตอร์
ใบสำเนางานนำเสนอ:

ดีบักเป็นเครื่องมืออันหนึ่งที่ให้ผู้ใช้ ตรวจสอบ และแก้ไขค่าใน หน่วยความจำ โหลด เก็บ ตรวจสอบค่าในเรจิสเตอร์ และสามารถ เขียนโปรแกรมแอสเซมบลีได้อย่าง สะดวก ดีบักเป็นซอฟต์แวร์ที่มากับ ระบบปฏิบัติการดอส เป็นไฟล์ประเภท COM ไฟล์ ดังนั้นการเรียกใช้ เพียงแต่ระบุชื่อไฟล์ ( เมื่ออยู่ที่ดอส พร้อมต์ ) ดีบักคือ อะไร

ดังนี้ C:\> debug เมื่อดีบักพร้อมที่จะทำงานจะอยู่ที่ Hyphen Prompt แสดงเครื่องหมาย Hyphen (-) C:\> debug ณ Hyphen Prompt ผู้ใช้ สามารถใช้คำสั่งของดีบักได้ และคำสั่ง ที่ให้ออกจากดีบักคือ Q(Quit) -Q

1. คำสั่งหนึ่งอักขระ (command letter) 2. เลขที่อยู่ (address) 3. ชื่อเรจิสเตอร์ (register name) 4. ชื่อแฟ้มข้อมูล (file name) 5. ชื่อไดรฟ์ (drive name) 6. ข้อมูล (data) ชนิดของข่าวสารที่เป็นส่วน ของคำสั่งดีบัก

1. คำสั่งตรวจสอบและแก้ไขค่าใน หน่วยความจำ 2. คำสั่งเขียนและให้โปรแกรม ทำงาน 3. คำสั่งโหลดและเซฟ แบ่งคำสั่งดีบักใน ได้ 3 กลุ่ม

กลุ่มคำสั่งตรวจสอบ และแก้ไขค่า ในหน่วยความจำนี้ มีความจำเป็นต่อ การตรวจสอบแก้ไขโปรแกรม เช่น อาจ ต้องตรวจสอบค่าในหน่วยความจำก่อน และหลังโปรแกรมทำงาน กลุ่มคำสั่งนี้มี DUMP, ENTER, FILL, MOVE, COMPARE และ SEARCH ชนิดของข่าวสารที่เป็นส่วน ของคำสั่งดีบัก

1. D = dump คำสั่งนี้แสดงข้อมูลบางส่วนใน หน่วยความจำ แสดงไบต์ของหมายเลข รหัสแอสกีและอักขระของรหัสนั้น สามารถระบุเลขที่อยู่เริ่มต้นและเลขที่อยู่ สุดท้ายของหน่วยความจำที่ต้องการ ถ้า ไม่ระบุเลขที่อยู่สุดท้าย

ดีบักจะแสดงให้ 8 แถว แต่ละแถว แสดง 16 ไบต์ ตัวเลขที่แสดงเป็น เลขฐานสิบหก (Hexadecimal) และ ค่าดีฟอลต์ของคำสั่ง DUMP นี้เป็น เซกเมนต์ข้อมูล (Data Segment)  รูปแบบคำสั่ง D [starting address] [ending address]

การระบุเลขที่อยู่หน่วยความจำที่ ต้องการทำงานในดีบัก สามารถระบุเป็นเร จิสเตอร์คู่เซกเมนต์และออฟเซต หรือ เพียงระบุเลขที่อยู่เพียงค่าออฟเซต ดีบัก จะใช้เซกเมนต์ด้วยค่าที่เป็นค่าที่กำหนด โดยปริยายหรือค่าดีฟอลต์ (Default) คำสั่งที่จัดการกับข้อมูลในหน่วยความจำ มีดีฟอลต์เซกเมนต์เป็นเซกเมนต์ ข้อมูล (Data Segment)

ดีบักแสดงผลเป็นสามคอลัมน์ คอลัมน์แรกทางซ้ายแสดงเลขที่อยู่ คอลัมน์ที่สองแสดงไบต์ของข้อมูลเป็น เลขฐานสิบหก ค่าหนึ่งไบต์เป็น เลขฐานสิบหกสองหลักจำนวน 16 ไบต์ ต่อแถว คอลัมน์ทางขวาแสดงอักขระ ของรหัสแอสกี (ASCII = American Standard Code for Information Interchange) ของแอสกีของอักขระใน คอลัมน์ที่สอง ซึ่งในบางเลขที่อยู่ แสดงอักขระเป็น dots (.) สำหรับ อักขระเป็น nonprintable เช่น แอสกี หมายเลข 00h และ FFh

2. E = Enter แก้ไขค่าในหน่วยความจำ  รูปแบบคำสั่ง E [address] [list] address เลขที่อยู่หน่วยความจำ ที่ต้องการแก้ไขค่า list ชุดของข้อมูลที่ให้ แทนที่ในเลขที่อยู่ที่ระบุ

3. F = fill เติมบางส่วนของหน่วยความจำ เป็นกลุ่มหรือเป็นบล็อกด้วยค่าที่ระบุ  รูปแบบคำสั่ง F [starting address] [ending address] [list]

4. M=Move คำสั่งนี้ให้ผู้ใช้ก๊อบปี้บล็อกข้อมูลจาก ตำแหน่งหนึ่งไปยังอีกตำแหน่งหนึ่งใน หน่วยความจำ  รูปแบบคำสั่ง M [starting address] [ending address] [destination address]

5. C=Compare เปรียบเทียบบล็อกข้อมูลสอง บล็อกในหน่วยความจำ  รูปแบบคำสั่ง C [starting address] [ending address] [destination]

ผลการโต้ตอบของดีบักเป็นดังนี้ ดีบักจะแสดงหมายเลขที่อยู่และค่าใน ทั้งสองตำแหน่งนั้น ที่พบว่ามีข้อมูลไม่ เหมือนกัน ( ถ้าในบล็อกทั้งสองมีข้อมูล ที่เหมือนกัน ดีบักจะไม่แสดงผลใด ๆ )

6. S=Search ค้นหาข้อมูลในหน่วยความจำ ถ้า ค้นหาพบ ดีบักจะแสดงหมายเลขเลขที่อยู่ ให้  รูปแบบคำสั่ง S [starting address] [ending address] [list]

เรจิสเตอร์ภายในซีพียูเป็นเสมือน ตัวแปรที่มีให้ใช้ แต่เรจิสเตอร์แต่ละ ตัวมีหน้าที่เฉพาะทางอยู่บ้าง และ บางเรจิสเตอร์ก็เปลี่ยนค่าไปอย่าง อัตโนมัติ เช่น IP จะชี้ที่อยู่ของ คำสั่งถัดไปที่จะทำงาน การจัดการกับเรจิ สเตอร์

ในดีบักมีคำสั่งของแสดงค่าในเร จิสเตอร์แต่ละตัว และ ผู้ใช้สามารถ แก้ไขค่าในเรจิสเตอร์ได้ด้วยคำสั่ง R (Register) การแก้ไขค่าในเรจิสเตอร์ ใช้คำสั่ง R ตามด้วยชื่อเรจิสเตอร์ที่ ต้องการ

เช่น RAX หมายถึงต้องการแก้ไขค่า ของเรจิสเตอร์ AX โดยดีบักจะแสดง ค่าของเรจิสเตอร์นั้น และยอมให้ผู้ใช้ ป้อนเข้าค่าใหม่ลงไปได้ -rax AX 0000 ค่าเดิม : ป้อนเข้าค่า ใหม่