ทุกคนสามารถแยกความแตกต่างระหว่างไฟล์ไบนารีและไฟล์. exe ได้หรือไม่
.bin
และ.exe
นามสกุลของไฟล์ ?
ทุกคนสามารถแยกความแตกต่างระหว่างไฟล์ไบนารีและไฟล์. exe ได้หรือไม่
.bin
และ.exe
นามสกุลของไฟล์ ?
คำตอบ:
ไฟล์ไบนารีนั้นค่อนข้างทุกอย่างที่ไม่ใช่ข้อความล้วนที่มีการเข้ารหัสข้อมูลในรูปแบบที่แตกต่างจากการเข้ารหัสข้อความ (ASCII, UTF-8 หรือการเข้ารหัสข้อความอื่น ๆ เช่น ISO-8859-2) ไฟล์ข้อความอาจเป็นเอกสารธรรมดาเช่นเรื่องหรือตัวอักษรอาจเป็นไฟล์กำหนดค่าหรือไฟล์ข้อมูล - อย่างไรก็ตามถ้าคุณใช้โปรแกรมแก้ไขข้อความธรรมดาเพื่อเปิดเนื้อหาจะสามารถอ่านได้ ไบนารีคือไฟล์ใด ๆ ที่ไม่ใช่ไฟล์ข้อความ (หรือ "พิเศษ" เช่น Fifo, ไดเรกทอรี, อุปกรณ์และอื่น ๆ )
นั่นอาจเป็นเพลง mp3 นั่นอาจเป็นภาพ jpg นั่นอาจเป็นไฟล์บีบอัดที่บีบอัดหรือแม้กระทั่งเอกสารเวิร์ดโปรเซสเซอร์ - ในขณะที่ข้อความที่ใช้งานได้จริงจะถูกเข้ารหัส (เขียนบนดิสก์) เป็นไบนารี่ คุณต้องใช้โปรแกรมเฉพาะเพื่อเปิดใช้เพื่อให้เข้าใจได้ - สำหรับโปรแกรมแก้ไขข้อความเนื้อหาจะยุ่งเหยิง
ตอนนี้ใน Linux คุณมักจะได้ยิน "ไบนารี" เมื่ออ้างถึง "ไฟล์ปฏิบัติการไบนารี" - โปรแกรม นี่เป็นเพราะในขณะที่แหล่งที่มาของโปรแกรมส่วนใหญ่ (เขียนในภาษาระดับสูง) เป็นข้อความธรรมดาปฏิบัติการที่คอมไพล์แล้วเป็นไบนารี เนื่องจากมีรูปแบบที่รวบรวมค่อนข้างน้อย (a.out, ELF, bytecode ... ) จึงมักถูกเรียกว่าไบนารีแทนที่จะอาศัยโครงสร้างภายในที่พวกเขามี - จากมุมมองของผู้ใช้
ตอนนี้. exe เป็นเพียงอีกหนึ่งรูปแบบที่คอมไพล์แล้วซึ่งเป็นหนึ่งใน MS Windows มันเป็นเพียงไบนารีที่รวบรวมและเชื่อมโยงกับ Windows API
ไฟล์แบทช์เป็นเพียงไฟล์ข้อความหรือสคริปต์ขนาดเล็กซึ่งสามารถประมวลผลโดยตัวประมวลผลบรรทัดคำสั่ง - "cmd.exe" ซึ่งเป็นไฟล์ที่ใช้กันอย่างแพร่หลายในสภาพแวดล้อม DOS เพื่อการทำงานอัตโนมัติทั่วไป
ไฟล์ EXE นั้นแตกต่างจากไฟล์ BAT เนื่องจากมีข้อมูลไบนารี่ที่สามารถใช้งานได้มากกว่าคำสั่งข้อความธรรมดา พวกเขาจะถูกเก็บไว้ในรูปแบบ Portable Executable (PE) รูปแบบไฟล์ EXE ประกอบด้วยส่วนหัวและส่วนต่าง ๆ ที่บอก Windows ถึงวิธีการเรียกใช้โปรแกรม บางส่วนของไฟล์ EXE อาจมีรหัสโปรแกรมในขณะที่คนอื่นอาจมีข้อมูลทรัพยากร
โดยทั่วไปอาจกล่าวได้ว่าไม่มีความแตกต่าง: ในโปรแกรมปฏิบัติการ MS Windows OS มีชื่อ*.exe
แต่ในโปรแกรมปฏิบัติการ * เหมือน nix สามารถตั้งชื่อสิ่งที่คุณต้องการและเรียกว่า "ไฟล์ไบนารี"
แต่มันไม่ได้หมายความว่าทุกไฟล์ไบนารี่สามารถเรียกใช้งานได้ (เช่น*.exe
): ไบนารีอาจเป็นเพียงแหล่งเก็บข้อมูล ตัวอย่างเช่นไฟล์ฐานข้อมูล (เช่นไฟล์ MyISAM หรือ InnoDB สำหรับฐานข้อมูล MySQL) เป็นไฟล์ไบนารีเช่นกัน (แต่ไม่สามารถใช้งานได้)