Understanding computers requires a clear focus on specific topics, as the subject is vast and complex. Key components include the central processing unit (CPU), which performs operations on data stored in memory, and the various types of memory that hold data in different formats, such as binary and character codes. Learning about the CPU involves exploring its architecture, which can contain billions of transistors, and understanding how these transistors operate using Boolean Algebra, which underpins logical operations. Programming is essential for instructing the CPU on how to process data, with languages ranging from low-level assembly language to high-level languages that are more user-friendly. Resources like How Stuff Works and educational videos from creators like Ben Eater can provide foundational knowledge. However, to gain a deeper understanding, one must specify which aspects of computer science they wish to explore, as the field encompasses numerous topics, including hardware construction, software programming, and the theoretical underpinnings of computation.
#1
just1ve
7
1
TL;DR Summary
I need to learn deep information about what the computer consists of and how it works
When I ask on the Internet what the computer is and how it works, there are a lot of articles and videos and I watch them, I read them, and most of them I see other articles and other videos, so I can't learn. Can you help me out a little bit?
Others here will give you similar but different advice. However, in the end you must absorb what you can for your research project.
When I first learned about computers my uncle started with core memory showing me how ones and zeros were stored. From there I learned that memory was read and written by a CPU (central processing unit).
The CPU could do various operations on the data that was read and could write out newly computed data results back to core memory. The operation steps that were used to compute the new data were in fact stored in the same memory unit in the form of opcodes aka a program.
From there I learned that memory holds numbers in binary format or in floating pt binary format or as opcodes or as character codes for textual data or ... numerous other formats deemed useful by programmers.
I could go on but hope you will instead read the How Stuff Works articles to learn more or watch the code.org videos on youtube:
Last edited:
#3
MikeeMiracle
396
313
The question is too broad, you can learn the basic components that make up a computer from the link posted by the above poster but you really need to be more specific in what you want to understand to a deep level as there are countless different things you could learn.
Ben Eater has a series of good videos on Youtube. The videos show how to build computers and digital circuits from components, and also how to program them in machine language or high level languages. That sounds like what you are asking for.https://www.youtube.com/user/eaterbc
#5
just1ve
7
1
MikeeMiracle said:
The question is too broad, you can learn the basic components that make up a computer from the link posted by the above poster but you really need to be more specific in what you want to understand to a deep level as there are countless different things you could learn.
I don't understand
#6
just1ve
7
1
anorlunda said:
Ben Eater has a series of good videos on Youtube. The videos show how to build computers and digital circuits from components, and also how to program them in machine language or high level languages. That sounds like what you are asking for.https://www.youtube.com/user/eaterbc
Hi @just1ve,
You said you "needed deep information...", the problem we are having is just how "deep" you are after. The transistors are made of the element Silicon, which is made in Stars, but you probably don't need that!
How about how Silicon is mined, or purified, or made into transistors?
Or the theory behind the operation of transistors?
Or you could start with something called Boolean Algebra which describes that all logical operations can be done with the three basic functions of And, Or, and Not. Then progress to how tansistor circuits are wired to do those operations.
From there perhaps how mathematical operations are done with Boolean Algebra.
At the level of CPUs (Central Processing Units) you could explore their detailed operations and how they are implemented. This could take several lifetimes! As of 2013, a rather high end microprocessor CPU had just under 2 000 000 000 (2 billion) transistors. A current high end cell phone has around 18 000 000 000 (18 billion) transistors.
After you get thru the CPU study there are still things left like Memory of various kinds, and the circuitry to connect the Memory to the CPU.
Around this point the question will probably pop up of "How can I do something USEFUL with all of that?"
That is where actual Programming comes in. A Program is a bunch of Instructions to the CPU that tells it where in Memory to get a piece of Data and "what to do with it."
The "what to do with it" may be to And it with another piece of Data, or in modern CPUs it may be as complex as "Find the square root," or assume the Data is an angle and "Find the Tangent." (You see, the CPU actually has its own Program built into it do these operations, using just the And, Or, Not operations of Boolean Algebra, mentioned above.)
The next level up in complexity is a program written to recognize human-readable text and convert it instructions for the CPU. This is called Assembly Language. It looks something like this:
Code:
Mov Cost,A ;Cost is a memory location holding the cost of the item you buy
Sub Tendered,A ;Subtract Cost from the amount you payed
Sto A,Change ;Save the amount of change due in memory 'Change'
The next level up is an Application Langauge or Higher Level Language. It is much easier for humans to read, and write! The simpler ones look something like this:
Code:
If Cost .GT. Tendered then Print "You are short $", Cost - Tendered
If Tendered .GT. Cost then Print "Your change is $". Tendered - Cost
If Cost .EQ. Tendered then Print "Thank YOU!"
The '.GT.' stands for 'Greater Than'
".EQ." stands for "Equals"
Well, I'm getting tired of typing! If you can give us a better clue of where your "deep information" should start, we have a much better chance of pointing you to the answers you are after.
Cheers,
Tom
#8
MikeeMiracle
396
313
just1ve said:
I don't understand
It's a big subject, no one understands it all, which bit do you want to know about?
Lets pretend instead of a computer you are asking how a car works. Do you want to know how the engine works? What it's made of? How we make the seats? How we make the doors? Where did the materials to make the car come from?
You have already been given some links to follow. You need to be more specific about which information you are asking about.
#9
just1ve
7
1
Tom.G said:
Hi @just1ve,
You said you "needed deep information...", the problem we are having is just how "deep" you are after. The transistors are made of the element Silicon, which is made in Stars, but you probably don't need that!
How about how Silicon is mined, or purified, or made into transistors?
Or the theory behind the operation of transistors?
Or you could start with something called Boolean Algebra which describes that all logical operations can be done with the three basic functions of And, Or, and Not. Then progress to how tansistor circuits are wired to do those operations.
From there perhaps how mathematical operations are done with Boolean Algebra.
At the level of CPUs (Central Processing Units) you could explore their detailed operations and how they are implemented. This could take several lifetimes! As of 2013, a rather high end microprocessor CPU had just under 2 000 000 000 (2 billion) transistors. A current high end cell phone has around 18 000 000 000 (18 billion) transistors.
After you get thru the CPU study there are still things left like Memory of various kinds, and the circuitry to connect the Memory to the CPU.
Around this point the question will probably pop up of "How can I do something USEFUL with all of that?"
That is where actual Programming comes in. A Program is a bunch of Instructions to the CPU that tells it where in Memory to get a piece of Data and "what to do with it."
The "what to do with it" may be to And it with another piece of Data, or in modern CPUs it may be as complex as "Find the square root," or assume the Data is an angle and "Find the Tangent." (You see, the CPU actually has its own Program built into it do these operations, using just the And, Or, Not operations of Boolean Algebra, mentioned above.)
The next level up in complexity is a program written to recognize human-readable text and convert it instructions for the CPU. This is called Assembly Language. It looks something like this:
Code:
Mov Cost,A ;Cost is a memory location holding the cost of the item you buy
Sub Tendered,A ;Subtract Cost from the amount you payed
Sto A,Change ;Save the amount of change due in memory 'Change'
The next level up is an Application Langauge or Higher Level Language. It is much easier for humans to read, and write! The simpler ones look something like this:
Code:
If Cost .GT. Tendered then Print "You are short $", Cost - Tendered
If Tendered .GT. Cost then Print "Your change is $". Tendered - Cost
If Cost .EQ. Tendered then Print "Thank YOU!"
The '.GT.' stands for 'Greater Than'
".EQ." stands for "Equals"
Well, I'm getting tired of typing! If you can give us a better clue of where your "deep information" should start, we have a much better chance of pointing you to the answers you are after.
The forum should have some intelligent members who should be able to give something understandable to "I need to learn deep information about what the computer consists of and how it works.", as if a ten-year-old average child were asking.
The forum should have some intelligent members who should be able to give something understandable to "I need to learn deep information about what the computer consists of and how it works.", as if a ten-year-old average child were asking.
Maybe it's possible to give a "ten-year-old average child" some very basic information about what a computer consists of and how it works, but if said child responds to each attempted explanation with "what" or "I don't understand," then maybe said child isn't ready for a "deep understanding."
What part don't you understand? A more focused question from you would help us deal with the question more effectively.
Since O.P. is forced to be away from P.F. for a while, we can't ask him (1) What Mathematics he currently knows, and (2) exactly what computer experience has has up to now, and (3) what kind of logic does he understand.
Since O.P. is forced to be away from P.F. for a while, we can't ask him (1) What Mathematics he currently knows, and (2) exactly what computer experience has has up to now, and (3) what kind of logic does he understand.
If you have followed any of his other threads, these kinds of questions have already been asked.