ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
ได้พิมพ์โดยNat Sathianthai ได้เปลี่ยน 10 ปีที่แล้ว
2
ดีบักเป็นเครื่องมืออันหนึ่งที่ให้ผู้ใช้ ตรวจสอบ และแก้ไขค่าใน หน่วยความจำ โหลด เก็บ ตรวจสอบค่าในเรจิสเตอร์ และสามารถ เขียนโปรแกรมแอสเซมบลีได้อย่าง สะดวก ดีบักเป็นซอฟต์แวร์ที่มากับ ระบบปฏิบัติการดอส เป็นไฟล์ประเภท COM ไฟล์ ดังนั้นการเรียกใช้ เพียงแต่ระบุชื่อไฟล์ ( เมื่ออยู่ที่ดอส พร้อมต์ ) ดีบักคือ อะไร
3
ดังนี้ C:\> debug เมื่อดีบักพร้อมที่จะทำงานจะอยู่ที่ Hyphen Prompt แสดงเครื่องหมาย Hyphen (-) C:\> debug ณ Hyphen Prompt ผู้ใช้ สามารถใช้คำสั่งของดีบักได้ และคำสั่ง ที่ให้ออกจากดีบักคือ Q(Quit) -Q
4
1. คำสั่งหนึ่งอักขระ (command letter) 2. เลขที่อยู่ (address) 3. ชื่อเรจิสเตอร์ (register name) 4. ชื่อแฟ้มข้อมูล (file name) 5. ชื่อไดรฟ์ (drive name) 6. ข้อมูล (data) ชนิดของข่าวสารที่เป็นส่วน ของคำสั่งดีบัก
5
1. คำสั่งตรวจสอบและแก้ไขค่าใน หน่วยความจำ 2. คำสั่งเขียนและให้โปรแกรม ทำงาน 3. คำสั่งโหลดและเซฟ แบ่งคำสั่งดีบักใน ได้ 3 กลุ่ม
6
กลุ่มคำสั่งตรวจสอบ และแก้ไขค่า ในหน่วยความจำนี้ มีความจำเป็นต่อ การตรวจสอบแก้ไขโปรแกรม เช่น อาจ ต้องตรวจสอบค่าในหน่วยความจำก่อน และหลังโปรแกรมทำงาน กลุ่มคำสั่งนี้มี DUMP, ENTER, FILL, MOVE, COMPARE และ SEARCH ชนิดของข่าวสารที่เป็นส่วน ของคำสั่งดีบัก
7
1. D = dump คำสั่งนี้แสดงข้อมูลบางส่วนใน หน่วยความจำ แสดงไบต์ของหมายเลข รหัสแอสกีและอักขระของรหัสนั้น สามารถระบุเลขที่อยู่เริ่มต้นและเลขที่อยู่ สุดท้ายของหน่วยความจำที่ต้องการ ถ้า ไม่ระบุเลขที่อยู่สุดท้าย
8
ดีบักจะแสดงให้ 8 แถว แต่ละแถว แสดง 16 ไบต์ ตัวเลขที่แสดงเป็น เลขฐานสิบหก (Hexadecimal) และ ค่าดีฟอลต์ของคำสั่ง DUMP นี้เป็น เซกเมนต์ข้อมูล (Data Segment) รูปแบบคำสั่ง D [starting address] [ending address]
9
การระบุเลขที่อยู่หน่วยความจำที่ ต้องการทำงานในดีบัก สามารถระบุเป็นเร จิสเตอร์คู่เซกเมนต์และออฟเซต หรือ เพียงระบุเลขที่อยู่เพียงค่าออฟเซต ดีบัก จะใช้เซกเมนต์ด้วยค่าที่เป็นค่าที่กำหนด โดยปริยายหรือค่าดีฟอลต์ (Default) คำสั่งที่จัดการกับข้อมูลในหน่วยความจำ มีดีฟอลต์เซกเมนต์เป็นเซกเมนต์ ข้อมูล (Data Segment)
10
ดีบักแสดงผลเป็นสามคอลัมน์ คอลัมน์แรกทางซ้ายแสดงเลขที่อยู่ คอลัมน์ที่สองแสดงไบต์ของข้อมูลเป็น เลขฐานสิบหก ค่าหนึ่งไบต์เป็น เลขฐานสิบหกสองหลักจำนวน 16 ไบต์ ต่อแถว คอลัมน์ทางขวาแสดงอักขระ ของรหัสแอสกี (ASCII = American Standard Code for Information Interchange) ของแอสกีของอักขระใน คอลัมน์ที่สอง ซึ่งในบางเลขที่อยู่ แสดงอักขระเป็น dots (.) สำหรับ อักขระเป็น nonprintable เช่น แอสกี หมายเลข 00h และ FFh
11
2. E = Enter แก้ไขค่าในหน่วยความจำ รูปแบบคำสั่ง E [address] [list] address เลขที่อยู่หน่วยความจำ ที่ต้องการแก้ไขค่า list ชุดของข้อมูลที่ให้ แทนที่ในเลขที่อยู่ที่ระบุ
12
3. F = fill เติมบางส่วนของหน่วยความจำ เป็นกลุ่มหรือเป็นบล็อกด้วยค่าที่ระบุ รูปแบบคำสั่ง F [starting address] [ending address] [list]
13
4. M=Move คำสั่งนี้ให้ผู้ใช้ก๊อบปี้บล็อกข้อมูลจาก ตำแหน่งหนึ่งไปยังอีกตำแหน่งหนึ่งใน หน่วยความจำ รูปแบบคำสั่ง M [starting address] [ending address] [destination address]
14
5. C=Compare เปรียบเทียบบล็อกข้อมูลสอง บล็อกในหน่วยความจำ รูปแบบคำสั่ง C [starting address] [ending address] [destination]
15
ผลการโต้ตอบของดีบักเป็นดังนี้ ดีบักจะแสดงหมายเลขที่อยู่และค่าใน ทั้งสองตำแหน่งนั้น ที่พบว่ามีข้อมูลไม่ เหมือนกัน ( ถ้าในบล็อกทั้งสองมีข้อมูล ที่เหมือนกัน ดีบักจะไม่แสดงผลใด ๆ )
16
6. S=Search ค้นหาข้อมูลในหน่วยความจำ ถ้า ค้นหาพบ ดีบักจะแสดงหมายเลขเลขที่อยู่ ให้ รูปแบบคำสั่ง S [starting address] [ending address] [list]
17
เรจิสเตอร์ภายในซีพียูเป็นเสมือน ตัวแปรที่มีให้ใช้ แต่เรจิสเตอร์แต่ละ ตัวมีหน้าที่เฉพาะทางอยู่บ้าง และ บางเรจิสเตอร์ก็เปลี่ยนค่าไปอย่าง อัตโนมัติ เช่น IP จะชี้ที่อยู่ของ คำสั่งถัดไปที่จะทำงาน การจัดการกับเรจิ สเตอร์
18
ในดีบักมีคำสั่งของแสดงค่าในเร จิสเตอร์แต่ละตัว และ ผู้ใช้สามารถ แก้ไขค่าในเรจิสเตอร์ได้ด้วยคำสั่ง R (Register) การแก้ไขค่าในเรจิสเตอร์ ใช้คำสั่ง R ตามด้วยชื่อเรจิสเตอร์ที่ ต้องการ
19
เช่น RAX หมายถึงต้องการแก้ไขค่า ของเรจิสเตอร์ AX โดยดีบักจะแสดง ค่าของเรจิสเตอร์นั้น และยอมให้ผู้ใช้ ป้อนเข้าค่าใหม่ลงไปได้ -rax AX 0000 ค่าเดิม : ป้อนเข้าค่า ใหม่
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.