lunes, 23 de febrero de 2009

Código fuente obtener la suma máxima de las columnas de una matriz, así como su índice.

Sencillo ejemplo, implementado en lenguaje ensamblador (Símplez i^3).
org 0 br /buc1(nfil) data 2(ncol) data 2(pind) data index(pres) data resul(pmat1) data mat1(pmat2) data mat2(res1) data 0(res2) data 0(nfil1) data 2(nfil2) data 2(c1) res 1(c2) res 1(buc1) ld.a,/nfil1 bz /buc2 ld.a,[/pmat1] add.a,/res1 st.a,/res1 ld.a,/pmat1 add.a,/ncol st.a,/pmat1 ld.a,/nfil1 sub.a,#1 st.a,/nfil1 br /buc1(buc2) ld.a,/nfil2 bz /scol ld.a,[/pmat2] add.a,/res2 st.a,/res2 ld.a,/pmat2 add.a,/ncol st.a,/pmat2 ld.a,/nfil2 sub.a,#1 st.a,/nfil2 br /buc2(scol) ld.x,/res1 st.x,/c1 ld.a,/res2 st.a,/c2(bucle) ld.a,/res2 bz /fin2 ;col1>col2 ld.x,/res1 bz /fin1 ;col1>col2 sub.x,#1 st.x,/res1 sub.a,#1 st.a,/res2 br /bucle(fin1) ld.a,/c2 st.a,[/pres] ld.a,#2 st.a,[/pind] br /fin3(fin2) ld.a,/c1 st.a,[/pres] ld.a,#1 st.a,[/pind](fin3) ld.a,[/pres] ld.x,[/pind] halt
org 300(mat1) data 1(mat2) data 1 data 1 data 3 data 0 data 0 org 400(index) res 1(resul) res 2 END

1 comentario:

  1. Lo de "Ejemplo sencillo" te ha quedao mu bien. Eres mu friki, jaja.

    ResponderEliminar