ðH www.oocities.org/ar /moni2201/suma.htm www.oocities.org/ar/moni2201/suma.htm .delayed x €€ÕJ ÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈ –ˆ Nt OK text/html pÑ2÷ Nt ÿÿÿÿ b‰.H Mon, 28 Jul 2003 15:41:21 GMT _ Mozilla/4.5 (compatible; HTTrack 3.0x; Windows 98) en, * €ÕJ Nt
SUMA DE DOS NUMEROS
Introduccion
Este programa
,llamado edusumar (con el siguiente enlace edusumar.htm se lo
puede bajar en formato de hoja web,que el lector puede trabajar con el mismo
con el copiar-pegar )tiene como meta sumar dos numeros de cuatro digitos,el
mismo fue escrito en lenguaje assembler.
El programa no es el ideal,
debe poseer redundancias y algunas operaciones seguramente pueden ser
simplificadas,yo las ignoro.
Invito al lector deseoso de conocer como trabaja un
computador, a seguir estas lineas,que esa es mi meta.
El lector puede recurrir a
las siguientes paginas para comprender mas profundamente lo que se explicara a
continuacion :
Funcionamiento de un
ordenador
Curso trucho
de assembler ,una
excelente introduccion al lenguaje,escrito por Jorge Gimenez muy recomendado para aquellos que como yo que
deben comenzar de cero. http://usuarios.advance.com.ar/trimegis/
Ensamblador ,este curso fue iniciado como una pagina
de txt,luego el autor Javier de Lucas Linares ,la cambio a una
pagina de tipo word y la ultima version en html con mucha grafica que molesta y
sin enlaces internos,pero de cualquier forma muy bien escrita que el lector
puede pasar inmediatamente el texto y sin la grafica a otra hoja(con el
copy-pegar) y agregar los enlaces internos en el indice como lo hice yo. http://platea.pntic.mec.es/~jdelucas/ensamblador.htm
,o para los que prefieren el curso en Word:
http://www.angelfire.com/nf/tecvirtual/download/CursoAsm.zip
Assembly Tutorial ,curso en ingles para
aclarar algunos temas,que se presentaran durante el desarrollo de este
programa. http://www.gamedev.net/reference/articles/article215.asp
Como “ herramienta de trabajo”,yo utilice el Word y para el
procesamiento del programa ,el
Turbo Debugger,Version 2.01(Borland International,1988,1990),que se puede
conseguir en este enlace TASM
4.0 (Turbo
Assembler 4.0).
Para escribir un programa
de este tipo actualmente no es necesario utilizar este lenguaje,hay medios mas
eficaces donde hacer a+b=c
El programa a estudiar debe realizar la siguiente operacion: permitir introducir los dos numero por medio del teclado,presentarlos en la pantalla del monitor a medida que se escriban y el resultado de la suma una vez realizado tal como se indica a continuacion:
El programa
se estructura de la siguiente forma :
A medida que el lector lea el programa linea a linea,encontrara
explicaciones de los pasos que se realizan en el programa,estas notas no forman
parte del programa y se escriben anteponiendo el ; a cada frase ,esta tecnica es muy util a la hora de revisar el
programa.Luego cada uno de estos dos bloques se divide de la siguiente forma:
Se escribe el nombre del programa
Se
escribe el primer texto: “Primer numero :”
Para escribir
el programa lo hacemos con el editor de texto Word y lo guardamos en dos
formas,como Word Document y como Text Only,se puede escribir
directamente en la forma de Text Only,los dos files se guardan en una carpeta
que yo la denommino TASM 4.0,que esta inmediatamente en la carpeta Mis
documentos.Dentro de la carpeta TASM 4.0,guardamos todos los
archivos que se bajaron de TASM
4.0 (Turbo
Assembler 4.0),como se muestra en la sigiente figura:
en la carpeta estan los archivos edusuma.exe,edusuma.txt y edusuma.asm.(edusuma y edusumar es el mismo programa).
La parte del programa
Se escribe el nombre del programa
Se
escribe el primer texto: “Primer numero :”
,en la cual se escriben datos en pantalla, se puede estudiar en este enlace,donde se describe un pequeno programa en el cual se escribe Hola mundo.
Los siguientes comentarios ayudaran al lector a analizar el programa,se debe entrar en el programa Td(estudiar el tema en este enlace )(ver la figura arriba) y comenzaremos con la presentacion,la misma se guardo en la memoria en forma automatica como se muestra a continuacion :
ds ,significa data
segment,observar que P es 50 hex ,72 hex es r y asi sucesivamente en el
codigo ASCII.
La parte :
Introduccion del primer numero y su presentacion en
pantalla
requiere algo de
explicacion,el siguiente es un diagrama de flujo de esta parte del programa :
En el siguiente dibujo
se observa como se realiza la suma,vemos las posiciones de memoria y el dato
que se acumulo en el mismo,como un numero en hexa,tomemos por ejemplo la suma 6+9
que tiene por resultado 15 o Fh,luego usamos un bloque que se denomina beta,en
el cual se averigua cual es el resultado de esta suma parcial,para acumular el
numero que se va a representar en el resultado(en ASIIC);finalmente los valores
obtenidos de la suma y que se obtuvieron del bloque beta en codigo ASIIC,son
acumulados en las posiciones de memoria 4,5,6 y 7 y luego son presentados por
orden.
Eduardo Ghershman,26.6.2002 enlace
a CIENCIA