если вы изучаете конкретно си, то пытайтесь понять сам язык, концепции, структуры данных, алгоритмы, программируйте, программируйте, программируйте.
но вообще, кроме языка программирования, на начальных курсах должна быть дисципплина типа "организация эвм" или что-то подобное, там вам должны дать основы построения машин, электронных машин...
если такого нет, то пичалька, обратитесь к завкафу, если же есть, то ходите на лекции и вникайте в суть истории развития вычислительной техники. дальше - больше, процессы, их архитектура и все такое...
как почитать на ночь - можете взять классику - танненбаум (архитектура компьютера, их уже несколько переизданий). написано все просто, поймет даже школьник.