Red de conocimiento informático - Conocimiento informático - Problemas de programación en lenguaje c integrado

Problemas de programación en lenguaje c integrado

¡Esto parece un conjunto de brazo!

Necesita aprender en las PC (estándar de llamada al procedimiento del brazo y el pulgar), que es el estándar de llamada al procedimiento del brazo y el pulgar.

Cuando se utilizan en lenguaje C, los registros en lenguaje ensamblador reciben nuevos significados, de la siguiente manera:

Nombre del registro

Reg # APCS Significado

Registro de trabajo R0 a1

Registro de trabajo R1 a2

Registro de trabajo R2 a3

Registro de trabajo R3 a4

R4 v1 debe ser protegido.

Se debe proteger R5 v2

Se debe proteger R6 v3.

Se debe proteger R7 v4

Se debe proteger R8 v5

Se debe proteger R9 v6.

Límite de pila R10 sl

Puntero de trama fp R11

IP R12

Puntero de pila sp R13

R14 registro de conexión lr

Contador de programa informático R15

Al llamar a una función en lenguaje C, el registro de trabajo se utiliza para almacenar parámetros formales. Hay cuatro a1-a4 arriba * * *Es decir, si el número de parámetros formales es menor que cuatro, entonces los parámetros formales se transferirán a estos cuatro registros de trabajo a la vez.

Para este ejemplo, los valores de r0 y r1 en el ensamblaje son los parámetros formales 555 168.

A través de las instrucciones addr0, r0, r 1; el valor en r0 se convierte en el resultado de la suma.

El programa devuelve el valor en a0 (es decir, r0).

Si el lenguaje C incorpora ensamblaje, debe seguir el estándar de ensamblaje AT;t. En este momento, puede especificar el registro utilizado para transferir parámetros formales, llamado registro de entrada, y el registro utilizado para regresar. , llamado registro de salida. Consulte los componentes integrados del brazo para obtener más detalles.