InglésFrancésEspañol

Ad


icono de página de OnWorks

bin_dec_hex - Online en la nube

Ejecute bin_dec_hex en el proveedor de alojamiento gratuito de OnWorks a través de Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando bin_dec_hex que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


bin_dec_hex: cómo utilizar la notación binaria, decimal y hexadecimal.

DESCRIPCIÓN


La mayoría de la gente usa el sistema de numeración decimal. Este sistema utiliza diez símbolos para representar
números. Cuando esos diez símbolos se agotan, comienzan de nuevo e incrementan la
posición a la izquierda. El dígito 0 solo se muestra si es el único símbolo en la secuencia,
o si no es el primero.

Si esto le suena críptico, esto es lo que acabo de decir en números:

0
1
2
3
4
5
6
7
8
9
10
11
12
13

y así sucesivamente.

Cada vez que se incrementa el dígito nueve, se restablece a 0 y la posición anterior (al
izquierda) se incrementa (de 0 a 1). Entonces el número 9 puede verse como "00009" y cuando
debe incrementar 9, lo restablecemos a cero e incrementamos el dígito justo antes del 9 para que
el número se convierte en "00010". Ceros iniciales no escribimos excepto si es el único dígito
(número 0). Y, por supuesto, escribimos ceros si ocurren en cualquier lugar dentro o al final de un
número:

"00010" -> "0010" -> "010" -> "10", pero no "1".

Esto era bastante básico, ya lo sabías. ¿Por qué lo dije? Bueno, las computadoras generalmente
no representan números con 10 dígitos diferentes. Solo usan dos símbolos diferentes,
a saber, "0" y "1". Aplique las mismas reglas a este conjunto de dígitos y obtendrá el binario
sistema de numeración:

0
1
10
11
100
101
110
111
1000
1001
1010
1011
1100
1101

y así sucesivamente.

Si cuenta el número de filas, verá que estos son nuevamente 14 números diferentes. los
los números son los mismos y significan lo mismo que en la primera lista, solo usamos un
representación. Esto significa que debe conocer la representación utilizada, o como es
llamado sistema de numeración o base. Normalmente, si no especificamos explícitamente el
sistema de numeración utilizado, implícitamente utilizamos el sistema decimal. Si queremos utilizar cualquier otro
sistema de numeración, tendremos que dejarlo en claro. Hay algunos métodos ampliamente adoptados para
hazlo. Una forma común es escribir 1010(2) lo que significa que anotó un número en su
representación binaria. Es el número diez. Si escribiera 1010 sin especificar
la base, el número se interpreta como mil diez utilizando la base 10.

En los libros, es común otra forma. Utiliza subíndices (pequeños caracteres, más o menos en
entre dos filas). En ese caso, puede omitir el paréntesis y anotar el
número en caracteres normales seguido de dos pequeños justo detrás.

Como el sistema de numeración utilizado también se llama base, hablamos del número 1100 base 2,
el número 12 en base 10.

Dentro del sistema binario, es común escribir ceros a la izquierda. Los numeros estan escritos
abajo en series de cuatro, ocho o dieciséis según el contexto.

Podemos usar la forma binaria cuando hablamos con computadoras (... programación ...), pero los números
tendrá grandes representaciones. El número 65'535 (a menudo en el sistema decimal a 'es
utilizado para separar bloques de tres dígitos para facilitar la lectura) se escribiría como
1111111111111111(2) que es 16 veces el dígito 1. Esto es difícil y propenso a errores.
Por tanto, normalmente utilizaríamos otra base, llamada hexadecimal. Utiliza 16 diferentes
símbolos. Primero se utilizan los símbolos del sistema decimal, luego continuamos con
caracteres alfabéticos. Obtenemos 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E y F. Esto
se elige el sistema porque la forma hexadecimal se puede convertir en el sistema binario muy
fácilmente (y viceversa).

Hay otro sistema en uso, llamado sistema octal. Esto era más común en el
en los viejos tiempos, pero ya no se usa con mucha frecuencia. Como puede encontrarlo en uso a veces,
Debería acostumbrarse y se lo mostraremos a continuación. Es la misma historia que con la otra
representaciones, pero con ocho símbolos diferentes.

Binario (2)
octales (8)
Decimal (10)
hexadecimales (16)

