| 
  Universidad de Costa Rica  | 
 | 
| ![[<=]](../../../img/back.gif)  ![[home]](../../../img/home.gif)  | ![[<>]](../../../img/index.gif)  | ![[\/]](../../../img/bottom.gif)  ![[=>]](../../../img/next.gif)  | 
Ejecución de
 
 
FOR numero := 1 TO N DO BEGIN
    suma := 0;
    temp := numero;
    WHILE temp <> 0 DO BEGIN
        digito := temp MOD 10;     { <- }
        suma   := suma + (digito * digito * digito);  
        temp   := temp DIV 10;
    END;
END;
VAR     val
numero: 153
temp:    15
suma:    27
digito:   3
Armstrong.pas
Para enseñar programación de computadores, algunos profesores usan este bloque de código que contiene las instrucciones de programación más importantes. Por ejemplo, puede consultar:
    
http://www.di-mare.com/adolfo/p/princinf.htm
A partir de este bloque de código obtenga 2 programas, uno escrito en Pascal y otro en C++. Escoja y use 2 compiladores para obtener el lenguaje ensamblador para cada versión del programa. Asegúrese de quitarle las opciones de optimización de código a cada compilador antes de correrlo y obtener resultados.
Tome el código ensamblador que ha obtenido para cada versión del programa y modifíquelo incluyéndole comentarios explicativos que muestres la correspondencia entre el programa fuente y el que produce cada compilador. Luego compare los resultados obtenidos, y destaque las diferencias importanes que encuentre. Haga un concienzudo análisis de los resultados obtenidos y describa con exactitud las conclusiones a las que llega.
     
Luego de escribir la documentación de su programa 
envíe su trabajo por
correo electrónico. Para esto, haga un archivo empacado
.zip
cuyo nombre sea su número de carnet. Incluya en ese archivo 
lo siguiente:
.zip).*.c, *.cpp, *.h, etc.)..url
que permita abrir la página Internet en que está la documentación completa de su programa.     
Las cuentas de computador en la
ECCI se asignan de acuerdo 
al número de carnet. Por ejemplo, si su carnet es el 
número 95-28-09, para entregar su tarea usted debe crear el 
archivo
952809.zip
para enviarlo por
correo electrónico. Si varios alumnos participaron en 
la confección de la tareas, sus carnets deben incluirse en 
el nombre del archivo .zip:
952809-952810-952811.zip.
     
Luego haga en su cuenta personal un subdirectorio llamado 
public_html, que es bajo el que se instalan todas sus 
páginas Internet. Por ejemplo, si su solución 
está en el archivo
HTML
llamado
"OLP/t3sol952809.htm", entonces usted debe instalar esa 
página en el archivo
     
public_html/OLP/t3sol952809.htm
de su cuenta. Luego, para acceder esa página Internet, debe 
entrar a este sitio:
     
http://anubis.ecci.ucr.ac.cr/~e952809/OLP/t3sol952809.htm
| [InternetShortcut] URL=http://anubis.ecci.ucr.ac.cr/~e952809/OLP/t3sol952809.htm | 
952809.url
     
Como todas las cuentas de estudiante son la letra "e" seguida del 
número de carnet, para el estudiante de carnet "952809" la 
cuenta es
"e952809".
Para indicarle al servidor Internet a cuál cuenta entrar se 
usa el caracter "~" (Alt-126), seguido del nombre de 
la cuenta:
"~e952809".
En este caso, el archivo de acceso rápido a su página Internet se llamaría "952809.url".
Después de la fecha de entrega del programa, puede usted instalar en su cuenta personal su solución (no instale antes su solución en Internet, pues en ese caso sería usted culpable de facilitar la copia de su trabajo, y en consecuencia se haría acreedor a la sanción respectiva).
     
Por ejemplo, para entregar su tarea programada, el estudiante
952809
crea su archivo 952809.zip en el que aparece estos 
archivos (este alumno no hizo los programas de prueba):
p2-ta-1.cpp
rational.h
rational"
rational.cpp
rational"
(en este caso este archivo no existe, pues la clase 
rational.h es una clase
emplantillada por lo que todos los fuentes deben estar en el 
archivo de encabezado rational.h).
952809.doc
952809.htm
952809.dxg
952809.url
p2-ta-1.cbp
p2-ta-1.dsp
p2-ta-1.vcproj
p2-ta-1.dev
| Tiempo de entrega: | 7 días | |
| Modalidad: | En parejas | 
     http://www.di-mare.com/adolfo/p/convpas.htm
     
     http://java.sun.com/docs/codeconv/CodeConventions.pdf
     
| 
 | 
![[mailto:]](../../../img/mailbox.gif) Adolfo Di Mare <adolfo@di-mare.com>.
  Adolfo Di Mare <adolfo@di-mare.com>.
| ![[home]](../../../img/home.gif)  |   | ![[/\]](../../../img/top.gif)  |