Good Textbooks and Reference Books
I have found the following textbooks and reference books useful.
- Computer language theory and compilation
- Harold Abelson and Gerald J. Sussman,
Structure and interpretation of computer programs,
McGraw-Hill, ISBN 0262011530, 1996.
- A. Aho, Ravi Sethi, and Jeffrey Ullman,
Compilers, Principles, Techniques, and Tools,
Addison-Wesley, ISBN 0-20-110088-6, 1986.
- Communication systems
- digital:
Edward A. Lee and David G. Messerschmitt,
Digital Communication, 2nd ed.,
Kluwer Academic Publishers, 1994, ISBN 0792393910.
- real-time:
Steven A. Tretter, Communication System Design Using
DSP Algorithms: with Laboratory Experiments for the TMS320C30,
Plenum Press, 1995, ISBN 0306450321.
- theory:
Simon Haykin, Communication Systems, John Wiley Sons,
3rd ed., 1994, ISBN 0-471-57176-8.
- Digital signal processing
- advanced signal processing:
Monson H. Hayes, Statistical Digital Signal Processing and
Modeling, John Wiley and Sons,
ISBN 0-471-59431-8, 1996.
- exercises:
C. Sidney Burrus, James H. McClellan, Alan V. Oppenheim,
Thomas W. Parks, Ronald W. Schafer, and H. W. Schuessler,
Computer-Aided Exercises for Signal Processing,
Prentice-Hall, ISBN 0132198258, 1994.
- introduction
James H. McClellan, Ronald W. Schafer, and Mark A. Yoder,
DSP First: A Multimedia Approach, Prentice-Hall,
ISBN 0-13-243171-8, 1998.
- laboratories:
Virginia Stonick and Kevin Bradley,
Labs for Signals and Systems Using MATLAB,
PWS Publishing Co., ISBN 0-534-93808-6, 1995.
- multidimensional signal processing:
Daniel E. Dudgeon and Russell M. Mersereau,
Multidimensional Digital Signal Processing,
Englewood Cliffs, NJ, Prentice-Hall, ISBN 0-13-604959-1, 1984.
- on digital signal processors:
Phil Lapsley, Jeff Bier, Amit Shoham, and Edward A. Lee,
DSP Processor Fundamentals: Architectures and Features,
Berkeley Design Technology, Inc., 1996.
- on microcontrollers:
Dale Grover and Jack Deller,
Digital Signal Processing and the Microcontroller,
Prentice-Hall, ISBN 0-13-081348-6, 1999.
- spatial array signal processing:
Donald H. Johnson and Daniel E. Dudgeon,
Array Signal Processing,
Englewood Cliffs, NJ, Prentice-Hall, 1993.
- stochastic signal processing:
Charles W. Therrien, Discrete Random Signals and
Statistical Signal Processing, Prentice Hall,
ISBN 0-13-852112-3, 1992.
- speech processing:
Lawrence Rabiner and Bing-Hwang Juang,
Fundamentals of Speech Recognition,
Prentice-Hall, Englewood Cliffs, NJ,
ISBN 0-13-015157-2, 1993.
- theory:
Alan V. Oppenheim, Ronald W. Schafer, and John R. Buck,
Discrete-Time Signal Processing,
Prentice-Hall, ISBN 0-13-754920-2, 1999.
- Embedded systems
- embedded software:
S. S. Bhattacharyya, P. K. Murthy, and E. A. Lee,
Software Synthesis from Dataflow Graphs,
Kluwer Academic Press, ISBN 0-7923-9722-3, 1996.
- specification/design:
Stephen A. Edwards, Languages for Digital Embedded Systems,
Kluwer Academic Press, ISBN 079237925X, 2000.
- Graduate school and beyond
- guide to success:
Robert L. Peters, Getting What You Came For:
The Smart Student's Guide to Earning a Master's or a Ph.D.,
revised ed., Noonday Press, ISBN 0374524777, 1997.
- guide to an academic career:
Richard M. Reis, Tomorrow's Professor: Preparing for Academic
Careers in Science and Engineering, IEEE Press, ISBN
0-7803-1136-1, 1997.
- Hardware Description Languages
- Samir Palnitkar, Verilog HDL: A Guide to Digital Design and
Synthesis, SunSoft Press, ISBN 0134516753, 1996.
- Donald E. Thomas and Philip R. Moorby,
The Verilog Hardware Description Language, 3rd ed.,
ISBN 0792397231, 1996.
- Douglas Smith, HDL Chip Design,
ISBN 0-9651934-3-8.
- High-level compiled languages
- C programming, an introduction:
Al Kelley and Ira Pohl,
A Book on C: Programming in C, 2nd ed.,
Benjamin/Cummings, ISBN 0805300600, 1990.
- C programming, programming techniques:
Robert Sedgewick, Algorithms in C,
Addison-Wesley, ISBN 0-201-51425-7, 1990.
Note that there are some errors in this book, especially
in his geometrical algorithms.
- C programming, reference book:
Brian Kernighan and Rob Ritchie,
The C Programming Language,
2nd ed., Prentice Hall, 1988, ISBN 0131103709.
- C++ programming, user's guide:
Bjarne Stroustrup, The C++ Programming Language, 3rd ed.,
Addison-Wesley, 1997, ISBN 0-201-88954-4.
- C++ programming, programming style
Tom Cargill, C++ Programming Style, Addison-Wesley,
ISBN 0-201-56365-7, 1992.
- High-level interpreted/compiled languages
- Java, reference for its graphical user interface library:
- David Geary, Graphic Java 2, vol. 1, 1998, ISBN 0130796662.
- David Geary, Graphic Java 2, vol. 2, 1999, ISBN 0130796670.
- Java, reference book:
Ken Arnold and Gosling,
The Java Programming Language, third edition,
2000, ISBN 0201704331.
- Java tutorial:
David Flanagan, Java in a Nutshell,
1999, ISBN 1565924878.
- Perl, reference book:
Larry Wall and Randal Schwartz, Programming Perl,
O'Reilly and Associates, 1991, ISBN 0937175641.
- Perl, tutorial:
Randal Schwartz, Learning Perl,
O'Reilly and Associates, 1993, ISBN 1565920422.
- Tcl/Tk, reference book:
John Ousterhout, An Introduction to Tcl and Tk,
Addison-Wesley, ISBN 0-201-63337-X, 1994.
- Image processing
- overview:
Rafael C. Gonzalez and Richard E. Woods,
Digital Image Processing,
Addison-Wesley,
ISBN 0-201-50803-6, 1992.
- signal processing approach:
Jae Lim, Two-Dimensional Signal and Image Processing,
Prentice-Hall, ISBN 0139353224, 1990
- color processing:
R. W. G. Hunt, The Reproduction of Colour, Fountain Press,
5th ed., ISBN 0-86343-381-2, 1995.
- Mathematical software environments
- Mathematica, reference guide:
Stephen Wolfram,
Mathematica: A System for Doing Mathematics by Computer,
2nd ed., Addison-Wesley, 1991.
- Mathematica, user's guide:
Nancy Blachman, Mathematica: A Practical Approach,
Prentice-Hall, ISBN 0-13-563826-7, 1992.
- Matlab, tutorial:
Duane C. Hanselman and Bruce Littlefield,
Mastering MATLAB 5: A Comprehensive Tutorial and Reference,
ISBN 0138583668, Prentice Hall, 1997.
- Matrix Computation
- Gilbert Strang, Linear Algebra and Its Applications,
0-15-551005-3, 1988.
- Gene Golub and Charles Van Loan, Matrix Computations,
ISBN 080185413X, 1996.
- Thomas Kailath and Ali H. Sayed, eds.,
Fast Reliable Algorithms for Matrices with Structure,
SIAM, ISBN 0898714311, 1999.
- Neural Networks
- Baughman and Liu,
Neural Networks in Bioprocessing and Chemical Engineering,
1995.
- Christopher Bishop,
Neural Networks for Pattern Recognition,
Oxford University Press, ISBN 0-19-853849-9, 1995.
- Simon Haykin,
Neural Networks: A Comprehensive Foundation,
Macmillan, ISBN 0023527617, 1994.
- Software Engineering
- James Rumbaugh, Ivar Jacobson, and Grady Booch, The Unified
Modeling Language Reference Manual, Addison Wesley,
ISBN 0-201-30998-X, 1998.
- Systems Theory
- optimal linear filtering
R. G. Brown and P. Y. Hwang,
Introduction to Random Signals and Applied
Kalman Filtering with Matlab Exercises,
Wiley and Sons, 1996.
- real-time optimal linear filtering
C. K. Chui and G. Chen,
Kalman Filtering: With Real-Time Applications,
Springer-Verlag, 1991, ISBN 038754013X.
- Unix and Windows NT Operating systems
- software development:
Unix Software Development,
Unix Press, 1992, ISBN 0130176907.
- reference:
W. Richard Stevens, Advanced Programming in the UNIX
Environment, Addison Wesley, 1992, ISBN 0-201-56317-7.
- Unix system administration:
Evi Nemeth, Garth Snyder, Scott Seebass, and Trent R. Hein,
Unix System Administration Handbook,
2nd ed., Prentice Hall, ISBN 0-13-151051-7, 1995.
- Windows NT system administration:
Robert Cowart and Kenneth Gregg,
Windows NT Server 4.0 Administrator's Bible,
IDG Books Worldwide, Inc., ISBN 0-7645-8009-4, 1996.
- Wavelets
- from a signal processing perspective:
Martin Vetterli and Jelena Kovacevic,
Wavelets
and Subband Coding,
Prentice Hall, ISBN 0-13-097080-8, 1995.
- from mathematical and signal processing perspectives:
Gilbert Strang and Troung Nguyen,
Wavelets and Filter Banks,
Wellesley-Cambridge Press, ISBN 0-9614088-2-0, 1996.
Last update 01/27/03,
Mail comments about this page to
bevans@ece.utexas.edu.