บทที่ 2 การเขียนโปรแกรมเบื้องต้น

การเขียนโปรแกรมโดยการใช้ดีบัก (Debug)

การเขียนโปรแกรมโดยดีบัก(debug) ซึ่งเป็นคำสั่งที่มีอยู่ในระบบปฏิบัติการ Dos
1. ใช้โปรแกรมภาษา แอสแซมบลี้ คือ TASM (Turbo Assembly) หรือ MASM (Macro Assembly ) โดยทั่วไปเขียนด้วยวิธีนี้
2. ใช้โปรแกรม Debug (ดีบัก) แต่ดีบักไม่ใช่โปรแกรม Assembler แต่สามารถเขียนโปรแกรมภาษา แอสแซมบลี้ สั้นๆ ได้ ถ้าเป็นโปรแกรมยาวๆไม่ควรใช้

เปรียบเทียบการเขียนโดยการใช้ debug บน DOS กับ การเขียนบน Assembler
Debug
Assembler
1. Run ได้ง่าย 1. Run ได้ยาก
2. ไม่มีโปรแกรมในส่วนหัว (Heading Program) 2. มีโปรแกรมในส่วนหัวมาก
3.เป็นคำสั่งที่ใกล้เคียงกลับภาษาเครื่องมาก 3. การเขียนคำสั่งจะต้องมีรูปแบบ
4. ความสามารถไม่สูงมากนัก 4. ความสามารถสูงมาก
5.ใช้กับโปรแกรมสั้นๆได้ดี 5. ใช้กับโปรแกรมยาวๆได้ดี
คำสั่งที่ใช้ในการดีบัก (Debug)
วิธีเข้าสู่การดีบัก (Debug)
• ออกไปที่ Dos Prompt จะได้ C:\>
• พิมพ์คำว่า Debug จะได้สัญลักษณ์ “-”
- E คือ Enter ตามด้วยตำแหน่งที่จะใส่ข้อมูลลงไป (ป้อนข้อมูลขนาด 1 byte หรือ หลายไบต์) เช่น E100 หมายถึง การใส่ข้อมูลในตำแหน่ง 100h (ตำแหน่ง Offset)
- A คือ คำสั่ง Assembler การป้อนข้อมูลเข้าไปในหน่วยความจำ โดยการใช้คำสั่ง (Mnemonic Symbols) ไม่ต้องป้อนตัวเลขฐาน 16 เหมือนกับคำสั่ง E เช่น A100 หลังจากนั้นให้ใส่คำสั่งไป ตัวอย่าง ADD AX,BX
- U คือ คำสั่ง Unassembler เป็นคำสั่งที่ทำการแปลงค่าของคำสั่งนั้นเป็นโปรแกรมกลับคืนมาให้เราดู เมื่อนำข้อมูลเข้าไปแบบ A หรือ E จะทำการแปลงเป็นสัญลักษณ์ Mnemonic ไปเป็นเลขฐาน 16 แต่คำสั่ง U จะทำการแปลงเลขฐาน 16 เป็นรหัส Mnemonic (นีโมนิค)
รูปแบบ – U จะเป็นการดูโปรแกรมทั้ง Segment
        -U ตำแหน่ง Offset เริ่มต้น, ตำแหน่ง Offset สุดท้าย หมายถึงการดูโปรแกรมเป็นช่วง
- G คือ คำสั่ง GO เป็นการประมวลผลคำสั่งที่ป้อนเข้าไปทั้งหมด เช่น G
- T คือ คำสั่ง Trace เป็นคำสั่งที่ใช้ในการประมวลผลครางละ 1 คำสั่ง เช่น T
- D คือ Dump Address เป็นการดูตำแหน่งการเก็บข้อมูลนั้น ขึ้นมาปรากฏบนหน้าจอ เช่น D ตามด้วยค่าของ ตำแหน่ง ตัวอย่างเช่น D100 เป็นการดูข้อมูลตัวเลขฐาน 16 ที่จัดเก็บในเครื่องในตำแหน่ง Offset 100h
-R เป็นคำสั่งในการตรวจสอบค่าในจีสเตอร์ต่างๆ และเป็นการกำหนดค่าให้กับ รีจีสเตอร์ต่างๆ