Descargar la presentación
La descarga está en progreso. Por favor, espere
1
66.20 Organización de Computadoras
Lenguaje Assembler 66.20 Organización de Computadoras
2
Generación de un Ejecutable
3
Assembly Es un lenguaje de programación de bajo nivel.
Es una representación simbólica del código binario de las intrucciones. Utiliza mnemónicos para representar cada instrucción. OPCODE OPERANDOS addi $t1, $t2, 0xfffe 001000 01010 01001
4
Assembler (ensamblador)
Programa encargado de traducir código Assembly en su equivalente binario. Como salida genera un archivo objeto. addi $t1, $t2, xfffe PROCESO DE ENSAMBLADO 001000 01010 01001
5
Linker (vinculador) Enlaza los archivos objeto que pertenecen a un programa, y genera un programa ejecutable. Resuelve referencias a bibliotecas externas. Asigna las posiciones finales de memoria.
6
Modelo de Memoria La arquitectura MIPS divide la memoria en tres secciones: Segmento de texto. Segmento de datos (estáticos y dinámicos). Pila (stack).
7
Registros La arquitectura MIPS presenta 32 registros de propósito general, y 32 registros para punto flotante. Debe respetarse una convención para su uso: $a0-$a3 primeros 4 argumentos a un procedimiento. $v0 y $v1 valor de retorno de un procedimiento. $t0-$t9 almacenamiento temporal. $s0-$s7 almacenamiento de largo plazo. $sp puntero a la pila. $fp puntero al stack frame. $ra dirección de retorno en la llamada a un procedimiento.
8
Ejemplos Operación aritmética (adición): Pasaje de un parámetro:
addu $t0, $t6, 1 ($t0 $t6 + 1) Pasaje de un parámetro: li $a0, 10 ($a0 10) Retorno de un valor: li $v0, 1 ($v0 1)
9
Llamada a Procedimientos
Debe respetarse la convención para el uso de registros. Debe tomarse una porción de la pila (stack frame): Para almacenar los argumentos pasados. Para almacenar registros de largo plazo. Para almacenar las variables locales al procedimiento.
10
Llamada a Procedimientos (cont.)
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.