freeCodeCamp/guide/spanish/computer-science/hexcode/index.md

88 lines
4.9 KiB
Markdown
Raw Normal View History

2018-10-12 19:37:13 +00:00
---
title: Hexadecimal Numbers
localeTitle: Números hexadecimales
---
## El sistema numeral hexadecimal
Números hexadecimales, a menudo reducidos a "números hexadecimales" o "hex", son números representados en la base 16 en oposición a la base 10 que usamos para el cálculo y la cuenta diarios.
En términos prácticos, esto significa que cada columna de un número escrito en hexadecimal puede representar hasta 16 valores.
Los dígitos en hexadecimal utilizan los símbolos estándar 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9 para representar el valor correspondiente, y use las primeras seis letras del alfabeto para representar los valores 10 a 15 (por ejemplo, A, B, C, D, E, F).
En programación, prefijamos constantes hexadecimales con `0x` , con algunas excepciones.
### Ejemplos y explicacion
```
0x1 == 1
0xF == 15
0xFF == 255
0xFFF == 4095
0x1000 == 4096
```
En el sistema estándar de base 10, cada columna representa potencias crecientes de 10, mientras que en la base 16 cada columna representa potencias crecientes de 16.
Como se ve en el ejemplo de la tabla anterior, con un dígito hexadecimal podemos representar números hasta e incluyendo 15. Agregue otra columna y podemos representar números hasta 255, 4095 con otra columna, y así sucesivamente.
## Usos del hexadecimal en la programación de bajo nivel.
Hexadecimal encontró por primera vez su uso en Informática como una característica de conveniencia.
Los datos en nuestras computadoras tienen una unidad de almacenamiento común más baja, el Byte. Cada byte contiene 8 bits y puede almacenar un número entre 0 y 255 inclusive.
El hexadecimal tiene la ventaja de ser terso y tener límites bien definidos.
Un solo byte siempre está representado por dos dígitos hexadecimales de 0x00 a 0xFF, este último es el valor por byte más grande de 255.
La terseness y la naturaleza alineada con los bytes de los números hexadecimales los convierten en una opción popular para los ingenieros de software que trabajan en bases de código de bajo nivel o software integrado.
## Usos de los números hexadecimales en JavaScript
JavaScript admite el uso de notación hexadecimal en lugar de cualquier entero, pero no decimales.
Como ejemplo, el número 2514 en hexadecimal es 0x9D2, pero no hay una forma compatible con el idioma de representar 25.14 como un número hexadecimal.
Usar hexadecimal en su código es una opción personal y estilística, y no tiene efecto en la lógica subyacente que implementa su código.
## Usos de los números hexadecimales en CSS
CSS ha usado durante mucho tiempo la notación hexadecimal para representar valores de color. Considere el siguiente selector:
```css
.my-container {
background-color: #112233;
color: #FFFFFF;
}
```
El valor del `background-color` es de hecho tres bytes hexadecimales.
El procesador CSS los trata como tres bytes individuales, que representan rojo, verde y azul.
En nuestro ejemplo, 11 corresponde al componente de color rojo, 22 corresponde al componente de color verde y 33 al componente de color azul.
Actualmente, no hay forma a partir de CSS3 para definir un color con un componente alfa usando hex. El borrador 1 de CSS4 propuesto incluye una propuesta para permitir un byte adicional para especificar valores alfa.
Por ahora, el uso de la función `rgba()` estándar es la forma recomendada de agregar un valor alfa a sus colores.
#### Más información:
* [Sistema de numeración hexadecimal en Wikipedia](https://wikipedia.org/wiki/Hexadecimal_numeral_system)
* [Color CSS en los documentos web de MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/color)
#### Referencias:
* 1 [Módulo de color CSS Nivel 4 - 4.2. Las notaciones hexadecimales RGB: #RRGGBB](https://www.w3.org/TR/css-color-4/#hex-notation)
#### Más información:
* [¿Cómo funcionan los códigos de color HEX? (en 60 segundos)](https://www.youtube.com/watch?v=c56x1aj2CPA) - Buen video que también explica un poco sobre los números hexadecimales.
* [Códigos hexadecimales y teoría del color](https://www.youtube.com/watch?v=xlRiLSDdqcY) : un video más largo que profundiza en la teoría del color (como los colores aditivos y los colores sustractivos, etc.) y también apunta a otros recursos para profundizar en el tema.
* [Web Colors](https://en.wikipedia.org/wiki/Web_colors) - Artículo de Wikipedia sobre cómo se utilizan los colores en la web.
* [Artículo de Wikipedia sobre el código hexadecimal.](https://en.wikipedia.org/wiki/Hexadecimal)
* [Artículo de Wikipedia sobre colores web.](https://en.wikipedia.org/wiki/Web_colors)
* [Colores hexagonales](http://www.color-hex.com/)
* [Artículo mediano sobre código de color hexadecimal.](https://medium.com/webkul-dev/hex-color-codes-27cd0a37c3ce)
* [Más información sobre colores en CSS.](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value)
* [Explora diferentes colores hexagonales](http://www.colorhexa.com/)