Examen Febrero 2010 Pr2.b

Examen Febrero 2010 Pr2.b

de Matias Damian Mansilla Scala -
Número de respuestas: 1
http://www.fing.edu.uy/inco/cursos/arqsis/examenes/2010/Sol2010FEB.pdf

En el problema 2 parte b, cuando hay que cargar la ROM, había hecho esta parte y al ver la solucion vi que hicieron otra cosa para obtener los bcd, creo que es lo mismo, pero me gustaría que me lo confirmara alguien más y si es por algun motivo que se hace de una manera u otra.

Mi solucion es:
for (i = 0; i++; i < 65536) { 
bcd1 = i & (FF00) >> 8 ; 
  bcd2 = i & (00ff);
op1 = (bcd1 / 16) * 10 + bcd1 % 16; 
op2 = (bcd2 / 16) * 10 + bcd2 % 16
  if (op1 > op2)     
   rom[i] = op1 | 0x80; 
  else 
   rom[i] = op2; 
}

La diferencia es en la parte donde se obtiene el bcd1 y el bcd2 mas que nada.

La otra duda que tengo es si cuando uno hace rom[i] = op1 el cual es un entero, la rom automaticamente lo transforma a binario para almacenarlo digamos, los ejercicios que he hecho me hacen pensar que si.

Gracias
En respuesta a Matias Damian Mansilla Scala

Re: Examen Febrero 2010 Pr2.b

de Gonzalo Tejera -
Hola. Las dos formas obtienen el mismo resultado en los bcd1 y 2. Tu implementación para el primer caso ejecuta una operación de más.

Sí, se copia la secuencia de bits de la representación a la ROM.

Saludos, Gonzalo