Many of the students out there who already know about 8051 controllers will be surprised to see this book ranked as #1 over the top of Mazidi and Ayala I will say this is one of the best books to get started with 8051 micro controller. The author Subrata Ghoshal has done an amazing job with this book that any layman can get a great idea about micro controllers and its working. You only need to have an idea of the basic stuffs in electronics to follow this book.
The 8051 Microcontroller and Embedded Systems using Assembly and C -by Muhammad Ali Mazidi
The book I recommend here is the second edition from the author trios – Muhammad Ali Mazidi, Rolin Mckinlay and Janice Gillispie Mazidi. For years this book enjoyed a great popularity among students (through first edition without C programming) and 8051 enthusiasts. Still this book is one of the most popular books out there on 8051 and the authors are renowned world wide. The single reason I ranked book of Subrata Ghoshal above this one is “easier understanding”. Ghoshal has been successful in developing his book in the most “easy to read and grasp” format.
I suggest you buy this book too along with the book of Subrata Ghoshal, as this book by Mazidi focuses on C programming of 8051 along with assembly language. As a student you really need to know program 8051 using embedded C language. In the initial phases of your learning curve, assembly language is enough for writing programs (and you should start learning 8051 software by writing in assembly language as it helps you to understand concepts better). But when it comes to advanced software development for 8051, the “embedded C” will be more handy. The reason is, its is more easy to program using C language than using assembly language. It can save your time and makes possible efficient coding!