Practical Introduction to Computer Architecture - Page, Daniel; Schneider, Fred B.; edited by David Gries, Fred B. Schneider (Springer London, 2009)