Diferencia entre revisiones de «word»
De ArduWiki
(Revisa en la documentación oficial, en "word" no se expresa que haya variación en el tamaño según arquitectura.) |
(→Descripción) |
||
(No se muestran 29 ediciones intermedias del mismo usuario) | |||
Línea 1: | Línea 1: | ||
== Descripción == | == Descripción == | ||
− | '''word''' (palabra) almacena un número entero de 16 bits | + | '''word''' (palabra) almacena un número entero de 2 bytes (16 bits) sin signo; en otras palabras, comprende el rango de 0 a 65,535 (2^16-1). |
− | + | {{Tip|Alternativamente puede verse declarado como tipo [[unsigned int]] o '''uint16_t''', sin embargo funciona exactamente igual.}} | |
+ | |||
+ | {{Nota|* '''word''' es prácticamente el tipo de dato universal para declarar variables de 2 bytes (16 bits); ya que, independientemente de la arquitectura del uC, siempre será de dicho tamaño.}} | ||
== Sintaxis == | == Sintaxis == | ||
<pre> | <pre> | ||
word variable [= valor]; | word variable [= valor]; | ||
+ | uint16_t variable [= valor]; | ||
+ | unsigned int variable [= valor]; | ||
+ | variable = valorU; | ||
</pre> | </pre> | ||
− | == | + | == Parámetros == |
− | ;variable: | + | ;uint16_t:Sinonimo de '''word''' y [[unsigned int]]. |
− | ;Valor: | + | ;variable:nombre de la variable. |
+ | ;Valor:Valor a asignar entre 0 y 65,535. Parámetro opcional. | ||
+ | ;valorU: Forzar valor de este tipo de dato. Puedes omitir el tipo. | ||
+ | |||
+ | {| class="wikitable col2cen" | ||
+ | |+Posibles formateadores | ||
+ | !Base!!Prefijo!!Comentario!!Ejemplo | ||
+ | |- | ||
+ | |DEC||ninguno||Dígitos 0~9||123 | ||
+ | |- | ||
+ | |HEX||0x||dígitos 0~9 + Caracteres A~F||0x7B | ||
+ | |- | ||
+ | |OCT||0||digitos 0~7||0173 | ||
+ | |- | ||
+ | |BIN||B||0 o 1||B1111011 | ||
+ | |} | ||
+ | |||
+ | == Comentario == | ||
+ | Para [[UNO]] '''word''' es lo mismo que [[unsigned int]] y se prefiere este ultimo. | ||
== Advertencias == | == Advertencias == | ||
− | * '''word''' es | + | * En Arduino [[UNO]] y otras placas ATmega, '''word''' es equivalente a [[unsigned int]] porque ambos son de 2 bytes (16 bit). |
− | * | + | * En Arduino [[DUE]] y [[Zero]], '''word''' de 4 bytes (32 bit) por lo que es diferente a [[unsigned int]] que es 2 bytes (16 bits). |
== Ejemplo == | == Ejemplo == | ||
− | + | El valor está expresado en hexadecimal, equivale a 32,768 (es justamente la mitad entera más uno de 65,535). | |
− | + | <syntaxhighlight lang="c++"> | |
− | </ | + | word x = 0x8000; //32768 |
+ | uint16_t x = 32768; | ||
+ | x = 32768U; | ||
+ | </syntaxhighlight> | ||
== Vea también == | == Vea también == | ||
− | + | <categorytree mode=all>Tipo dato</categorytree> | |
− | |||
− | |||
== Referencias == | == Referencias == | ||
* [https://www.arduino.cc/reference/es/language/functions/time/millis/ Guia de referencia de Arduino] | * [https://www.arduino.cc/reference/es/language/functions/time/millis/ Guia de referencia de Arduino] | ||
− | [[Category: | + | [[Category:Tipo dato]] |
Revisión actual del 21:39 25 jun 2019
Contenido
Descripción
word (palabra) almacena un número entero de 2 bytes (16 bits) sin signo; en otras palabras, comprende el rango de 0 a 65,535 (2^16-1).
Tip: Alternativamente puede verse declarado como tipo unsigned int o uint16_t, sin embargo funciona exactamente igual.
Nota: * word es prácticamente el tipo de dato universal para declarar variables de 2 bytes (16 bits); ya que, independientemente de la arquitectura del uC, siempre será de dicho tamaño.
Sintaxis
word variable [= valor]; uint16_t variable [= valor]; unsigned int variable [= valor]; variable = valorU;
Parámetros
- uint16_t
- Sinonimo de word y unsigned int.
- variable
- nombre de la variable.
- Valor
- Valor a asignar entre 0 y 65,535. Parámetro opcional.
- valorU
- Forzar valor de este tipo de dato. Puedes omitir el tipo.
Base | Prefijo | Comentario | Ejemplo |
---|---|---|---|
DEC | ninguno | Dígitos 0~9 | 123 |
HEX | 0x | dígitos 0~9 + Caracteres A~F | 0x7B |
OCT | 0 | digitos 0~7 | 0173 |
BIN | B | 0 o 1 | B1111011 |
Comentario
Para UNO word es lo mismo que unsigned int y se prefiere este ultimo.
Advertencias
- En Arduino UNO y otras placas ATmega, word es equivalente a unsigned int porque ambos son de 2 bytes (16 bit).
- En Arduino DUE y Zero, word de 4 bytes (32 bit) por lo que es diferente a unsigned int que es 2 bytes (16 bits).
Ejemplo
El valor está expresado en hexadecimal, equivale a 32,768 (es justamente la mitad entera más uno de 65,535).
word x = 0x8000; //32768
uint16_t x = 32768;
x = 32768U;
Vea también