(2) (8) (10) (16)
00000 0 0 0
00001 1 1 1
00010 2 2 2
00011 3 3 3
00100 4 4 4
00101 5 5 5
00110 6 6 6
00111 7 7 7
01000 10 8 8
01001 11 9 9
01010 12 10 A
01011 13 11 B
01100 14 C
01101 15 D
01110 E
01111 F
10000 20 16 10
10001 21 17 11
10010 22 18 12
10011 23 19 13
10100 24 20 14
10101 25 21 15

La mayoría de las computadoras que se utilizan hoy en día utilizan bytes de ocho bits. Esto significa que almacenan
ocho bits a la vez. Puedes ver por qué el sistema octal no es el más práctico para eso:
Necesitaría tres dígitos para representar los ocho bits y esto significa que tendría que usar
un dígito completo para representar solo dos bits (2 + 3 + 3 = 8). Esto es un desperdicio. Para hexadecimal
dígitos, solo necesita dos dígitos que se utilizan por completo:

(2) (8) (10) (16)
11111111 377 FF

Puede ver por qué se pueden convertir rápidamente binarios y hexadecimales: Para cada hexadecimal
dígito hay exactamente cuatro dígitos binarios. Tome un número binario: tome cuatro dígitos de
a la derecha y haga un dígito hexadecimal a partir de él (consulte la tabla anterior). Repite esto hasta
no hay más dígitos. Y al revés: tome un número hexadecimal. Para cada
dígito, anote su equivalente binario.

Las computadoras (o más bien los analizadores que se ejecutan en ellas) tendrían dificultades para convertir un
número como 1234(dieciséis). Por lo tanto, los números hexadecimales se especifican con un prefijo. Esta
el prefijo depende del idioma en el que esté escribiendo. Algunos de los prefijos son "0x" para C, "$"
para Pascal, "#" para HTML. Es común suponer que si un número comienza con un cero,
es octal. No importa qué se use siempre que sepa qué es. Usaré "0x"
para hexadecimal, "%" para binario y "0" para octal. Los siguientes números son todos los
lo mismo, solo su representación (base) es diferente: 021 0x11 17% 00010001

Para hacer aritmética y conversiones necesitas entender una cosa más. Es algo
ya lo sabes pero quizás no lo "ves" todavía:

Si escribe 1234, (sin prefijo, entonces es decimal) está hablando del número uno
mil doscientos treinta y cuatro. En una especie de fórmula:

1 * 1000 = 1000
2 * 100 = 200
3 * 10 = 30
4 * 1 = 4

Esto también se puede escribir como:

1 * 10 ^ 3
2 * 10 ^ 2
3 * 10 ^ 1
4 * 10 ^ 0

donde ^ significa "al poder de".

Estamos usando la base 10 y las posiciones 0,1,2 y 3. La posición más a la derecha debería
NO se debe multiplicar por 10. El segundo de la derecha debe multiplicarse una vez con
10. El tercero de la derecha se multiplica por 10 dos veces. Esto continúa por lo que sea
se utilizan posiciones.

Es lo mismo en todas las demás representaciones:

0x1234 será

1 * 16 ^ 3
2 * 16 ^ 2
3 * 16 ^ 1
4 * 16 ^ 0

01234 sería

1 * 8 ^ 3
2 * 8 ^ 2
3 * 8 ^ 1
4 * 8 ^ 0

Este ejemplo no se puede hacer para binario ya que ese sistema solo usa dos símbolos. Otro
ejemplo:

% 1010 sería

1 * 2 ^ 3
0 * 2 ^ 2
1 * 2 ^ 1
0 * 2 ^ 0

Hubiera sido más fácil convertirlo a su forma hexadecimal y simplemente traducir% 1010
en 0xA. Después de un tiempo te acostumbras. No necesitarás hacer ningún cálculo.
más, pero sepa que 0xA significa 10.

Para convertir un número decimal en hexadecimal, puede usar el siguiente método. Tomará
algo de tiempo para poder hacer las estimaciones, pero será más fácil cuando use el sistema
más frecuentemente. Veremos otra forma más adelante.

