Microprocessors and microcomputers: Hardware and software - Tocci, Ronald J, et al (1997)