Qual é a diferença entre arquivo binário e arquivo .exe? [fechadas]

13

Alguém pode distinguir a diferença entre arquivo binário e arquivo .exe?

user2720323
fonte
"Arquivo binário" requer mais qualificação / contexto, pois possui vários significados.
Ignacio Vazquez-Abrams
1
O objetivo desta pergunta é esclarecer os arquivos binários x executáveis ou a diferença entre as extensões.bin e o .exe nome do arquivo ?
L0b0
1
A questão está bem. Eles estão falando sobre o uso coloquial da palavra binário. Se a palavra binário for ambígua, a resposta deve ser mais abrangente. Veja a resposta aceita.
user391339

Respostas:

29

O arquivo binário é praticamente tudo o que não é texto simples , ou seja, contém dados codificados de maneira diferente da codificação de texto (ASCII, UTF-8 ou qualquer outra codificação de texto, por exemplo, ISO-8859-2). Um arquivo de texto pode ser um documento de texto sem formatação, como uma história ou uma carta, pode ser um arquivo de configuração ou um arquivo de dados - de qualquer maneira, se você usar um editor de texto sem formatação para abri-lo, o conteúdo será legível. Um binário é qualquer arquivo que não seja um arquivo de texto (nem "especial" como fifo, diretório, dispositivo etc.)

Isso pode ser uma música mp3. Pode ser uma imagem jpg. Pode ser um arquivo compactado ou mesmo um documento com processador de texto - enquanto, para fins práticos, é texto, ele é codificado (gravado no disco) como binário. Você precisa de um programa específico para abri-lo e compreendê-lo - para um editor de texto, o conteúdo é uma bagunça.

Agora, no Linux, você costuma ouvir "binários" quando se refere a "arquivos executáveis ​​binários" - programas. Isso ocorre porque, embora as fontes da maioria dos programas (escritas em linguagens de alto nível) sejam texto simples, os executáveis ​​compilados são binários. Como existem muitos formatos compilados (a.out, ELF, bytecode ...), eles são comumente chamados de binários, em vez de se concentrar na estrutura interna que eles têm - do ponto de vista do usuário, eles são praticamente os mesmos.

Agora, o .exe é apenas outro desses formatos compilados - um comum ao MS Windows. É apenas uma espécie de binários, compilados e vinculados à API do Windows.

SF.
fonte
2

Os arquivos em lote são na verdade apenas arquivos de texto ou pequenos scripts que podem ser executados pelo processador de linha de comando - "cmd.exe", onde são amplamente utilizados no ambiente DOS para automatizar tarefas comuns.

Os arquivos EXE são diferentes dos arquivos BAT, pois contêm dados binários executáveis ​​em vez de comandos de texto sem formatação. Eles são armazenados no formato Portable Executable (PE). O formato do arquivo EXE inclui vários cabeçalhos e seções que informam ao Windows como executar um programa. Algumas partes de um arquivo EXE podem conter código de programa, enquanto outras podem conter dados de recursos.

David_DD
fonte
0

Geralmente, pode-se dizer que não há diferença: nos executáveis ​​do sistema operacional MS Windows têm nomes *.exe, mas nos executáveis ​​do sistema operacional * nix-like podem ser nomeados como quiser e são chamados de "arquivos binários".

Mas isso não significa que todo arquivo binário seja executável (como *.exe): os binários podem ser apenas um tipo de armazenamento de informações. Por exemplo, arquivos de banco de dados (como arquivos MyISAM ou InnoDB para bancos de dados MySQL) também são arquivos binários (mas não executáveis).

AntonioK
fonte