Primero necesita saber cuántas posiciones se utilizarán en el otro sistema. Para hacerlo tú
necesita saber los números máximos que utilizará. Bueno, eso no es tan difícil como parece. En
decimal, el número máximo que puede formar con dos dígitos es "99". El máximo para
tres: "999". El siguiente número necesitaría una posición adicional. Invierte esta idea y lo harás
ver que el número se puede encontrar tomando 10 ^ 3 (10 * 10 * 10 es 1000) menos 1 o 10 ^ 2 menos
uno.

Esto también se puede hacer para hexadecimal:

16 ^ 4 = 0x10000 = 65536
16 ^ 3 = 0x1000 = 4096
16 ^ 2 = 0x100 = 256
16 ^ 1 = 0x10 = 16

Si un número es menor que 65'536, cabrá en cuatro posiciones. Si el número es mayor
de 4'095, debes usar la posición 4. ¿Cuántas veces puedes restar 4'096 de la
número sin ir por debajo de cero es el primer dígito que escribe. Esto siempre será un
número de 1 a 15 (0x1 a 0xF). Haz lo mismo con las otras posiciones.

Probemos con 41'029. Es menor que 16 ^ 4 pero mayor que 16 ^ 3-1. Esto significa que nosotros
tiene que utilizar cuatro posiciones. Podemos restar 16 ^ 3 de 41'029 diez veces sin ir
bajo cero. Por lo tanto, el dígito más a la izquierda será "A", por lo que tenemos 0xA ????. El numero es
reducido a 41'029 - 10 * 4'096 = 41'029-40'960 = 69. 69 es menor que 16 ^ 3 pero no mayor
que 16 ^ 2-1. Por tanto, el segundo dígito es "0" y ahora tenemos 0xA0 ??. 69 es más pequeño que
16 ^ 2 y mayor que 16 ^ 1-1. Podemos restar 16 ^ 1 (que es simplemente 16) cuatro veces y
escriba "4" para obtener 0xA04 ?. Reste 64 de 69 (69 - 4 * 16) y el último dígito es 5 ->
0xA045.

El otro método acumula el número de la derecha. Intentemos 41'029 de nuevo. Dividido por
16 y no use fracciones (solo números enteros).

41'029 / 16 es 2'564 con un resto de 5. Escriba 5.
2'564 / 16 es 160 con un resto de 4. Escribe el 4 antes del 5.
160/16 es 10 sin resto. Anteponer 45 con 0.
10/16 está por debajo de uno. Termine aquí y anteponga 0xA. Termina con 0xA045.

El método a utilizar depende de usted. Utilice lo que funcione para usted. Los uso ambos sin
poder decir qué método utilizo en cada caso, solo depende del número, creo.
El hecho es que algunos números aparecerán con frecuencia durante la programación. Si el número está cerca de
uno con el que estoy familiarizado, entonces usaré el primer método (como 32'770 que está en 32'768
+ 2 y solo sé que es 0x8000 + 0x2 = 0x8002).

Para binario, se puede utilizar el mismo enfoque. La base es 2 y no 16, y el número de
las posiciones crecerán rápidamente. Usar el segundo método tiene la ventaja de que puede ver
muy fácilmente si debe escribir un cero o un uno: si divide por dos el resto
será cero si es un número par y uno si es un número impar:

41029/2 = 20514 resto 1
20514/2 = 10257 resto 0
10257/2 = 5128 resto 1
5128/2 = 2564 resto 0
2564/2 = 1282 resto 0
1282/2 = 641 resto 0
641/2 = 320 resto 1
320/2 = 160 resto 0
160/2 = 80 resto 0
80/2 = 40 resto 0
40/2 = 20 resto 0
20/2 = 10 resto 0
10/2 = 5 resto 0
5/2 = 2 resto 1
2/2 = 1 resto 0
1/2 por debajo de 0 resto 1

Anote los resultados de derecha a izquierda:% 1010000001000101

Agrupar por cuatro:

1010000001000101%
% 101000000100 0101
% 10100000 0100 0101
% 1010 0000 0100 0101

Convertir a hexadecimal: 0xA045

Agrupe% 1010000001000101 por tres y conviértalo en octal:

1010000001000101%
% 1010000001000 101
% 1010000001 000 101
% 1010000 001 000 101
% 1010 000 001 000 101
% 1 010 000 001 000
% 001 010 000 001 000
1 2 0 1 0 5 -> 0120105

