Binær fil

En binær fil (noen ganger til og med ganske enkelt "binær" ), i informatikk , er en fil som kan inneholde alle typer data, kodet i binær kode for lagring eller bruk (for eksempel dokumentfiler som inneholder formatert tekst ). Mange binære filformater inneholder deler som kan tolkes som tekst, men som per definisjon skilles fra faktiske tekstfiler : en binær fil er en fil som ikke bare inneholder ren tekst.

Binære filformater

Binære filer blir vanligvis sett på som sekvenser av byte : de individuelle bitsifrene som utgjør filen er gruppert i grupper på åtte. Disse filene inneholder byte som generelt må tolkes annerledes enn tegn : kompilerte filer er et eksempel (programmerere refererer ofte til objektkode som "binær"), men de kan være bilder, musikk, komprimerte data eller av hvilken som helst annen type.

Noen binære filer inneholder overskrifter , som er metadatabeholdere som brukes av programmer knyttet til filer for å gjenkjenne og tolke innholdet deres. For eksempel kan en GIF -fil inneholde flere bilder, og overskrifter brukes til å identifisere og beskrive hver datablokk.

Ledelse

Noen systemer tillater ikke bruk av binære filer (som e-post ). Derfor er det i disse tilfellene ofte nødvendig å konvertere dem og representere dem som vanlige tekstfiler (for eksempel med Base64 -koding ). Denne metoden har ulempen ved å øke filstørrelsen med omtrent 30 %, i tillegg til at den krever dekoding etter at transaksjonen er fullført.

Windows lar programmereren spesifisere en parameter for et systemanrop som indikerer om filen er tekst eller binær. Ellers behandler Unix og dets derivater alle filer som binære. Dette fremhever hvordan skillet mellom de to filtypene fra et visst synspunkt er vilkårlig.

Lagring

Den binære filen er lagret i minnet med en sekvens av byte.
Hvis vi vil huske tallet 1365, vil vi i minnet finne 2 byte, den første inneholder tallet 5 og den andre inneholder tallet 85.
Først av alt må vi transformere tallet 1365 til grunntallet 2.

1365/2 = 682 med resten av 1
682/2 = 341 med resten av 0
341/2 = 170 med resten av 1
170/2 = 85 med resten av 0
85/2 = 42 med resten av 1
42/2 = 21 med resten av 0
21/2 = 10 med resten av 1
10/2 = 5 med resten av 0
5/2 = 2 med resten av 1
2/2 = 1 med resten av 0
1/2 = 0 med resten av 1

Tallet i base 2 leser fra bunn til topp, derfor er det 10101010101.
Du må dele det ned i 2 byte med 8 sifre hver ved å legge til 0-er foran tallet for å få tallet til å nå 8 biter.

00000101 01010101

la oss nå transformere det første tallet til grunntallet 10: 2 0 + 2 2 = 1 + 4 = 5

la oss nå transformere det andre tallet til grunntallet 10: 2 0 + 2 2 + 2 4 + 2 6 = 1 + 4 + 16 + 64 = 85

Vis

Ved å åpne en binær fil med et tekstredigeringsprogram vil hver gruppe på åtte biter bli punktlig tolket og oversatt som et tegn, og en helt uforståelig sekvens (med mindre det er tilfeldigheter eller tekstinnlegg i filen) av bokstaver vil vises. Hvis den åpnes med en annen type applikasjon, vil den tolke enkeltbytene til filen på sin egen måte: den kan matche et siffer med dem, og returnere en nesten tilfeldig rekkefølge av tall; eller hvis filen gjenkjennes som kjørbar , vil datamaskinen se etter maskinspråkinstruksjoner i dem .

Du kan bruke en heksadesimal editor som viser hver byte i filen som et heksadesimalt siffer , slik at du kan redigere innholdet direkte. Dette er imidlertid ikke en vanlig eller praktisk operasjon, bortsett fra i spesielle eller spesifikke tilfeller.

Relaterte elementer