Representación correcta de un número

-1

Consideremos que tenemos un número 011100010. Supongamos que almacenamos este número en un sistema de 8 bits. Por lo tanto, ¿cómo se almacenará de izquierda a derecha como 01110001 o los 8 dígitos más a la derecha y dejando el primer bit como 11100010? ¿Por qué o por qué no?

    
pregunta user1369975

2 respuestas

3

Este es el tema de Endianness .

No hay una forma correcta o incorrecta de almacenar datos, siempre que se haga de manera consistente en una plataforma determinada.

Tal como lo alude JonRB, el bit más significativo puede tener un significado (como lo puede ser cualquier bit en un flujo de bits), pero siempre que se almacene de la misma manera (la plataforma siempre puede acceder a este bit de la misma manera). independientemente de los datos en los que pueda existir, realmente no tiene ninguna consecuencia.

Cuando se transfieren datos de un tipo de sistema a otro es cuando suceden cosas interesantes .

El 8085 es little endian dispositivo.

    
respondido por el Peter Smith
0

Los números de 8 bits se almacenan en 8 bits. En algún lugar habrá 8 flip-flops o celdas de memoria que pueden configurarse en 0 o 1.

Parece que realmente estás preguntando sobre la representación del texto de esto a los humanos. Eso es una lata de gusanos completamente diferente. Sin embargo, en los sistemas de numeración árabe, los dígitos se escriben en el orden más o menos significativo, de izquierda a derecha. Por lo tanto, los ceros iniciales no cambian el valor de un número y se pueden eliminar. Su número binario de nueve dígitos "011100010" puede escribirse tan bien como 8 dígitos como "11100010".

Las reglas no son diferentes solo porque estás usando una base numérica diferente a diez. Este mismo valor se puede expresar como E2 en hexadecimal, 342 en octal o 226 en decimal. Si estaba contando a la gente que entraba en un edificio con un contador de 4 dígitos y decía "0226", probablemente lo anotaría cuando 226 personas entraron al edificio porque saben que "0226" y "226" significan lo mismo.

Hay una arruga en esto, especialmente en binario. Hay más de una forma de usar una secuencia de bits (dígitos binarios) para representar un valor. Por ejemplo, su byte de 8 bits podría ser sin signo o complemento de dos con signo . En formato sin firmar, 11100010 es solo 226 en decimal. Sin embargo, en el formato de complemento de dos, los 8 bits representan valores de -128 a +127. En ese caso, 11100010 significa decimal -30, pero 011100010 tiene un bit de signo 0, lo que significa 226 decimal.

    
respondido por el Olin Lathrop

Lea otras preguntas en las etiquetas