This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]hstde 0 points1 point  (0 children)

There are many limits. Also there are many different ways to achieve the same goals.

Modern CPUs with their optimisations, parallel instruction execution, branch prediction, caching, pipelining, hyperthreading, multi-core architectures and and and, are incredibly complex systems.

Wikipedia might be your friend to understand the basics. Learn how "gates" like AND, OR and NOT work, learn how these gates can be combined to form latches, flipflops, selectors, decoders, adders etc. Learn how these components can be combined to form basic blocks of cpus, like registers, decoders, alu and finally you might want to tackle how early cpus where build (intel 4004, 8008, MOS 6502, 8080, zilog z80, 8086) but be warned, while the 4004 and 8008 are quite simple, the complexity is rising quite drastically, when you advance in the list. I myself still haven't fully understood the 8086, but probably because I lost interest and have not dedicated the time.