En las matemáticas y el de informática, hexadecimal, base -, o simplemente el maleficio, es un sistema de numeración con una raíz, o base, de 16, escrita generalmente usar los símbolos 0– 9 y A– F, o a– f. Su propósito primario es representar el código binario en un formato más fácil para que los seres humanos lean, y actúa como forma de la taquigrafía, en cuál el dígito hexadecimal se coloca en lugar de cuatro pedacitos binarios por ejemplo, el que el número decimal 79 de, cuya representación binaria es 01001111, es 4F en el hexadecimal (4 = 0100, F = 1111). El IBM introdujo el sistema hexadecimal actual al mundo computacional; una versión anterior, usar los dígitos 0– 9 y u– z, había sido introducido en 1956, y utilizado por la computadora de Bendix G-15 .

Aplicaciones

Tríos Hex

HTML y notación hexadecimal del uso del CSS (tríos Hex para especificar colores en Web pages, con el " #" colocación para el hexadecimal. el color del Veinte-cuatro-pedacito se representa en el #RRGGBB del formato: donde el RR especifica el valor del componente rojo del color, del GG el componente verde, y del BB el componente azul. Por ejemplo, una cortina del rojo que está (238.63) en decimal se cifra como #EE093F. Este sintaxis se pide prestado del sistema de la ventana X.

Ejemplo de la conversión del trío hexadecimal al trío decimal: Trío hexadecimal: FFCF4B

Paso 1: Separar los tríos: CF 4B del FF

Paso 2: Convertir cada valor hexadecimal a una representación decimal:
FF = 15*16 + 15*1 = 255
CF = 12*16 + 15*1 = 207
4B = 4*16 + 11*1 = 75

Resultado: Trío hexadecimal FFCF4B = trío decimal 255.75

Otras aplicaciones del campo común

En los URL todos los carácteres se pueden cifrar hexadecimally. Esto se especifica en RFC 3986. Cada secuencia hexadecimal de 2 dígitos (1 octeto) es precedida por una muestra del por ciento . Por ejemplo, en el URL http://en.org/wiki/Main%20Page, el código de carácter UTF-8 (del hexadecimal) para un espacio (" ") es 20.

Algunos programas del software crearán números de orden únicos usando una representación hexadecimal del segunda exacto la orden fueron tomados, basado en el número total de segundos puesto que el comienzo del vigésimo siglo . Por ejemplo, C9BCE0F5 representa 14:19 del 2 de abril de 2007: 32 .

Las páginas en el teletexto se escriben en hexadecimal, con los números disponibles estando en la gama de 100-8FF. Sin embargo, las páginas con las letras se utilizan solamente para el " hidden" y páginas de la ingeniería.

Representación de hexadecimal

Algunas representaciones hexadecimales son indistinguibles de representaciones decimales (a los seres humanos y a las computadoras); por lo tanto, utilizan a una cierta convención generalmente para señalarlas por medio de una bandera, en el texto compuesto tipo indicado a menudo por un sufijo subscripted tal como 5A316 o 5A3HEX. Los lenguajes de programación han utilizado tradicionalmente el texto llano (es decir ASCII ), sin las distinciones tipográficas tales como subíndice y exponente, y por lo tanto en lugar de otro han denotado números hexadecimales usar una gran variedad de convenciones alternativas.

Los siguientes son algunas de las representaciones mas comunes:
En muchos los ensambladores el hexadecimal es denotado por un añadido H o el h, e. FFh, 0A3CH. Algunos permiten que los números comiencen con una letra, algunos exigen un cero principal para tales casos.
Otros ensambladores ( AT&T, Motorola ), Pascal, y algunas versiones de BASIC y del uso $ como prefijo, e. $5A3 adelante .
Hay también ensambladores (microchip) ese uso el H'ABCD' de la notación (para ABCD16), tan bien como la convención de la C-familia (véase abajo).
El C y las idiomas con un sintaxis similar (tal como C++, C#, Java y Javascript ) utilizan el prefijo 0x, e. 0x5A3; el 0 principal denota un número y el x representa hexadecimal.
El Ada y VHDL incluye números hexadecimales en " basado; quotes" numérico; usar cualquie base de, e. 16#5A3#. (El Ada acepta esta notación para el número entero y los tipos verdaderos.)
Modula 2 y un cierto otro uso de las idiomas # como prefijo.
El lenguaje de programación del palique utiliza el prefijo 16r. (El palique acepta otras bases que 16; algunas versiones también aceptan dígitos fraccionarios en bases con excepción de 10.)
las cáscaras del *nix utilizan un \ x0FF de la forma del carácter de escape en expresiones y 0xFF para los constantes.
En HTML, uso hexadecimal el & de la notación; #ABCD; . las referencias hexadecimales del color se prefijan con #, e. #FFFFFF (blanco).
La posdata indica el maleficio por un prefijo 16#.
El campo común balbucea uso de los prefijos #x y #16r.
El QBasic y el Visual Basic, prefijan números hexadecimales con el & H, e. & H5A3
& usado del BASIC de la BBC; (usado para el octal en el BASIC de Microsoft).
El TI-89 y 92 series señalan 0h (ex 0hA3)
Las notaciones tales como X'5 A3' se ven a veces; El PL/I utiliza tal notación. Éste es el formato más común para el hexadecimal en las unidades centrales de IBM ( ZSeries ) y los miniordenadores ( ISeries ) que funcionan con los OS tradicionales (zOS, zVSE, zVM, TPF, OS/400), y se utiliza en ensamblador, el PL1, COBOL, el JCL, escrituras, comandos y otros lugares. Este formato era común en otros (y ahora obsoleto) sistemas de IBM también.
El Donald Knuth introdujo el uso de fuentes de representar raíces, en su del libro el TeXbook . Allí, las representaciones hexadecimales se escriben en una fuente de máquina de escribir, e. 5A3

No hay estándar acordado, así que todas las convenciones antedichas son funcionando, a veces incluso en el mismo papel. Sin embargo, como son absolutamente inequívoca, poca dificultad se presenta de esto. Quizás la notación lo más comúnmente posible encontrada es hoy el " 0x" notación, debido al uso extenso del lenguaje de programación de C y de sus descendientes.

La opción del A de las letras a el F para representar los dígitos adicionales no era universal en la historia temprana de computadoras. Durante los años 50, algunas instalaciones favorecidas usar los dígitos 0 a 5 con un Macron para indicar los valores 10-15. Los usuarios de las computadoras de Bendix G-15 utilizaron el U de las letras a el Z .

Una solución cómo escribir números hexadecimales distintivo es el uso de las figuras que se hacen para el sistema hexadecimal pero no es todavía representable en el Unicode .

Representaciones verbales

No sólo hay ningunos dígitos apropiados para representar actual las cantidades a partir del diez a quince (así que las letras se utilizan como substituto), solamente la lengua inglesa, y la mayoría de las idiomas de Europa occidental, también carecen una nomenclatura apropiada para nombrar números hexadecimales. Nombres tales como " thirteen" y " fourteen" es el decimal - basado, y aunque el inglés tiene algunos nombres para el powers&mdash no-decimal; pares para la energía binaria del primer ; cuenta para la energía vigesimal del primer ; docena del, grueso del y gran grueso del para el powers&mdash duodecimal del primer tres ; ningún nombre inglés existe actual para las energías hexadecimales unas de los (que corresponden a los valores decimales 16, 256, 4096, al etc. La gente ha recurrido tan a los números hexadecimales de la lectura nombrando sus dígitos (o dígito-letras) individualmente en orden in the same way as los números de teléfono de la lectura (es decir, 4DA como " four-dee-aye"). Sin embargo, la letra “A” suena similar a “8”, “C” suena similar a “3”, y “D” se puede confundir fácilmente desde el sufijo “ty” como en " forty" ; 4DA se podía confundir tan desde 48. Para evitar malentendidos, una cierta convención debe ser establecida al intercambiar números hexadecimales verbalmente, por lo menos hasta una nomenclatura hexadecimal apropiada se convierte (si nunca). Para evitar la confusión, el A-F de los dígitos se pronuncia comúnmente con el alfabeto fonético (" de la OTAN; cuatro-delta-alpha"), el ejército del empalme de la era de la Segunda Guerra Mundial/el alfabeto fonético (" de la marina de guerra; cuatro-perro-able"), o una cierta aproximación de uno de esos sistemas.

Fracciones

Como con otros sistemas de numeración, el sistema hexadecimal se puede utilizar para representar los números racionales aunque los dígitos que se repiten sean comunes puesto que 16 tiene solamente un solo factor primero:

Trazado al binario

Es a veces necesario utilizar datos binarios cuando el trabajo con las computadoras, pero él es difícil para que los seres humanos trabajen con el gran número de dígitos en binario. Aunque la mayoría de los seres humanos sean más familiares con el sistema de la base 10, es mucho más fácil trazar el binario al hexadecimal que al decimal porque cada dígito del hexadecimal traza a un número entero de los pedacitos (410). Lo que sigue es un ejemplo de convertir 11112 para basar 10. Puesto que cada posición en un número binario puede contener solamente un 1 o 0, su valor se puede determinar fácilmente por su posición de la derecha:
00012 = 110
00102 = 210
01002 = 410
10002 = 810 Por lo tanto:
11112 = 810 + 410 + 210 + 110
  = 1510
Este ejemplo demuestra la adición de 4 números; pero con una cierta práctica, 11112 se puede trazar directo a F16 en un paso (véase la tabla en el que representa hexadecimal). La ventaja de usar hexadecimal algo que decimal aumenta con el tamaño del número. Cuando el número llega a ser grande, la conversión al decimal llega a ser mucho más aburrida; sin embargo, al trazar al hexadecimal, es simple dividir la secuencia binaria en los bloques de 4 posiciones y trazar cada bloque de 4 pedacitos a un solo dígito del hexadecimal de la posición.

Este ejemplo demuestra la conversión de un número binario al decimal, trazando cada dígito al valor decimal, y agregando los resultados.

010111101011010100102 = 26214410 + 6553610 + 3276810 + 1638410 + 819210 + 204810 + 51210 + 25610 + 6410 + 1610 + 210
  = 38792210
Comparar esto a la conversión al hexadecimal, donde cada grupo de cuatro dígitos se puede considerar independiente, y convertido directo: align=" del 5 align=" del E align=" del B align=" del 5 align=" del 216 colspan=" del 5EB5216
010111101011010100102 = 0101  1110  1011  0101  00102
  =
  =
La conversión del hexadecimal de nuevo a binario está apenas como directa.

El sistema octal puede también ser útil mientras que una herramienta para la gente que necesita ocuparse directo de datos binarios de la computadora, como en la lectura y la comprensión él. Comparado al hexadecimal, octal representa los datos en los bloques de 3 pedacitos cada uno, algo que 4.

Una ventaja del hexadecimal es que cada 2 pares único del dígito (o el octeto) representa siempre el mismo valor del octeto. Al " translate" un valor hexadecimal en octetos, uno necesita separar solamente el valor en grupos del dígito del individuo 2, traduce a cada grupo a su valor respectivo del octeto, y después combina los resultados juntos para formar una traducción exacta de la palabra hexadecimal original entera. Inversamente, los octetos se pueden también traducir fácilmente a valores hexadecimales traduciendo cada octeto individualmente a su valor del dígito del hexadecimal 2, y después recombinando los valores hexadecimales a un " word". El " resultante; word" ser una representación hexadecimal exacta de la cadena original de octetos.

El convertir de otras bases

División-resto en base de la fuente

Como con todas las bases hay un algoritmo simple para convertir una representación de un número al hexadecimal haciendo operaciones de la división y del resto del número entero en la base de la fuente. Esto es teóricamente posible de cualquier base pero para la mayoría del decimal de los seres humanos solamente y para la mayoría de las computadoras solamente binarias (que puedan ser métodos en gran medida más eficientes convertidos) puede ser dirigido fácilmente con este método.

Dejar d ser el número a representar en hexadecimal, y la serie hihi-1… h2h1 sea los dígitos hexadecimales que representan el número.

i: = 1

  • hi: =
  • de la MOD 16 de d d: =
  • )/16 (de d-hi Si d = 0 (la serie de vuelta hi) incrementos otros i y va al paso 2

    " 16" puede ser substituido por cualquier otra base que pueda ser deseada.

    Lo que sigue es una puesta en práctica del Javascript del algoritmo antedicho para convertir cualquier número a un hexadecimal en la representación de secuencia. Su propósito es ilustrar el algoritmo antedicho. Para trabajar con datos seriamente sin embargo, es mucho más recomendable trabajar con los operadores Bitwise.

    toHex del

    function (d) { 	var r = d % 16;  resultado del var; 	si (d-r==0)   resultado = toChar (r); 	   resultado = toHex ((el Dr.) /16) +toChar (r);  resultado de vuelta; } 

    función toChar (n) { alfa = " del var; 0123456789ABCDEF" ; alpha.charAt de vuelta (n); }

    Adición y multiplicación en hexadecimal

    Es también posible hacer la conversión asignando cada lugar en la fuente para basar la representación hexadecimal de su valor de lugar y después realizando la multiplicación y la adición para conseguir la representación final.

    Conversión vía binario

    Pues las computadoras funcionan generalmente en binario la manera normal para que una computadora haga tal una conversión sería convertir al binario primero (haciendo la multiplicación y la adición en binario) y en seguida hacer uso del trazado directo de binario al hexadecimal.

    Etimología

    Era IBM que decidía sobre el prefijo del " hexa" algo que el prefijo latino apropiado del " sexa". El " de la palabra; hexadecimal" es extraño en ese que hexa se deriva del έξ griego (maleficio) para el " six" y el decimal se deriva latino para el " tenth". Puede haber sido derivado de la raíz latina, pero el deka griego del es tan similar al decem latino del que algo no consideraría esta nomenclatura contraria. Un más viejo término era el incorrecto Latino-como " sexidecimal" (el latín correcto es " sedecim" para 16), pero ése fue cambiado porque alguna gente lo pensó también risqué, y también tenía un significado alternativo del " " de la base 60 ;. Sin embargo, el " de la palabra; " sexagesimal ; (base 60) conserva el prefijo. La documentación anterior de Bendix utilizó el " del término; sexadecimal". El Donald Knuth ha precisado que el término etimológico correcto es " senidenary", del término latino para el " agrupado por 16". (El " de los términos; binary", " ternary" y " quaternary" ser de la misma construcción latina, y del término etimológico correcto para el " decimal" la aritmética debe ser " denary".) Schwartzman observa que la forma puramente latina prevista sería " sexadecimal", pero por otra parte tentarían a los piratas informáticos de computadora para acortar la palabra al " sex". Incidentemente, el término griego apropiado etimológico sería el hexadecadic (aunque en el deca-hexadic (δεκαεξαδικός) del Griego moderno se utiliza más comunmente).

    Humor

    El Hexadecimal se utiliza a veces en bromas del programador porque ciertas palabras se pueden formar usar solamente dígitos hexadecimales. Algunas de estas palabras son " dead", " beef", " babe", y con el " apropiado de las substituciones; c0ffee". Puesto que éstos son rápidamente reconocibles por los programadores, las disposiciones de la eliminación de errores inicializan a veces memoria a ellos para ayudar a programadores a considerar cuando algo no se ha inicializado. Alguna gente agrega un H después de un número si ella quiere demostrar que está escrito en hexadecimal. En un más viejo sintaxis del montaje de Intel, éste es a veces el caso. " Hexspeak " puede ser el precursor del lenguaje moderno de la tela del " 1337speak "

    Un ejemplo es el número mágico en los programas Mach-O de Java de los archivos y del FAT, que es " CAFEBABE". los archivos Mach-O de la Solo-arquitectura tienen el " del número mágico; FEEDFACE" a su principio.

    Un cheque de la recompensa de Knuth es un dólar hexadecimal, o $2.

    La tabla siguiente demuestra una broma en C:

    3x12=36 2x12=24 1x12=12 0x12=18

    Los primeros tres se interpretan como multiplicación, mientras que en el un " pasado; 0x12" en maleficio está 18.

    el 0xdeadbeef se pone a veces en memoria uninitialized.

    Microsoft Windows XP despeja sus archivos bloqueados de index.dat con los códigos hex: " 0BADF00D"

    Ver también

    style=" del
    Base 32
    Base 64
    Charla de la burbuja
    Redactor Hex
    Tiempo hexadecimal
    Hexspeak
    &mdash del mordisco ; un dígito hexadecimal puede representar exactamente un " nibble"
    &mdash del sistema de numeración ; una lista de otros sistemas bajos
    Sistema de numeración binario
    HTML
  • .

  • Zenithic
  • Hexadecimal
    Random links:17 de enero | Erich von Falkenhayn | Rodillo encendido | Jasmonate metílico | Zitácuaro

  • © 2007-2008 enciclopediaespana.com; article text available under the terms of GFDL, from en.wikipedia.org
    ="http://pagead2.googlesyndication.com/pagead/show_ads.js">