Archivo de la etiqueta: assembly

li, add, j – assembly (suma de cuadrados por sumas sucesivas)

El problema planteado es el siguiente: se desea generar la suma de los cuadrados de los primeros cien números naturales. Los cuadrados se deben generar por sumas sucesivas, así:

(2 = 1+3 =4)

(3 = 1+3+5 = 9)

(4 = 1+3+5+7 = 16)

(100 = 1+3+5+… = 100 ^ 2)

El siguiente programa hace uso de las instrucciones li, add, 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 calcula la suma de cuadrados por sumas sucesivas.

  • La instrucción li, hace una carga a un registrador normalmente para indicar una accion al sistema mediante una llamada syscall o simplemente cargar un entero
  • La instrucción add, efectúa una suma entre dos registradores o registrador – valor
  • La instrucción j, hace un salto a otro bloque

Descargue aquí el codigo assembly completo de este ejercicio.

Reto

Quiero hacer este programa… Pero ¿Cómo funciona?

La ejecución paso a paso del programa la puede ver en la

Simulación

ESCUCHANDO


Suscribete a nuestro canal

AMPLIAR ESCUCHANDO

programacion assembly: suma de cuadrados por sumas sucesivas
Figura. programacion assembly: suma de cuadrados por sumas sucesivas

EVALUAR APLICANDO
BUENAS PRÁCTICAS

Cualquier serie matemática se genera a través de una fórmula. Como ejercicio planteado puede programar para que en una sola linea de código se resuelva el problema de generar la suma de los cuadrados de los primeros cien números naturales.

[Tweet «»No haga en diez lineas de código lo que puede hacer en una» #Tutorias ☺»]