I see some discussion of which books are good for people with various levels of electronics knowledge. I'd like to add one that I've never seen mentioned here: Agarwal and Lang's "Foundations of Analog and Digital Electronics".
This was the book used by MIT in 2007 for the first course in the EE and CS programs. It is that year's course that is on their Open Courseware platform [1], and the readings list there links to a full PDF of the book.
(Edit: click the book title on the readings page, not the "View e-book version" link. See my response to groos' comment below for details).
This is not a link to a pirated copy BTW. Agarwal is a pioneer in the open-education movement and the authors intentionally arranged for an open access PDF.
The lecture videos on Open Courseware are very good too.
[1] https://ocw.mit.edu/courses/6-002-circuits-and-electronics-s...
The PDF no longer appears to be there or at least is well hidden.