arm_inst_logicas
Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
arm_inst_logicas [2020/05/22 21:35] – andrew | arm_inst_logicas [2020/05/23 21:53] (actual) – mariano | ||
---|---|---|---|
Línea 132: | Línea 132: | ||
ldr r0, [r0] // r0=0xf0f0f0f0 | ldr r0, [r0] // r0=0xf0f0f0f0 | ||
- | eors r2, r1, r0 //r2 = r1 xor r0 = 0xa0000000 | + | eors r2, r1, r0 //r2 = r1 xor r0 = 0xe2c4a688 |
eors r3, r2, r0 //r3 = r1 | eors r3, r2, r0 //r3 = r1 | ||
Línea 181: | Línea 181: | ||
swi 0 | swi 0 | ||
+ | ==== Rotaciones y desplazamientos ==== | ||
+ | Veremos el funcionamiento de las instrucciones de desplazamiento y rotación. Las instrucciones de desplazamiento pueden ser lógicas o aritméticas. Los desplazamientos lógicos desplazan los bit del registro fuente introduciendo ceros (uno o más de uno). El último bit que sale del registro fuente se almacena en el | ||
+ | flag C (en la siguiente figura). | ||
+ | {{ : | ||
+ | |||
+ | El desplazamiento aritmético hace lo mismo, pero manteniendo el signo. Veamos la siguiente figura | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Las instrucciones de rotación también desplazan, pero el bit que sale del valor se realimenta. No existe ninguna instrucción para rotar hacia la izquierda ROL, ya que puede simularse con la de rotación a la derecha **ROR** que sí existe. En estas instrucciones el bit desplazado fuera es el mismo que el que entra, además de dejar | ||
+ | una copia en el flag C (Ver abajo). | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Las instrucciones de rotación con el carry funcionan de manera similar, pero el bit que entra es el que había en el flag C y el que sale va a parar al flag C. | ||
+ | Estas instrucciones sólo rotan un bit, al contrario que las anteriores que podían rotar/ | ||
+ | |||
+ | {{ : |
×
iphelper toolbox
you see this when javscript or css is not working correct
Untested
arm_inst_logicas.1590183335.txt.gz · Última modificación: 2020/05/22 21:35 (editor externo)