อ่าน 2 นาที
โปรแกรมแก้ไขเลขฐานสิบหก
โปรแกรมแก้ไขข้อมูลแบบเลขฐานสิบหก ( hex editor ) หรือเลขฐานสอง (binary editor ) หรือไบต์ (byte editor ) คือ ซอฟต์แวร์ที่อนุญาตให้แก้ไขข้อมูล ในรูป แบบ...
โปรแกรมแก้ไขเลขฐานสิบหก

โปรแกรมแก้ไขข้อมูลแบบเลขฐานสิบหก ( hex editor ) หรือเลขฐานสอง (binary editor ) หรือไบต์ (byte editor ) คือ ซอฟต์แวร์ที่อนุญาตให้แก้ไขข้อมูล ในรูป แบบ ข้อมูลไบนารีโดยเฉพาะอย่างยิ่งมีประโยชน์สำหรับการแก้ไขข้อมูล ที่ไม่ สามารถอ่านได้ด้วยตา เปล่า แต่สามารถใช้กับข้อมูลใดๆ ก็ได้ โดยทั่วไปแล้ว โปรแกรมแก้ไขเลขฐานสิบหกเป็นโปรแกรม แบบสแตนด์อโลน และประสบการณ์การใช้งานจะคล้ายกับโปรแกรมแก้ไขข้อความผู้ใช้สามารถดูและแก้ไขเนื้อหาดิบและแม่นยำของไฟล์ได้ ซึ่งแตกต่างจากการตีความเนื้อหาที่ซอฟต์แวร์แอปพลิเคชัน ระดับสูงกว่า อาจเชื่อมโยงกับรูปแบบไฟล์ตัวอย่างเช่น นี่อาจเป็นไบต์ข้อมูลที่แสดงถึงรูปภาพแทนที่จะเป็นการแสดงผลแบบกราฟิก
โดยทั่วไป ข้อมูลจะถูกจัดกลุ่มเป็น 4 กลุ่ม กลุ่มละ 4 ไบต์หรือ 2 กลุ่ม กลุ่มละ 8 ไบต์ ตามด้วยกลุ่ม อักขระ ASCII ที่พิมพ์ได้ 16 ตัว ซึ่งสอดคล้องกับค่าเลขฐานสิบหกแต่ละคู่ (ในแต่ละไบต์) อักขระ ASCII ที่พิมพ์ไม่ได้มักจะแทนด้วยจุด (".") ในฟิลด์ ASCII
โปรแกรมแก้ไขเลขฐานสิบหก ( Hex Editor) บางครั้งถูกใช้เพื่อแก้ไข ปัญหา ข้อมูลเสียหายมันอาจมีประโยชน์ในการข้ามการตรวจสอบการแก้ไขของแอปพลิเคชันซึ่งอาจป้องกันการแก้ไขข้อมูลที่ผิดพลาด มันถูกใช้เพื่อ "แก้ไข" โปรแกรมที่ทำงานได้ (เปลี่ยนแปลงหรือเพิ่มคำสั่งบางอย่าง) เป็นทางเลือกแทนการคอมไพล์ใหม่ การแก้ไขโปรแกรมสำหรับ ระบบ เมนเฟรมของ IBMบางครั้งถูกแจกจ่ายในรูปแบบแพทช์แทนที่จะแจกจ่ายสำเนาโปรแกรมที่ได้รับผลกระทบฉบับสมบูรณ์
ประวัติศาสตร์ยุคแรก
นับตั้งแต่การประดิษฐ์คอมพิวเตอร์และการใช้งานต่างๆ ได้มีการสร้างรูปแบบไฟล์ที่หลากหลาย ในบางสถานการณ์พิเศษ การเข้าถึงข้อมูลในรูปแบบชุดตัวเลขดิบนั้นสะดวกกว่า โปรแกรมที่ชื่อว่า SUPERZAP (AMASPZAP) มีให้ใช้งานสำหรับระบบ IBM OS/360ซึ่งสามารถแก้ไขระเบียนดิสก์ดิบและเข้าใจรูปแบบของไฟล์ปฏิบัติการได้[ 1 ]คู่ของ ตัวเลขฐาน สิบหก (แต่ละคู่สามารถแทนไบต์ได้) เป็นมาตรฐานในปัจจุบัน เนื่องจากเครื่องและรูปแบบไฟล์ส่วนใหญ่ที่ใช้ในปัจจุบันจัดการข้อมูลในหน่วยหรือกลุ่มของไบต์ 8 บิต ฐานสิบหกและฐานแปดเป็นที่นิยมใช้กันทั่วไป เนื่องจากตัวเลขเหล่านี้ช่วยให้เห็นว่าบิตใดในไบต์ถูกตั้งค่า ขึ้นอยู่กับเนื้อหาของข้อมูล ฐานสิบหรือฐานตัวเลขอื่นๆ แทนการแสดงผลฐานสิบหกสามารถรองรับการดำเนินการแก้ไขโดยใช้ระบบเทมเพลตและตัวตรวจสอบข้อมูลได้เช่นกัน
ระบบแม่แบบ

