God damn, Assembly can be a pain in the ass.
For CS330 today, we had to implement a function to Read a character in from the Keyboard, and then output it to the screen in Decimal and Binary. Not too hard, especially since Year-Back gave us the necessary code in lecture today.
Still, I had to spend 45 minutes trying to figure out why the code was arbitrarily dropping numbers. I finally found it. I had this:
cmp dl,'0' jl A6 cmp al,'9' jg A6
So, why was I comparing against DL the first time and AL the second time? I don't know either. Lesson of the day: watch what you're fucking typing.