Estoy interesado, por qué para el microcontrolador Cortex M3 (stm32f103) el compilador a veces genera una instrucción NOP después de la bifurcación. Y por qué a veces no es así.
Por ejemplo:
0x08000496 2400 MOVS r4,#0x00
0x08000498...
Digamos que necesito probar un pin de puerto como este:
sbic PIND,2
Esto debería funcionar, pero en C definitivamente haría un #define INPUT ((PORTD&(1<<2))!=0) . ¿Es posible algo similar en ensamblador? Algo como
.def I...
Necesito tener una pausa programable con la mayor precisión posible. Para lograr esto tengo el siguiente código GCC:
void delay(unsigned char d){
volatile unsigned char i=d;
while(i>0) i--;
}
Que se compila para:
1cc: 89 81...
Siempre que haya escrito un diseño de microprocesador simple en VHDL en el que he decidido qué instrucciones tiene que hacer para cada tarea, entonces tendré que escribir el código de prueba en un lenguaje de máquina que sea tedioso y propenso a...
Estaba leyendo sobre algo en las documentaciones del ensamblador del microcontrolador AVR y generalmente me encuentro con una línea que se utiliza para describir cómo afectaría una instrucción a un indicador específico en el registro de estado....
Estoy empezando a aprender microcontroladores AVR. Pero mi sistema operativo es Linux. He instalado avr-binutils con avr-as . Pero no puedo encontrar documentación al respecto; especialmente, la sintaxis avr (por ejemplo, para x86 s...
Probablemente sea un error estúpido, pero no puedo entender lo que está pasando.
Tengo una placa Discovery con STM32L100RC .
El oscilador HSI se ejecuta a 16 MHz y se selecciona como la fuente del reloj del sistema, por lo que todo deberí...
Tengo un proyecto de ensamblador que compila y enlaza bien con MPLABX. Ahora estoy tratando de construirlo desde la línea de comandos. El intento de usar la línea de comandos de MPLABX falla.
Cuando estoy llamando:
C: \ MiscStuffs > "C:...
Lamentablemente, no hay preguntas en la Pila con respecto a ARM y ensamblador.
Mi preocupación - es dispositivos críticos de tiempo. Tomemos como ejemplo uno de mis dispositivos basados en AVR (programa compilado con GCC) que debería hacer al...
Por ejemplo, en el código de ensamblaje tenemos / add rd rs rt / pero en el código de máquina tenemos / opcode rs rt rd /, donde el registro de destino está en la última posición. ¿Por qué los MIPS organizan su código así?
Sé que en código de má...