arm_inst_mul
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_mul [2020/05/28 13:14] – andrew | arm_inst_mul [2020/11/20 22:30] (actual) – editor externo 127.0.0.1 | ||
---|---|---|---|
Línea 1: | Línea 1: | ||
- | ====== Instrucciones de multiplicación, | + | ====== Instrucciones de multiplicación, |
Las instrucciones de multiplicación admiten muchas posibilidades, | Las instrucciones de multiplicación admiten muchas posibilidades, | ||
Línea 54: | Línea 54: | ||
Donde | Donde | ||
+ | |||
<y> Especifica que mitad del registro <Rs> es usada como operando para multiplicar. | <y> Especifica que mitad del registro <Rs> es usada como operando para multiplicar. | ||
Línea 104: | Línea 105: | ||
| smultt | | smultt | ||
- | .data | + | |
- | | + | |
- | | + | |
- | var3 : .word 0x00012345 | + | |
- | @ | + | |
- | | + | |
- | | + | main : |
- | main : | + | |
- | | + | |
- | | + | |
- | ldr r2, = var3 | + | ldr r3, [r0] |
- | ldrh r3, [r0] /* r3 <- baja (* r0) */ | + | ldr r4, [r1] |
- | ldrh r4, [r1] /* r4 <- baja (* r1) */ | + | smulbb |
- | muls r5, r3, r4 /* r5 <- r3*r4 */ | + | /* r5=0x2468642 */ |
- | ldr r3, [r0] /* r3 <- *r0 */ | + | // |
- | ldr r4, [r1] /* r4 <- *r1 */ | + | |
- | umull r5, r6, r3, r4 /* r6:r5 <- r3*r4 */ | + | ldrh r4, [r1] /* r4 <- baja(var2) |
- | smull r5, r6, r3, r4 | + | muls r5, r3, r4 /* r5 <- baja(var1)*baja (var2) |
- | ldrh r3, [r0] /* r3 <- baja (* r0) */ | + | /* r5=0x2468642 |
- | | + | |
- | smulwb | + | |
- | smultt | + | |
+ | umull r5, r6, r3, r4 | ||
+ | smull r5, r6, r3, r4 | ||
+ | fin: | ||
+ | mov r7, #1 | ||
+ | swi 0 | ||
==== división ==== | ==== división ==== |
×
iphelper toolbox
you see this when javscript or css is not working correct
Untested
arm_inst_mul.1590671646.txt.gz · Última modificación: 2020/05/28 13:14 por andrew