El problema planteado se trata en determinar si un numero ingresado por teclado es o no primo
El siguiente programa hace uso de las instrucciones li, bne, j
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 determina si es o no primo un numero
- La instrucción li, hace una carga a un registrador normalmente para indicar una acción al sistema mediante una llamada syscall o simplemente cargar un entero
- La instrucción bne, hace referencia a if (a != b)
- La instrucción j, hace un salto a otro bloque
Descargue aquí 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
eoria
Aclare algunos conceptos
est
Tómese únicamente 90 segundos
ablero
Comparte tu Algoritmo
Observe que este programa tiene una estructura repetitiva mientras y en ella una condición compuesta. Esta es una practica eficiente que permite la salida inmediata del ciclo cuando ya no sea necesario un nuevo recorrido.
[Tweet «»Si retorna true o false no lo pregunte en una condicional» #Tutorias ☺»]
Otra buena practica es usar variables de tipo booleano o lógicas y en las sentencias condicionales no preguntar a manera de comparación debido a que la unidad logica del computador con solo poner su nombre de variables en la sentencia condicional compara inmediatamente. Ej. SI(band) será lo mismo que SI(band == true)