Tag: ALARMMANAGER
Estoy jugando con la macro asm! en un objetivo ARM (Thumb) integrado. Tengo un rutina de servicio de interrupción que está diseñada para obtener el número con el que se llamó a la instrucción svc: [cortexmrt::exception] unsafe fn SVCall() { let mut svc_num: u8; asm!( “ldr {0}, [sp, #40]”, // . . . Read more
Tengo un dispositivo Windows 11 para ARM (ARM64 también conocido como ARMv8 de 64 bits). Estoy tratando de ver si es posible obtener un compilador de C++ para trabajar nativamente en este dispositivo. Es decir, quiero que el compilador se ejecute nativamente en ARM, compilando software ARM que pueda ejecutarse . . . Read more
Estoy intentando aprender lenguaje ensamblador y estoy tratando de usar la función ADDS para sumar números de los primeros 3 registros en el registro 0. Hasta ahora tengo esto: .global _start _start: MOV R1, #5 MOV R2, #6 MOV R3, #7 ADDS R4, R1, R2 ADDS R0, R4, R3 SWI . . . Read more
Las instrucciones de hardware para la división entera han sido históricamente muy lentas. Por ejemplo, DIVQ en Skylake tiene una latencia de 42-95 ciclos [1] (y una capacidad de recurrencia de 24-90), para entradas de 64 bits. Sin embargo, hay procesadores más nuevos que funcionan mucho mejor: Goldmont tiene una . . . Read more
Hola, estoy intentando llamar a una subrutina de ensamblador desde C y me sale este error. En la página web de Arm solo se menciona que existe este error. Código en C: #include <stdint.h> extern void out_word(uint32_t out_address, uint32_t out_value); extern uint32_t in_word(uint32_t in_address); int main(void){ uint32_t value = in_word(0x60000200); . . . Read more