With Great Power Comes Greater Complexity

computers
Photo by GevorgyanAnna CC SA

When most people think of computers, they think of desktop computers or notebook computers (laptops). Some people will also think of cell phones or tablet computers that are able to view web pages and communicate with people via text messages or chat on Facebook.

When people think of what computers can do for them they think of how they allow them to access to many sorts of information on the Internet, how they can communicate with people, or how they can view photos or listen to music.

You may notice that cell phones and tablet computers are easier to use than desktop and notebook computers. This is because cell phones and tablet computers are small and designed to be easier to use. Although it is possible for people to create content using cell phones or tablet computers, they are not as powerful as desktop or notebook computers. Typically, programs that are created to run on cell phones or tablets are made to do only what most people want to do.

People are able to use desktop or notebook computers to create music, videos, video games, and web pages, and do it exactly the way they want to without limitations. However, to have the ability to create anything you want to on a computer, you must accept that you have to understand more about how they work. Also, the more powerful a computer program is, the harder it will be to learn.

For example, the computer program used by most professionals for modifying photos and images is Adobe Photoshop. This program has so many options for editing images that it can be very overwhelming to new users. Many options require that you understand what they do, and why they exist, to use them properly. Some options will not be available in certain situations, and you will have to know why. The difficulty in learning how to use this program is harder than learning to use Microsoft Paint, but it allows you to many more things and with better results.

The good thing is that the more you understand about computers, the less likely you will be confused, and the more confident you will become in using them. The more you learn, the more powerful you will be in using them.

What is a Computer?

Even though people associate the devices described above as “computers”, a computer is actually any device that can be provided with instructions to compute the result a problem. The instructions provided to the computer will include certain data, as well as the operations that must be performed with that data. The instructions might involve simple or advanced mathematical processing, as well as logical processing.

A computer is a device that takes instructions and data as input, performs some sort of computation, and then provides the result as output. By this definition, there are devices that were invented and used even in ancient times that can be considered a “computer”. These are early examples of analog computers that were at first mechanical machines, and later introduced electrical components to solve problems.

If a problem required following instructions involving math and logic, with the problem being very complex, and needed to be solved quickly and accurately, a computer was needed. A human being might make mistakes and solve the problem too slowly. For instance, a gun data computer was developed during World War 2 to calculate where to aim a gun so that it hits it’s target. The calculation included information such as where the target currently is, which direction they are moving, which direction and how strong the wind is blowing, etc.

If you think about all machines that have ever been created, they typically have been designed to solve a single specific problem. But the power of computers is that they are designed to be fed instructions, any instructions, and thus they can solve any problem. When computers are combined with other devices like monitors, speakers, or even robotic arms, the possibilities of what you can make the computer system do are almost infinite.

The Von Neumann Architecture

Class photo of the ENIAC

The first digital computer was created in 1945, known as the ENIAC (Electronic Numerical Integrator And Computer). Much like the gun data computer mentioned above, it was designed to calculate information related to firing artillery. The ENIAC was 1000 times faster than previous electro-mechanical machines.

The mathematician and physicist John von Neumann was working on the hydrogen bomb when he heard about the ENIAC, and was the first to run a computational problem on the ENIAC related to the hydrogen bomb instead of for artillery firing data.

computers
Diagram by Kapooht CC SA

Central Processing Unit (CPU)

In 1945 John von Neumann described a computer architecture that is similar to that still used today. A device known as the Central Processing Unit (CPU) includes a unit that is responsible for performing the math and logic calculations, as well as a unit that is used to control each instruction that is being processed.

The control unit includes a mechanism that determines the clock rateof the CPU, which is the number of instructions that the CPU performs per a second. This rate is expressed using Hertz, which represent the number of cycles per each second. The ENIAC used a 100 kilo Hertz (kHz) clock, which means that it was able to perform 100,000 instructions per each second.

In March of 1993 a CPU called the Penium P5 was released by Intel for personal computers was able to perform at 60 Mega Hertz (MHz). This means it was able to perform 60,000,000 instructions per each second. In January of 2010, Intel released the Core i5-650 processor which has a clock speed of 3.2 Giga Hertz (GHz), or 3,200,000,000 instructions per each second.

Memory

In the above diagram of the Von Neumann architecture, you see ‘memory unit’ connected to the CPU. The memory unit is where the instructions for the problem are written before the CPU starts to perform the calculations. The memory unit also stores any information that is related to the instructions. The memory unit must be able provide and store information very fastly, or else it will slow down the CPU. The memory does not retain any information when the computer is turned off.

A good analogy is to think of the CPU as the brain of the computer that is solving the problems, and the memory is like a chalk board that a person might write down a complex math problem while they solve it.

In modern computers the memory is called Random Access Memory (RAM). When you buy a computer it comes with a certain amount of RAM, but you can usually buy more RAM chips that can be installed inside of the computer so that it can run better. If you are running lots of programs on your computer at the same time, or running programs that use a lot of memory, this is a good idea.

Input / Output

As you can see in the above diagram, on the left and right there are the ‘Input Device’ and ‘Output Device’. Sometimes this is represented by the computer using the abbreviation “I/O”. These can be any number of devices that are part of the computer system, or connected to the computer. For example, a hard drive is both an Input and Output device. A hard drive is able to provide information, or store new information. Unlike the memory, the hard drive will continue to store information even when the computer system is turned off.