7 votos

¿Cómo usar la calculadora de programación en OS X?

Intento sacar lo mejor de la calculadora de programación en OS X, pero no conozco estas funciones:

  • byte flip
  • word flip
  • X<
  • X>>Y
  • RoL/RoR (¿son sólo sll/srl?)

También es posible realizar el complemento de un dos en un rango más estrecho, es decir, 16 bits en lugar de 64 bits?

1 votos

Para limitar el rango de 2 o 1, basta con sumar FFFF para 16 bits, FF para 8, etc. ASEGÚRESE de mantenerlo en formato hexadecimal mientras realiza estas operaciones, de lo contrario lo estropeará.

0 votos

También existe una alternativa a la calculadora de existencias: bitcalc.abeghyan.com

7voto

Rilakkuma Puntos 417

Volteando

El byte flip y el word flip intercambiarán bytes o palabras. Técnicamente funciona así:

Digamos que tenemos un valor de dos bytes (hexadecimal): 0x3344

El número consiste en dos bytes, el más bajo es 0x44, y el más alto es 0x33, así que pongámoslos en dos células imaginarias de un tamaño de un byte:

[33][44]

Ahora, voltea las células:

[44][33]

Por lo tanto, el valor del byte volteado será 0x4433

De la misma manera con las palabras, considerando que la palabra consiste en dos bytes. Supongamos que tenemos un valor de dos palabras: 0x12345678

Dividirlas en dos células imaginarias, que ahora contienen una palabra (2 bytes) cada una:

[1234][5678]

Ahora, voltea las células:

[5678][1234]

Por lo tanto, el valor de la palabra volteada será 0x56781234

Cambiando

Cambiar los valores de los cambios en el sentido de los bits. ¿Qué es lo que significa?

Tomemos un número decimal muy simple: 5 Luego, convirtámoslo a su representación binaria: 101 Entonces, cambiemos a la izquierda a la 1:

[101] << [1010]

Básicamente movimos toda la secuencia binaria a la izquierda de una posición y llenamos el espacio vacío con un cero.

Ahora haz lo mismo, pero con el cambio a la derecha:

[101] >> [010]

nuestro número es el 10 ahora. El 1 inferior se pierde al cambiar a la derecha. El cero de la izquierda es sólo para mostrar y no tiene valor. // Técnicamente hay una bandera de la CPU que indica que el bit se perdió, pero no es relevante para la calculadora.

Rotando

La rotación funciona absolutamente igual que el desplazamiento con una excepción: los bits nunca se pierden. Por lo tanto, tomamos el mismo valor decimal 5 y su representación binaria 101. Luego lo rotamos dentro de un byte:

[00000101] ROR [10000010]

Como pueden ver, el [1] que se perdió en el desplazamiento a la derecha fue llevado al principio de nuestro byte.

Lo mismo con el desplazamiento a la izquierda, vamos a realizar series de rotaciones por 1 bit a la izquierda hasta que llevemos un bit:

[00000101] ROL [00001010]
[00001010] ROL [00010100]
[00010100] ROL [00101000]
[00101000] ROL [01010000]
[01010000] ROL [10100000]
[10100000] ROL [01000001]

0 votos

Voltear palabras es otra forma de decir intercambiar endian.

0 votos

@MarcusJ o más bien lo contrario. Flipping es un término amplio y genérico, endian swapping se reduce a la aplicación concreta.

1voto

Mike Puntos 1018
  • byte flip / word flip - No estoy seguro de estos
  • X<<Y / X>>Y - desplazamiento de bits X a la izquierda/derecha Y veces
  • RoL / RoR - Gira a la izquierda/derecha, similar al bitshifing, excepto que los bits se envuelven en forma circular

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X