El problema planteado consiste en crear un programa que permita ordenar ascendentemente los datos de un vector usando el método de ordenamiento selección. Se debe usar lenguaje ensamblador.
El siguiente programa hace uso de las instrucciones lw, sw, la, li, beq, sll
Para ordenar un vector por el método de ordenamiento selección usando código ensamblador, lo primero que se debe hacer es entender el problema, plantear la solucion, imaginar el algoritmo y luego usar la arquitectura de su computador para crear el código. Si necesitas referencias sobre este algoritmo en LAN, encuentralo usando el buscador de esta pagina.
LBN: Lenguaje de Bajo Nivel (programación mas cerca del hardware, de los circuitos, de los componentes, de las cosas).
Programar a bajo nivel significa andar de la mano con su hardware, entender cada valor que almacene su programa a donde va a parar en su disco duro (direccion exacta en memoria).
Este programa en código Assembly toma como base un word de 10 valores los cuales los cargara en memoria para posteriormente mostrarlos ordenados de menor a mayor.
- La instruccion lw, hace una carga de valor a un registrador
- La instruccion sw, hace una carga de registrador a memoria
- La instruccion la, hace una carga de texto a un registrador
- La instruccion li, hace una carga a un registrador normalmente para indicar una accion al sistema mediante una llamada syscall o simplemente cargar un entero
- La instruccion beq, tiene la funcionalidad de: if(a == b)
- La instruccion sll, hace un corrimiento lógico a la izquierda. n al cuadrado
Descargue aqui el codigo assembly completo de este ejercicio.
Quiero hacer este programa… Pero ¿Cómo funciona?
La ejecución paso a paso del programa la puede ver en la