c Conocimientos básicos y escaneo rápido

1. Tipos de datos básicos

El tipo de datos puede entenderse como un alias de un tamaño de memoria fijo. El tipo de datos es el alias del modelo que crea la variable. La
variable es el alias de la memoria continua real. El programa utiliza variables para solicitar y nombrar el espacio de almacenamiento. El espacio de almacenamiento se puede utilizar con el nombre de la variable.

2. Símbolos de tipos de datos

2.1 Números firmados

El bit más alto del tipo de datos se utiliza para identificar el símbolo de los datos.

El bit más alto es 1, lo que indica que el número es negativo, y el
bit más alto es 0, lo que indica que el número es positivo.
En la computadora, un número con signo se representa por complemento

  1. > El complemento de un número positivo es el propio número positivo. El complemento de un número negativo es el inverso del valor absoluto del número negativo +1.

2.2 Números sin signo

La computadora usa el código original para representar el número sin firmar (el valor predeterminado sin firmar es un número positivo y el número sin firmar no tiene bit de signo)

2.3 firmado 和 sin firmar

La variable predeterminada en el lenguaje c tiene como valor predeterminado un tipo firmado. La
palabra clave unsigned declara que una variable es un tipo sin firmar

  • Solo los tipos enteros en lenguaje c pueden declarar variables sin signo.
  • Cuando el número sin signo y el número con signo se mezclan en el cálculo, el número con signo se convertirá en un número sin signo en el cálculo y el resultado será un número sin signo.

3.1 Acerca de los números de coma flotante

Los métodos de almacenamiento de números de punto flotante en la memoria son: bit de signo, exponente, mantisa
c Conocimientos básicos y escaneo rápido

La representación interna de los datos flotantes y dobles en la computadora es la misma, pero debido a la diferencia en el espacio de almacenamiento ocupado, pueden representar respectivamente diferentes rangos numéricos y precisiones.

3.2 Conversión de números de coma flotante

1. Convierta un número de punto flotante en binario
2. Utilice la notación científica para representar un número de punto flotante binario
3. Calcule el valor después del desplazamiento del exponente

Nota: debe agregar un desplazamiento al calcular el índice, y el valor del desplazamiento está relacionado con el tipo

Para flotante más valor de compensación 127,
para doble más valor de compensación 1023


8.25 Representación en memoria
8.25 Representación binaria: 1000.01 -> 1.00001 * (2 ^ 3)
Bit de signo: 0
Exponente: 127 + 3 = 130 -> 130 -> 10000010
Decimal: 00001
Representación en memoria 0 1000010 000010000000000000000000000000000000

Pregunta interesante
para sistemas de 32 bits, int y float ocupan 4 bytes de memoria, por qué float tiene un rango más amplio que int.
c Conocimientos básicos y escaneo rápido

3.3 Resumen de tipos de coma flotante

1. El número de números específicos
representados por float es diferente de int 2. Los números que pueden representarse por float no son continuos y hay espacios en blanco.
3. Float es solo una representación aproximada y no puede usarse como un número exacto
. 4. Porque La representación de la memoria es relativamente complicada y la velocidad de cálculo de float es mucho más lenta que la de int

Double y float tienen la misma representación de memoria, por lo que double también es impreciso. Dado que double ocupa más memoria, la precisión que se puede representar es mayor que la de float.

// 浮点类型运算的时候 0 的定义
#define ZERO 0.000000000000001

4.1 Conversión de tipo

Supongo que te gusta

Origin blog.51cto.com/13731480/2565692
Recomendado
Clasificación