22. What is a computer?

  • how, physically, do we get the components we have seen?

  • what other components do we need?

  • how are those implemented

How have computers changed over time?

  • at the physical level

  • what was the context and motivation for these advances?

  • how does that context influence how we use computers today?

  • how does that influence computing as a discipline?

22.1. Let’s start with a dictionary

we can start with a dictionary

  • note that this starts with reference to a person.

22.1.1. Computers as people

and this text this particular dictionary is useful because it also includes where does the term originated like where does in that particular usage start appearing and so these are these are pretty all right this is starting 1646 1707

  • Use of the word computer to refer to the person still common how recently 1950s

  • the movie hidden figures is available on Disney+ with subscription or other streaming platforms for ~$4 streaming rental.

  • the book hidden figures is available at URI’s library

22.1.2. Computers as Machines

computer starts to be termed talking about a machine must later so that 1897 is a long time after 1646

you like ideas

most of them are physical really things like you can see there’s a couple things early but most of it starts around 1944 46 around then what was going on

they weren’t ya so early computer people were mathematicians by like training and their own identity but then they kind of blurred into things too the world was very dark place and it is today they’re worried about

other like it was a lot of applications it was also like the Manhattan Project was one of the things that motivated them like this is why we need to build a lot of calculations and then later at the end of the 56 the Moon that was also a lot of math like we need to make sure these Rockets can like go up and come back down the way we expect them to

22.1.3. How much do we talk about computers?

how much do we talk about them changes over time

how much do we have to talk about them so Google does this thing with Google Books

it’s me what’s surprising about that surprising

if you talk to you not the

is there talk about things when they’re new

  • note that we talk about things a lot using their basic name when they’re new

  • we don’t talk about normal things

hey I think things are trained on news Corporal and do not like otech bodies of news text from the internet

they would consider murder a very high frequency and blinking very low frequency of that

don’t talk about blinking we do it all the time like I’m sure since I started talking with my king every one of us has blank more than once

22.2. Mechanical Calculators

how do we actually like physically make it be machine

well we’ve we’ve talked we handed out that like it’s going to reduce down to or isn’t my check and logical operations write those de back much further than

pascal

what is the mechanical calculator it works by like incrementing it doesn’t do the logic like they took not a binary representation it’s not adding via input two numbers and then it goes forward its where’s my income as you put in one number then you can add the next number and it kind of works the wheels have like the numbers on them and it uses like 9 supplement to carry over to the next bit so there’s a gear that when it hits a certain point that turns the next year and then it goes for it any Castles in the Sky why the semi did

Why did he make this?

He was 18 and his father was a tax commissioner in France and he wanted to like reduce his father’s workload

so he invented this calulator machine and received roayl privilege from France in 1649 to be only person allowed to build a manufactured Computing a calculator is like mechanical calculators

pascal schematic

Note

Contrast this royal privelege with the 1970s where in resolving some other conflict, a court that declared the content of the computer that they cannot be found it at all and it’s free for anyone to use the concept of a computer

22.3. How did this change over time?

calculators that are still analog so they’re still working with mechanical systems using Waze electricity becomes easier

we can start doing like electrical signal processing so we can move analog signals and start doing our agents and calculations with those are not what was really used through for transmitting information like telegram telephone all of that is analog thing

between Springs and dampers, the mechanical things are used to build these mechanical calculators and the electrical components so resistors transistors.

timeline of computing

22.3.1. Model K Adder (1937)

  • George Stibitz took some pieces at home from work at Bell Laboratory and got it working on his kitchen table.

  • it can do four bit addition

  • uses a telephone relay switch or an electromechanical switch so they’re using like a

Note

Relays are designed to repeat, or relay, a signal to the next circuit to compelte long distance telegraphs and early telphone. As the signal transpits down the cable (one circuit) it gets weaker due to loss, so it has to be repeated at some point to amplify the magnitude of it for the next length of the journey.

precursor to the complex number calculator

he demonstrated how this works in combination with Telegraph

for the first remote access

  • complex number calulator was at Bell Labs in New York City at the time in 1940 at a Confrence at Dartmouth in Hanover New Hampshire and he use a telegraph to do remote calculations on this calculator and bring them the numbers back

22.3.2. Intel 4004 (1971)

  • First commercially produced microprocessor

  • 2,250 transistors

  • Could perform up to 90,000 operations per second in four bit chunks

  • 740 kHz clock speed

22.3.3. So how do these thigns actually work

As electricity became more available, they realized that in terms of mathematical operations, electrical components resemble springs and switches

  • first vaccuum tubes: or diodes

  • diodes prevent flow of electricity in one direction and allow in the other. they can be used to create circuits that behave like the logical operations, and create the gates.

  • diodes only are easy for & and | gates,

  • transistors can operate as a switch or amplifier and can also be used to build logic gates

  • they’re faster, smaller, and better at more types of gates than diodes

22.4. Early Computers

During this time small, lots of small computers were made, but each was made completely by its creators, there was no standards, per say.

These computers were also stored program computers. Meaning their operation at a program level was fixed by the circuitry.

