Какую книгу посоветуете, чтобы понять принципы программирования?
Я посоветую учебник для начинающих по любому языку программирования, который вам нравится. Это самый доходчивый и мотивирующий источник, позволяющий быстро получить видимые результаты.

Но если всё-таки хочется теории, то можно почитать "Код" Петцольда. Если хочется совсем по-взрослому, то "Структура и интерпретация компьютерных программ" Абельсона и Сасмана.
Я-бы сразу сказал что тебе нужен обычный учебник типа "Информатика и вычислительная техника". Там это все будет объяснено. Таких книг много на книжных рынках и барахолках.

Но мы живем в современном мире и тебе скорее всего вслед за этими абстрациями все равно надо будет пользовать язык. Например язык Go или C++. Вот тогда бери сразу книжку по языкам и читай в их ракурсе.