God, the title reminds me of when I when I took an x86 assembly class in college about a decade ago. Only 6 of the dumbest souls in the CS program dared to take the class the semester. The professor for the class was an ex-NASA computer engineer. Our test used to be writing assembly by hand. We were graded for accuracy too. I swear, at that point in time, I could convert between Hex, Dec, Oct, and Binary almost witho…
this could be easy or hard depending on what you had to write in assembly on the test. like it wouldn't be that hard to write a subroutine to add up an array of integers or something addem: xor eax, eax loop: test ecx, ecx jnz ok ret ok: add eax, [ebx + ecx * 4] dec ecx jmp loop (i haven't tested this, it'd be hilarious if i got it wrong)
So, like if you passed a wrong value to a certain register, then downstream, every problem that used that register would be off.
The tests were often 4 pages front and back with the handwritten assembly, definition matching, word problems, essay responses, etc.. We had like 75 minutes to take the test too. This was all at a public, no-name state university too. I was no MIT student or anything.
Anyway, I'll never forget the first day of class. Our professor said we were to have 4 tests and a final and some labs.
My friend in the class: "If we make a 100 on all 4 tests, do we have to take the final?"
The professor: "Hell, if you make 100 on 4 test, then I will let you write the final."
My friend: "Why? Has no one ever done that before?"
Professor: "No, in fact, in the 20 years I have taught this class, no one has ever scored a 100 on any test."
We all knew we were in for hell after that.