โปรแกรมแก้ไขเลขฐานสิบหกบางโปรแกรมมีระบบเทมเพลตที่สามารถแสดงลำดับไบต์ของไฟล์ไบนารีในรูปแบบที่มีโครงสร้าง ครอบคลุมส่วนใดส่วนหนึ่งหรือทั้งหมดของรูปแบบไฟล์ที่ต้องการ โดยปกติแล้วGUIสำหรับเทมเพลตจะเป็นหน้าต่างเครื่องมือแยกต่างหากที่อยู่ถัดจากโปรแกรมแก้ไขเลขฐานสิบหกหลักระบบโกงเกม บาง ระบบประกอบด้วย GUI เทมเพลตแบบนี้เพียงอย่างเดียว
โดยทั่วไป เทมเพลตจะแสดงเป็นรายการของกล่องข้อความที่มีป้ายกำกับ เพื่อให้สามารถแก้ไขค่าแต่ละค่าในไฟล์ได้อย่างง่ายดายในรูปแบบที่เหมาะสม (เช่น สตริง สี หรือตัวเลขทศนิยม) หากไม่มีการสนับสนุนเทมเพลต จำเป็นต้องค้นหาตำแหน่งที่ถูกต้องในไฟล์ที่เก็บค่าที่จะเปลี่ยนแปลงไว้ นอกจากนี้ การแก้ไขเลขฐานสิบหกโดยตรงอาจต้องแปลงจากเลขฐานสิบหกเป็นเลขฐานสิบ เพื่อรองรับลำดับไบต์หรือความเฉพาะเจาะจงอื่นๆ ในการแปลงประเภทข้อมูล
เทมเพลตสามารถจัดเก็บเป็นไฟล์ได้ ทำให้ผู้ใช้สามารถแลกเปลี่ยนไฟล์กันได้ และมักจะเผยแพร่สู่สาธารณะผ่านทางเว็บไซต์ของผู้ผลิต โปรแกรมแก้ไขเลขฐานสิบหกส่วนใหญ่หรือทั้งหมดกำหนดรูปแบบไฟล์เทมเพลตของตนเอง ไม่มีแนวโน้มที่จะสนับสนุนมาตรฐานหรือแม้แต่ความเข้ากันได้ระหว่างรูปแบบต่างๆ ที่มีอยู่ทั่วไป
ระบบการเขียนสคริปต์
โปรแกรมแก้ไขเลขฐานสิบหกขั้นสูงมีระบบสคริปต์ที่ช่วยให้ผู้ใช้สร้างฟังก์ชันการทำงานคล้ายมาโครได้ โดยใช้ลำดับคำสั่งในส่วนติดต่อผู้ใช้เพื่อทำงานอัตโนมัติในงานทั่วไป สิ่งนี้สามารถนำไปใช้ในการสร้างสคริปต์ที่แก้ไขไฟล์โดยอัตโนมัติ (เช่น การโกงเกม การดัดแปลง หรือการแก้ไขผลิตภัณฑ์ที่มาจากชุมชน) หรือเพื่อเขียนเทมเพลตที่ซับซ้อน/ชาญฉลาดกว่าได้
ภาษาสคริปต์มีความหลากหลายอย่างมาก โดยมักจะมีทั้งภาษาเฉพาะผลิตภัณฑ์ที่คล้ายกับไฟล์แบตช์ ของ MS-DOS ไปจนถึงระบบที่รองรับภาษาสคริปต์อย่างเต็มรูปแบบ เช่นLuaหรือPython
ระบบปลั๊กอิน
โปรแกรมแก้ไขข้อความบางโปรแกรมมี ระบบ ปลั๊กอินที่ช่วยให้สามารถขยาย GUI และเพิ่มฟังก์ชันการทำงานใหม่ ๆ ได้ โดยปกติจะโหลดไลบรารีลิงก์แบบไดนามิกที่เขียนด้วยภาษาที่เข้ากันได้กับภาษา C (ระบบปฏิบัติการต่าง ๆ ใช้รูปแบบไลบรารีลิงก์แบบไดนามิกที่แตกต่างกัน: DLL สำหรับ Windows, SO สำหรับ Linux และ Dylib สำหรับ macOS)
ดูเพิ่มเติม
ลิงก์ภายนอก
- โครงการข้อมูลลินุกซ์ (Linux Information Project). "คำจำกัดความของโปรแกรมแก้ไขเลขฐานสิบหก" (Hex Editor Definition) . สืบค้นเมื่อ30 พฤษภาคม 2553 .
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ โปรแกรมแก้ไขเลขฐานสิบหก
โปรแกรมแก้ไขข้อมูลแบบเลขฐานสิบหก ( hex editor ) หรือเลขฐานสอง (binary editor ) หรือไบต์ (byte editor ) คือ ซอฟต์แวร์ที่อนุญาตให้แก้ไขข้อมูล ในรูป แบบ...
ประวัติศาสตร์ยุคแรก
นับตั้งแต่การประดิษฐ์คอมพิวเตอร์และการใช้งานต่างๆ ได้มีการสร้างรูปแบบไฟล์ที่หลากหลาย ในบางสถานการณ์พิเศษ การเข้าถึงข้อมูลในรูปแบบชุดตัวเลขดิบนั้นสะดวกกว่า โปรแกรมที่ชื่อว่า SUPERZAP (AMASPZAP) มีให้ใช้งานสำหรับระบบ IBM OS/360...
ระบบแม่แบบ
โปรแกรมแก้ไขเลขฐานสิบหกบางโปรแกรมมีระบบเทมเพลตที่สามารถแสดงลำดับไบต์ของ ไฟล์ไบนารี ในรูปแบบที่มีโครงสร้าง ครอบคลุมส่วนใดส่วนหนึ่งหรือทั้งหมดของรูปแบบไฟล์ที่ต้องการ โดยปกติแล้ว GUI...
ระบบการเขียนสคริปต์
โปรแกรมแก้ไขเลขฐานสิบหกขั้นสูงมีระบบสคริปต์ที่ช่วยให้ผู้ใช้สร้างฟังก์ชันการทำงานคล้ายมาโครได้ โดยใช้ลำดับคำสั่งในส่วนติดต่อผู้ใช้เพื่อทำงานอัตโนมัติในงานทั่วไป สิ่งนี้สามารถนำไปใช้ในการสร้างสคริปต์ที่แก้ไขไฟล์โดยอัตโนมัติ (เช่น การโกงเกม การดัดแปลง...