बाइनरी फ़ाइल और .exe फ़ाइल के बीच अंतर क्या है? [बन्द है]


13

क्या कोई भी बाइनरी फ़ाइल और .exe फ़ाइल के बीच अंतर कर सकता है?


"बाइनरी फ़ाइल" को और अधिक योग्यता / संदर्भ की आवश्यकता है, क्योंकि इसके कई अर्थ हैं।
इग्नासियो वाज़केज़-अब्राम्स

1
इस सवाल का उद्देश्य स्पष्ट करने के लिए है द्विआधारी बनाम निष्पादन योग्य फ़ाइलें, या बीच का अंतर .binऔर .exe फ़ाइल नाम एक्सटेंशन ?
l0b0

1
सवाल ही ठीक है। वे द्विआधारी शब्द के बोलचाल के उपयोग के बारे में बात कर रहे हैं। यदि बाइनरी शब्द अस्पष्ट है तो उत्तर अधिक व्यापक होना चाहिए। स्वीकृत उत्तर देखें।
user391339

जवाबों:


29

बाइनरी फ़ाइल बहुत कुछ है जो सादा पाठ नहीं है , जिसमें पाठ एन्कोडिंग (एएससीआईआई, यूटीएफ -8, या किसी अन्य पाठ एन्कोडिंग, जैसे आईएसओ-8859-2) की तुलना में किसी भी तरह से एन्कोडेड डेटा शामिल है। एक टेक्स्ट फाइल एक प्लेनटेक्स्ट डॉक्यूमेंट हो सकती है, कहानी या पत्र की तरह, यह एक कॉन्फिग फाइल या डेटा फाइल हो सकती है - वैसे भी, यदि आप इसे खोलने के लिए एक प्लेन टेक्स्ट एडिटर का उपयोग करते हैं, तो सामग्री पठनीय है। एक द्विआधारी कोई भी फाइल है जो एक पाठ फ़ाइल नहीं है (न ही "विशेष" जैसे कि फीफो, निर्देशिका, डिवाइस आदि।

यह एक एमपी 3 संगीत हो सकता है। यह एक jpg इमेज हो सकती है। यह एक संपीड़ित संग्रह, या यहां तक ​​कि एक शब्द प्रोसेसर दस्तावेज़ भी हो सकता है - जबकि व्यावहारिक उद्देश्यों के लिए यह पाठ है, यह बाइनरी के रूप में एन्कोडेड (डिस्क पर लिखा) है। आपको इसे खोलने के लिए एक विशिष्ट कार्यक्रम की आवश्यकता है, इसका अर्थ बनाने के लिए - एक पाठ संपादक के लिए सामग्री एक गड़बड़ गड़बड़ है।

अब, लिनक्स में आप अक्सर "द्विआधारी निष्पादन योग्य फ़ाइलों" का उल्लेख करते हुए "बायनेरिज़" सुनेंगे - कार्यक्रम। ऐसा इसलिए है क्योंकि अधिकांश कार्यक्रमों के स्रोत (उच्च-स्तरीय भाषाओं में लिखे गए) सादे पाठ हैं, संकलित निष्पादनयोग्य द्विआधारी हैं। चूंकि काफी कुछ संकलित प्रारूप (a.out, ELF, bytecode ...) हैं, इसलिए उन्हें आमतौर पर बायनेरी कहा जाता है, बजाय इसके कि उनके पास आंतरिक संरचना क्या है - उपयोगकर्ता के दृष्टिकोण से वे बहुत समान हैं।

अब, .exe इन संकलित प्रारूपों में से एक और है - एमएस विंडोज के लिए एक सामान्य। यह विंडोज एपीआई के खिलाफ सिर्फ एक तरह की बायनेरी, संकलित और जुड़ी हुई है।


2

बैच फाइलें वास्तव में सिर्फ पाठ फाइलें, या छोटी स्क्रिप्ट हैं जिन्हें कमांड लाइन प्रोसेसर - "cmd.exe" द्वारा निष्पादित किया जा सकता है, वे जहां आम कार्यों के स्वचालन के लिए डॉस वातावरण में व्यापक रूप से उपयोग किया जाता है।

EXE फाइलें BAT फाइलों से भिन्न होती हैं क्योंकि इनमें सादे पाठ कमांड के बजाय निष्पादन योग्य बाइनरी डेटा होता है। वे पोर्टेबल निष्पादन योग्य (पीई) प्रारूप में संग्रहीत किए जाते हैं। EXE फ़ाइल प्रारूप में विभिन्न हेडर और अनुभाग शामिल हैं जो विंडोज को प्रोग्राम चलाने के तरीके बताते हैं। EXE फ़ाइल के कुछ हिस्से में प्रोग्राम कोड हो सकता है जबकि अन्य में संसाधन डेटा हो सकता है।


0

आम तौर पर यह कहा जा सकता है कि कोई अंतर नहीं है: एमएस विंडोज ओएस में निष्पादन योग्य नाम होते हैं *.exe, लेकिन * nix-like OS निष्पादक को आप जो पसंद करते हैं उसका नाम दिया जा सकता है और "बाइनरी फाइल" कहा जाता है।

लेकिन इसका मतलब यह नहीं है कि प्रत्येक बाइनरी फ़ाइल निष्पादन योग्य है (जैसे *.exe): बायनेरिज़ केवल एक प्रकार की सूचना भंडारण हो सकता है। उदाहरण के लिए, डेटाबेस फाइलें (जैसे MySQL डेटाबेस के लिए MyISAM या InnoDB फाइलें) बाइनरी फाइलें भी हैं (लेकिन निष्पादन योग्य नहीं हैं)।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.