Wat is bitvulling?
Bit stuffing, soms aangeduid als positieve rechtvaardiging, is het toevoegen van extra, niet-gegevensinformatie aan een reeks computergegevens, meestal om ervoor te zorgen dat de gegevens correct worden gelezen wanneer de computer deze ontvangt. Computergegevens bestaan uit stukjes informatie in de vorm van enen en enen. Om het begin en het einde van een gegevensblok aan te geven, wordt een code gebruikt. Wanneer de feitelijke informatie die wordt verzonden voor deze code kan worden verward en genegeerd, worden extra bits, zoals nullen, in de code ingevoegd, zodat de computer weet welke gegevens moeten worden verwerkt.
Ook bekend als bit padding, helpt bit stuffing fouten te voorkomen wanneer een computer informatie ontvangt. De bits vertegenwoordigen geen actuele informatie en zodra alle gegevens zijn verzonden, verwijdert of negeert de computer de onnodige bits. Als het signaal voor het begin van een coderegel bijvoorbeeld vijf enen op een rij was en de verzonden gegevens met vijf enen begonnen, zou de computer denken dat dit het startsignaal was en het verwijderen. Om dit te voorkomen, zou een nulbit worden ingevoegd tussen de vierde en vijfde 1's zodat deze zou lezen als "111101" in plaats van "11111". De computer verwijdert dan de nul en leest de gegevens als vijf in plaats van deze te verwijderen.
Een ander gebruik voor bit stuffing is het invullen van een reeks gegevens waarvoor een bepaald aantal bits nodig is om correct te verzenden. Een reeks gegevens moet mogelijk minimaal 10 bits lang zijn, maar er zijn er maar negen aanwezig. In deze situatie zou een extra bit worden toegevoegd om het totaal op 10 te brengen. Het extra bit wordt verwijderd wanneer de gegevens worden geïnterpreteerd.
Naast het helpen van de computer om stukjes data goed te interpreteren, wordt bit stuffing ook gebruikt om de computer te synchroniseren. Een computer verzendt en ontvangt informatie in een regelmatig ritme op basis van zijn interne klok. Als te veel van dezelfde bits - een regel van alle nullen bijvoorbeeld - tegelijkertijd worden verzonden, kan de computerklok uit de synchronisatie raken en de opdrachten in de verkeerde volgorde uitvoeren. Door een 1 in de regel van 0's te plaatsen, wordt de computerklok gedwongen zichzelf opnieuw te synchroniseren en wordt dit probleem voorkomen.
Net als bij het helpen van een computer om synchroon te blijven, helpt bit stuffing de computer om gegevens correct te lezen wanneer de informatie in bits wordt verzonden in plaats van als een continue stroom. Om de computer ertoe te brengen de transmissie als continu te beschouwen, worden willekeurige bits gegenereerd en naar de computer verzonden terwijl deze wacht op het volgende stuk informatie dat moet worden verzonden. Dit houdt het transmissiepatroon in een constant tempo.
De computer weet niet-databits uit gegevensstromen te verwijderen zodra ze zijn ontvangen. Computerprogrammeurs moeten weten welke bits ze moeten vullen, zodat de computer ze verwijdert in plaats van ze als echte gegevens te lezen. Als de computer deze gevulde stukjes zou proberen te interpreteren in plaats van ze weg te gooien, zou dit computerfouten in het programma veroorzaken.