Al preguntar específicamente por las variables integrales, espero que la intención sea preguntar por los números sin un punto decimal en ellos.
Generalmente usamos int datatype para lo mismo.
El lenguaje C en su especificación o reglas para C99 [1] especifica,
- ¿Se puede usar Adroid OS para sistemas embebidos, como si tuviera una pequeña pieza de hardware, después de algún evento controlado por hardware necesito enviar sms, también necesita una conectividad web? ¿Cómo se puede hacer?
- ¿Podría evaluar mi perfil para una maestría en sistemas integrados / CS en Alemania?
- ¿Cómo funciona un localizador en un sistema integrado?
- ¿Cuáles son las ventajas del microcontrolador sobre un microprocesador en aplicaciones integradas?
- ¿Existe un informe técnico público que describa la red de computadoras integradas en un automóvil moderno?
un valor mínimo para un objeto de tipo int para ser -32767 es decir – ((2 ^ 15) –1)
un valor máximo para un objeto de tipo unsigned int que sea 65535, es decir ((2 ^ 16) – 1)
Pero el manual de referencia de AVR Libc para el compilador -avr -gcc especifica [2],
firmado [3] / unsigned [4] int con al menos 8 bits.
Esta diferencia en la definición estándar de int con signo / sin signo se debe a que el estándar C99 es general y no específicamente para el mundo integrado.
Entonces, como lo veo, el compilador es el que define el tamaño mínimo para una variable entera basada en el procesador / controlador de destino.
Por lo tanto, el compilador puede ir con
- al menos 8 bits para una variable entera en un microcontrolador de 8 bits
- al menos 8/16 bits para una variable entera en un microcontrolador de 16 bits
- al menos 8/16/32 bits para una variable entera en un microcontrolador de 32 bits
La razón por la que especifiqué una opción para 8/16 y 8/16/32 bits es porque algunos microcontroladores [5] [6] tienen registros de 8 bits en un bus de datos de 16 bits de ancho o permiten un acceso de ubicación de dirección de media palabra.
Entonces, para resumir:
La combinación de compilador + microprocesador / controlador decide si una variable int ocupa 1/2/4 Bytes de espacio de memoria.
Espero que esto aclare su consulta.
Notas al pie
[1] http://www.open-std.org/jtc1/sc2…
[2] Tipos enteros de ancho mínimo
[3] Manual de referencia de AVR Libc
[4] Manual de referencia de AVR Libc
[5] http://ww1.microchip.com/downloa…
[6] http://ww1.microchip.com/downloa…