I recently got the current
Humble Bundle, which includes "Human Resource Machine". It's an odd game: It feels like playing a game, and it equally feels like programming in assembly language. (I think they describe it as a single-accumulator Harvard archictecture machine, which is pretty accurate.)
I'm not sure how useful it is as a teaching tool. The difficulty ramps up fairly quickly, and Amber got pretty frustrated about 10 puzzles in. It's probably better suited to a somewhat older audience.
Recommened, especially for the computer-science inclined.