Enciclopedia de detalles de enteros sin signo

Los números en las computadoras se representan en binario y el bit más a la izquierda generalmente se usa para indicar si el número es positivo o negativo, por lo que el número es un entero con signo. Si el bit más a la izquierda no se usa para representar positivo o negativo, pero está conectado con los siguientes bits para representar un número entero, entonces es imposible distinguir si el número es positivo o negativo, solo puede ser un número positivo y un entero sin signo. .

Nombre chino: entero sin signo mbth: el entero sin signo se usa a menudo para representar direcciones, índices y otros atributos: introducción a los enteros positivos, definición de enteros sin signo en lenguaje C, introducción a dos tipos de enteros en las computadoras: Los enteros sin signo (también llamados enteros sin signo) deben ser enteros positivos; los enteros con signo pueden representar enteros positivos y negativos. Los números enteros sin signo se utilizan comúnmente para representar números enteros positivos, como direcciones e índices. Pueden ser de 8 bits, 16 bits, 32 bits, 64 bits o incluso más. El rango de enteros positivos representado por números binarios de 8 bits es 0~255(-1), el rango de enteros positivos representado por 16 bits es 0~65535(-1) y el rango de enteros positivos representado por 32- bits es 0~-1. La diferencia entre int con y sin signo es con y sin signo. En realidad, ocupan la misma cantidad de bytes, pero el firmado necesita un lugar para representar el signo del valor, por lo que puede representar la mitad de valores absolutos que el sin signo. Por ejemplo, si tenemos un entero de 1 byte (aunque este tipo no existe), entonces el entero sin signo es así: 0000000 ~ 11111111165438. Un byte es un número de 8 bits con signo. Debido a que el primer bit se usa para representar el símbolo, solo quedan 7 bits para representar el número 000000 ~ 11111 debido al símbolo, por lo que también puede representar el rango: -111 111 ~. Defina la clasificación de entero sin signo; variable entera eger en lenguaje C: Entero básico: entero corto: tipo entero corto; entero largo: entero largo agrega el modificador sin signo a las tres categorías anteriores para especificar que es un número "sin signo" . Si se agrega el modificador firmado, se especifica el "número firmado"; si no se especifica ni firmado ni sin firmar, significa que está firmado. Un ejemplo es el siguiente: ¿Cuál es el resultado del siguiente código? Unsigned int a=1, int b =-2; int c =-2; cout lt ltb lt ltendlif(a c gt; 0) cout lt; ltendl resultado de ejecución: 4294967294 Presione cualquier tecla para continuar Primero, programa En la primera línea, las variables B y A son enteros sin signo, lo cual es una trampa. En segundo lugar, en un sistema de 32 bits, el rango de valores de int es -2147483648 ~ 2147483647, mientras que el rango de valores de int sin signo es 0 ~ 4294967295. Los números negativos se representan como complemento a dos en enteros sin signo, por lo que b es 4294967294. En tercer lugar, int por defecto es int firmado. Cuando se opera con unsigned int, el resultado se convierte a unsigned int, por lo que a es 4294967295.