If you just start reading some of the code-bases you use (libraries, compilers, operating systems, etc) to find out how they do the things they do, you'll quickly figure out what you need to learn—it'll feel like having absolutely no idea how the code you're looking at works.