Genre: eLearning | MP4 | Video: h264, 1280×720 | Audio: AAC, 44.1 KHz
Language: English | Size: 3.41 GB | Duration: 8h 18m
learn computer architecture and design at the transistor and logic gate level by creating a CPU from scratch
What you’ll learn
design a cpu from scratch
understanding how computer works in lowest level possible
transistors and why its the main part of every digital device
what is information in general
concepts of bits and bytes
different numbering systems(hex,binary and decimal)
creating logic gates using transistors
what do we mean by remembering information and how could we create a device which could remember information
creating an 8-bit register using transistors
why do we need decoders
creating a 3×8 decoder using transistors
why do we need multiplexers
creating a multiplexer using transistors
how real chips are made in the world
how could we transfer information and the creation of bus
how to create devices for processing data
create an adder using transistors
2’s complement to represent negatice numbers in binary
create XOR and NOTer using transistors
creating a complete ALU using transistors
flow of data in computer
how to create a monitor and the idea of a graphic card
why are computers fast and powerful
control unit and why we need it
the instruction set architecture (ISA) of our computer
implementing instructions for in our cpu control unit
implementing data transfer,data manipulation and program control instructions in our working made computer in logisim
creating a counter using transistors
executing instructions using our computer
executing programs with loop and if-else in our computer
showing our complete computer at the transistor level
only by doing you could truly understand the computer science.
why a computer is able to execute programs?
why could we communicate calculate using computer?
how could we build something which is able to save and process information?
what do we mean by information?
how do we teach a an object, information?
what do we mean by programming languages?
what is the difference between computer and chairs and tables if both of them are objects?
in this course we will never take anything for granted. we start by introducing a transistor as a simple switch and create all of our computer using that simple switch. we start from beginning and work all way through to program our cpu to do some calculations and show the result over the monitor that we also create.
30 years ago the idea of a programmer was obvious. someone who completely understood everything about computer architecture and now wants to implement his ideas using programming languages for the computer to execute. but now its different.
we see a lot of people who call themselves programmers, web developers ,… but they don’t know how their programs are providing the result that they want? if something goes wrong, they need to ask others or wait for the others to troubleshoot that.
because rather than why, they cared more about finding the answers of how questions.
and thats the main difference between a professional programmer, a real hacker, a good software developer and a hardware designer with a script kiddie. sometimes they say that the difference between a programmer and you, is because they are interested, but i assure you its because they know the architecture behind their codes rather than copy/pasting of it. and actually that is the reason that we see a lot of successful programmer are now that old. because instead of waiting for the experience, they know why they need that code and why that code does what it does.
Who this course is for:
everybody who wants to know the computer architecture and improving his understanding at the transistor level
every programmer who wants to know why computers are able to execute programs
everyone who wants to become a hardware designer
everyone interested in the relation and border between software and hardware