I took this so many years ago I can't remember who taught it. Paul Hilfinger maybe? Microvax assembly language was a big part of the course, IIRC.
In his defense he would also work very long hours answering emails from students. The night before projects were due he would hang out in his office all night in case people had questions. He'd return submitted code to you with detailed comments about how to write clean, readable code. More so than data structures I learned how to write readable code in that class.