11/3/04
This just came in earlier today. Given that the program is due in a few hours, I decided to deal with it immediately.
Prof Patt, I was wondering why these instructions won't multiply like they're supposed to. add r2,r1,0; r1=a,b,or c,r2=counter,r3=result loop add r3,r1,r1 add r2,r2,-1 BRnp loop it multiplies once then keeps on outputing the same result. what am I doing wrong? << name withheld to protect one whose instructions refuse to do what they are supposed to >>
I guess I could answer his question in fewer than ten
words. Probably most of you can. But that would defeat the whole purpose
of having the student learn for himself.
So, I would rather tell him to assemble the program and single step
it with the simulator. After each instruction, look at the contents
of each register. That is called: tracing the program. My hope is
that after he has executed seven or ten instructions, he will see
immediately "why these instructions won't multiply like they're supposed
to."
That is the problem with computers. They do what you you tell them
to do, not what you think they are supposed to do.
Yale Patt