¿Por qué 1 byte == 8 bits?

Antes que nada te puedo decir con seguridad que

En el estándar C/C nunca se ha estipulado que 1byte sea igual a 8bit

. Solo estipula: sizeof(char) = 1. Además, hay una estipulación relacionada: sizeof(char) lt; = sizeof(short) lt; = sizeof(int) lt = sizeof(long) lt;= sizeof( largo, largo).

Pero en realidad, la mayor parte de 1 byte son 8 bits. Su fuente es el protocolo tcp/ip, que tiene dicha disposición.

Por lo tanto, a menos que el sistema que está construyendo no esté preparado para admitir el protocolo tcp/ip, lo más fácil es seguir su protocolo y utilizar 1 byte = 8 bits. ps:

Permítanme publicar una definición completa de los conceptos relevantes en el estándar c/c, tomando c99 como ejemplo (otras versiones son similares a c):

3,51 bits< / p>

Unidad de almacenamiento de datos en el entorno de ejecución lo suficientemente grande como para contener un objeto que puede

tener uno de dos valores

2 NOTA No es necesario que sea posible expresar el dirección de cada bit individual de un objeto.

3,61 bytes

unidad direccionable de almacenamiento de datos lo suficientemente grande como para contener cualquier miembro del carácter básico

conjunto del entorno de ejecución

2 NOTA 1 Es posible expresar la dirección de cada byte individual de un objeto de forma única.

3 NOTA 2 Un byte se compone de una secuencia contigua de bits,

Cuyo número está definido por la implementación

. El bit menos significativo se denomina bit de orden inferior; se llama bit de alto orden.

Además, en el protocolo RFC791 de la familia de protocolos tcp/ip (tcp/ip no está formulado por un protocolo, sino que es una familia de protocolos formada por la cooperación de N múltiples protocolos Entre ellos, el protocolo RFC791 define mensajes IP) y tiene la siguiente definición: octetoUn byte de ocho bits.

Todas las definiciones posteriores se calculan en octeto. Por tanto, en correspondencia con el lenguaje de programación, utilizar 1byte = 8bit puede hacer coincidir perfectamente la unidad de byte con la unidad de octeto, lo que simplifica mucho el procesamiento. pps:

Si tienes amigos que tienen opiniones diferentes sobre esto, puedes publicar tu información relevante y dejar que todos la comenten. Siempre he sentido que, a diferencia de otros foros, aquí todos piden consejos con sinceridad y responden con seriedad.

Espero que todos sean más rigurosos y no engañen a los demás.