Entonces:% 1010000001000101 = 0120105 = 0xA045 = 41029
o: 1010000001000101(2) = 120105(8) = A045(16) = 41029(10)
o: 1010000001000101(2) = 120105(8) = A045(16) = 41029

Al principio, mientras agrega números, los convertirá a su forma decimal y luego volverá
en su forma original después de hacer la adición. Si usa el otro sistema de numeración
a menudo, verá que podrá hacer aritmética directamente en la base que es
usó. En cualquier representación es igual, sume los números de la derecha, anote el
dígito más a la derecha del resultado, recuerde los otros dígitos y utilícelos en el siguiente
ronda. Continúe con el segundo dígito desde la derecha y así sucesivamente:

% 1010 +% 0111 -> 10 + 7 -> 17 ->% 00010001

se convertirá

1010%
% 0111 +
||||
||| + - suma 0 + 1, el resultado es 1, nada para recordar
|| + --- suma 1 + 1, el resultado es% 10, escribe 0 y recuerda 1
| + ---- sumar 0 + 1 + 1 (recordado), resultado = 0, recordar 1
+ ----- sumar 1 + 0 + 1 (recordado), resultado = 0, recordar 1
nada que agregar, 1 recordado, resultado = 1
--------
% 10001 es el resultado, me gusta escribirlo como% 00010001

Para valores bajos, intente hacer los cálculos usted mismo y luego verifíquelos con una calculadora.
Cuanto más hagas los cálculos tú mismo, más encontrarás que no hiciste
errores. Al final, harás cálculos en otras bases con la misma facilidad con que los haces en
decimal.

Cuando los números crezcan, tendrá que darse cuenta de que una computadora no se llama
computadora solo para tener un buen nombre. Hay muchas calculadoras diferentes disponibles, use
ellos. Para Unix, puede usar "bc", que es la abreviatura de Binary Calculator. Calcula no
solo en decimal, pero en todas las bases que querrás usar (entre ellas, Binary).

Para personas con Windows: inicie la calculadora (inicio-> programas-> accesorios-> calculadora) y
si es necesario, haga clic en ver-> científico. Ahora tiene una calculadora científica y puede calcular
en binario o hexadecimal.

Use bin_dec_hex en línea usando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

  • 1
    limpieza profunda
    limpieza profunda
    Un script de Kotlin que destruye todas las compilaciones
    cachés de proyectos Gradle/Android.
    Útil cuando Gradle o el IDE le permiten
    abajo. El script ha sido probado en
    macOS, pero...
    Descargar limpieza profunda
  • 2
    Complemento Eclipse Checkstyle
    Complemento Eclipse Checkstyle
    El complemento Eclipse Checkstyle
    integra el código Java Checkstyle
    auditor en el IDE de Eclipse. El
    El complemento proporciona retroalimentación en tiempo real a
    el usuario sobre viola ...
    Descargar el complemento Checkstyle de Eclipse
  • 3
    AstrOrzPlayer
    AstrOrzPlayer
    AstrOrz Player es un reproductor multimedia gratuito
    software, parte basado en WMP y VLC. los
    jugador tiene un estilo minimalista, con
    más de diez colores temáticos, y también puede
    b ...
    Descargar AstrOrzPlayer
  • 4
    movistartv
    movistartv
    Kodi Movistar+ TV es un ADDON para XBMC/
    Kodi que permite deshacerse de un
    decodificador de los servicios IPTV de
    Movistar integrado en uno de los
    mediacenters ma...
    descargar movistartv
  • 5
    Código :: Bloques
    Código :: Bloques
    Code::Blocks es un programa gratuito, de código abierto,
    IDE multiplataforma C, C++ y Fortran
    construido para satisfacer las necesidades más exigentes
    de sus usuarios. Está diseñado para ser muy
    extens ...
    Descargar Código::Bloques
  • 6
    En medio de
    En medio de
    Interfaz de Minecraft en medio o avanzada
    y el seguimiento de datos / estructura es una herramienta para
    mostrar una descripción general de un Minecraft
    mundo, sin realmente crearlo. Eso
    puede ...
    Descargar en medio
  • Más "

Comandos de Linux

Ad