Binair bestand
Uit Wikipedia, de vrije encyclopedie
Een binair bestand is een computerbestand dat om het even welk soort gegevens kan bevatten, gecodeerd in een binair formaat dat een computer kan opslaan en verwerken. Veel bestandsformaten bevatten stukken gegevens die als tekst kunnen gelezen worden; binaire bestanden die enkel platte tekst bevatten worden tekstbestanden genoemd. In de praktijk ziet men tekstbestanden vaak als het tegengestelde van binaire bestanden: alle bestanden die niet enkel tekst bevatten noemt men dan binaire bestanden.
[bewerk] Binaire formaten
Binaire bestanden worden gewoonlijk gezien als een opeenvolging van bytes (groepen van acht binaire cijfers of bits). Binaire bestanden bevatten typisch bytes die niet als tekstkarakters geïnterpreteerd moeten worden, maar die iets anders moeten voorstellen. Gecompileerde programma's zijn kenmerkende voorbeelden: gecompileerde programma's staan op de computer opgeslagen in de vorm van binaire bestanden. De inhoud van die bestanden is echter niet door de mens te lezen, maar kan door een computer geïnterpreteerd en uitgevoerd worden als programma. Gecompileerde code wordt door programmeurs dan ook vaak binaries genoemd. Binaire bestanden kunnen echter evenzeer beelden, geluiden, gecomprimeerde versies van andere bestanden en dergelijke bevatten; gegevens van om het even welk type kan worden gecodeerd als binair bestand.
De interne structuur van binaire bestanden hangt volledig af van de keuze van de programmeur. In sommige bestanden definieert men headers of hoofdingen, en blokken metadata. Deze blokken kunnen door een computerprogramma gebruikt worden om meer informatie te verkrijgen over de inhoud van het binaire bestand, en om de inhoud verder te kunnen interpreteren.
[bewerk] Omgaan met binaire bestanden
Sommige computersystemen of technologieën kunnen enkel omgaan met tekstbestanden, dus bestanden met enkel een beperkt aantal teksttekens, en niet met uitgebreide binaire bestanden. Een voorbeeld is e-mail, dat enkel berichten met teksttekens aanvaardt. Wil men andere gegevens meesturen, dan moeten deze naar een platte tekstvoorstelling vertaald worden, bijvoorbeeld met Base64-codering. Deze encodering heeft als nadeel dat de bestandsgrootte met 30% toeneemt, en dat de ontvanger het bestand opnieuw moet decoderen.
In Microsoft Windows kan een programmeur via een parameter van sommige systeemaanroepen aangeven of een bestand binair of tekstueel is, in Unix-systemen is dit niet het geval en worden alle bestanden als binair behandeld. Dit geeft aan dat het onderscheid tussen binaire en tekstuele bestanden enigszins arbitrair is.
[bewerk] Weergeven van binaire bestanden
In principe dienen binaire bestanden weergegeven te worden met computerprogramma's die ervoor gemaakt zijn om te kunnen omgaan met het type bestand in kwestie, zoals foto's of geluiden. Wanneer men deze binaire bestanden in een gewone eenvoudige teksteditor opent, wordt elk groepje van acht bits (byte) gewoonlijk vertaald naar één enkel teksteken dat hiermee overeen komt, en gewoonlijk ziet men dan een onbegrijpbare opeenvolging van tekens. Wanneer men met nog een andere programma het bestand zou openen, dan zou het programma proberen de opeenvolging van bits op zijn eigen manier te interpreteren, bijvoorbeeld een reeks getallen, een reeks kleuren, een stuk computercode, enz.
Wanneer men toch een duidelijk zicht wel hebben op de binaire inhoud van een bestand, dan kan een hex-editor gebruikt worden. Deze laat toe de bytes van het bestand te tonen met hun hexadecimale waarde en mogelijkerwijs ook met de decimale, binaire of ASCII-waarde. Men kan dan elke byte afzonderlijk bewerken.