Buenas, tengo algunas dudas con la solucion planteada.
Veo que en ambas soluciones se multiplica cant_niveles*2 y luego se va aumentando i de a 2. ¿Me podrían explicar con que fin se hace esto? No entiendo la diferencia con no multiplicarlo y aumentar i de a 1.
Otra duda es que el struct esta definido con el dato como int, pero después cuando accede al nodo hijo lo hace en [S1 +2]. Siendo un int, ¿no debería ocupar 4 bytes?
Por otro lado, no entiendo el uso de DI en el loop en la solución alternativa
Es claro que la intención es usar BX para la variable i. Pero después hace ADD DX, [BX+DI], y no queda claro quién es DI porque hasta ese momento no habia sido introducido, pero parecería que en ese direccionamiento se usa BX para apuntar al comienzo de "cant_por_nivel" y DI como "i". ¿Pueden explicar un poco esa parte?
Gracias