switch the circuit to do different things between the numbers so this would get us bitwise operations of an indoor and outdoor on our numbers

we had the first program later this eniac computer

which athlete came out certainty 43 wasn’t finished for a little while this this all this is one computer and see there’s several people in this room doing this one computer this was programmed manually like changing the circuits because it helped me had and that point in time they only had read-only memory you could put something into memory we don’t have memory like what kind of memory that you could keep when you said the power off for a long time what’s the powers off then what was that whatever was in Army was on and all we had was just reading the numbers you could program the computer stuff is working out to do the thing we’re going to do and then you could go do that calculation many times you needed an Ordy bug a program that it took weeks to value of all experience the pain of debugging rarely it takes two weeks to debug one error correct

right yes maybe it hurts sometimes it’s like a long night not enough sleep but like this week’s of like moving cables did anyone get his memory we need some way about you storing things and writing things down and we need a way that actually can store memory that first they do more vacuum tubes do the same sort of switching on and off with store stuff but the problem with that is the power off

so but this

stored program computers they only had read only memory and eventually we got random access memory which we could write and read and change whenever we wanted

which we can have including storage without power

so and not but we have three types of places we store information we got registers which store information that is currently being processed so we look back at our circuits these inputs here we’re turning onto just as B were treating them as switches but these are actually implemented as register if you have a register at the input and a register register the input for each of the inputs to b l u r i a registered but it’s only live it’s got some number of bits in it so see if you’re paying attention and putting things together we talked about a computer system having like operating doing some type of some type of a b s what device stores that many bits

Dell computers we have

so what what is Ashley’s what is the thing that has that number of bits is a limitation of the device equipment stores at me I guess I should have changed the options but we’ll go look what it is

22.5. von Neumann Architecture

what else do we need besides ALU for to have like a whole computer

we eventually need clocks to time things and synchronize things to like know when to clear and when to change so that you if you want to do multiple things in sequence you can do that what else you need or want to do multiple things in sequence but don’t know what else we need a general now

store more insturctions and data

my diagram didn’t work so the basic architecture we used to talk about all the main component we need is called the Von Neumann architecture this is a slightly expanded version of it could be slightly simpler than this but

theater image put the volume in architecture

was from 1945 was written by people at 10 and this is basically how we still design computers for the most part we have you control unit

some memory and some registers together all of these things or the CPU

these can talk to Ram which is memory random-access memory so this is a memory that can be changed any time we want it Amanda storage or hard drive which is now not as physically different from these two but that’s there

In 1945 we get a draft of a general template. This is basically what we use today.

Von Neumann Architecturediagram

a bit mroe detail

22.6. Storage

  • there are some thigns we have not yet seen in detail in that diagram

  • Ram Is Random Access we can access it whenever we want we can read and write to

  • ROM: is read only memory; the instructions are Permanently

In the stored program computers, the programs were in ROM.

The very earliest computers could not store any values without power.

  • Register: data currently processing

  • Memory: will be required for processing

  • Disk: long term storage

22.7. Prepare for next class

  1. Read about systems abstractions in CACM. Answer reflection questions in systemsabstractions.md:

    1. How many of these are familiar/not?
    1. How has you undertanding of these changed during this course.
    1. Do you think you understand this article more now than you would have at the beginning of the semester
    1. Write 3 questions and their answers that could be a quiz to see if someone understood or had misconceptions about the abstractions in this article.
    
  2. Review the notes and add one more historical event's information to the notes using either the computer history museum and/or additonal sources. Check the open PRs to ensure that no one else has submitted the same as you.

  3. Update your KWL chart based on the minimum rows list

22.8. More Practice

  1. Pick one historical event about computers, memory and storage or networking and the web (not limited to what is on those pages) and in, 'history-' describe the event, how it impacted what has come since.

  2. Map out what you know about computer hardware in some form of visual or outline in hardwaremap.md and bring three questions to class.

22.9. Questions After Class

22.9.1. Do we eventually switch our computers to use more than 64 bits?

We really get just about all of the precision we need out of 64 bits and creating registers, ALUs, buses, etc with more than that is more expensive and slower, so mostly there seems to be no need, for general purpose computing.

Switching from 32 to 64 was important not only for precise calculations because we can use memory tricks to circumvent that anyway, but for the ALU to participate in addressing memory. With 32 bit registers we can only express 2^32 addresses for the RAM, so we can only access 4Gibibytes or 3.8GB RAM (we’ll cover this translations later), with 64 bit registers we can address 2^64= 2^32*2^32 so we squared the amount of memory we can address this is 16 Exibbytes or a little bit fewer Exabytes, which is far more than we need for regular computing, while more than 4GB of RAM is quite desirable for everyday use.

So, it’s really that the extra cost provides no realizable benefits, more than the absolute cost.

22.9.2. Are certain gates more commonly used in CPU design?

See the exercise from the last class, but yes!

22.9.3. How like literally how is even remotely possible to assemble modern day cpus and the size and scale they are

Computers got smaller by better physics that allows for smaller implementations of the gates. This is a good topic for a deeper exploration.