Como has averiguado, obviamente, tu ordenador hace tienen que ser capaces de almacenar 0s. Se puede utilizar un símbolo diferente para el 0, o se puede aprovechar la falta de un 1 para almacenar un 0 - pero en ese caso, el ordenador tiene que saber dónde están los 1's podría ser para que pueda distinguir entre un 0 y algo que no forma parte de los datos.
En las señales electrónicas, podemos utilizar un voltaje para 1 y ningún voltaje para 0. La clave de esto es que el ordenador sólo busca voltaje en los cables de señal . No hay voltaje entre los cables, o en la carcasa de plástico, pero no es un problema porque el ordenador no está buscando allí.
En la celda de memoria SRAM más sencilla, por ejemplo, hay dos puertas: una activada y otra desactivada. Se elige un lado y se dice "este es el lado que almacena el bit". Si ese lado está encendido es un 1, si ese lado está apagado es un 0. No hay otra posibilidad (ambas puertas no pueden estar apagadas, a menos que el ordenador esté desenchufado) y no hay posibilidad de buscar en el lugar equivocado (el ordenador no va a desconectarse e intentar leer de donde no hay una célula de memoria). Así que básicamente no hay posibilidad de una metedura de pata de este tipo.
En los soportes de cinta y disco, y en las señales serie en general, el ordenador tiene que tener cuidado de mirar dónde hay datos. Hay un montón de enfoques diferentes para esto.
Quizá lo más sencillo sea tener dos líneas de agujeros en tu cinta de papel, y di que un agujero en el lado izquierdo es un 1 y un agujero en el lado derecho es un 0.
Los métodos de codificación más complicados permiten al ordenador "fijar" el espaciado de los agujeros. Si tienes un agujero cada medio centímetro y pasas medio centímetro sin ver un agujero, eso es un 0. ¿Pero qué pasa si tu ordenador lo mide como 0,499 cm en lugar de 0,500? ¿O si la persona que escribió la cinta la midió como 0,499 cm? Entonces podría desincronizarse y verías un 0 de más de vez en cuando, o te perderías un 0. Por lo tanto, tiene que haber al menos un agujero de vez en cuando, para que el ordenador pueda restablecer su medición y no se desincronice demasiado. La ventaja de este tipo de métodos, en comparación con el método de dos pistas, es que se puede obtener casi el doble de datos en el mismo espacio. (También se puede ir por tiempo, en lugar de distancia)
En el protocolo UART, tienes un bit que siempre es 1, delante de cada byte, y los 8 bits del byte están temporizados. El bit 1 (que sería un agujero en tu caso) hace que el lector esté sincronizado para los siguientes 8 bits (al menos) y el lector sabe que no debe enviar el bit extra al ordenador.
Otro enfoque podría ser utilizar una especie de modulación de frecuencia, en la que (digamos) un agujero situado a menos de 0,5 cm del último agujero es un 1, y un agujero situado a más de 0,5 cm del último agujero es un 0.