Introduction to Hardware and Software

What Makes Up a Computer?

Before we dive into code, it's important to get an understanding of the machines that making computing possible: computers themselves. In this section, we'll learn about computers from the ground up, from physical hardware and CPU units to memory and software itself.

A First Look at Computers

Let's get a brief introduction to the different components that make up a computer. This includes hardware such as CPU, memory, and I/O devices, along with software such as operating systems and applications.
That was a lot! Let's take a few more videos to understand these components of computers piece-by-piece.

The CPU and Its Cycles

Let's take a look at some basic computer architecture, including controllers and buses that help connect the computer core to its peripherals. We'll also learn about the CPU cycle in which the control unit, registers, and the arithmetic/logic unit interpret and execute instructions. We'll then tie in some concepts with the fetch-decode-execute cycle, in which the CPU interacts with RAM. Also, we'll build a brief understanding of the system clock and how it affects CPU speed and overall computer performance. Let's start!
We've mentioned memory several times throughout the past few videos. Let's dive into memory with some more detail.

Memory and RAM

Computer memory is made up of a series of memory locations, each of which has its own address. There are different ways of accessing data stored in memory: sequential access (where have to go down the series of memory locations in order) and RAM (or random access memory, where you can jump to any chunk of memory). We'll also learn about what a byte really is, which you're probably familiar with! Your phone might have 64 GB (gigabytes) of storage, your laptop might have 8 GB of RAM, and so on. We'll also learn about the difference between RAM and its lesser-known cousin ROM.

That just about covers the hardware components of a computer. Let's take a look at the software components.

The Software Environment

Software in a computer exists at many levels. It could be as foundational as the operating system your machine runs on (that you usually don't mess with), or as specific as a certain photo-editing app, like Photoshop (which you'd be interacting with frequently). The following video explores these levels of the software environment.

Now that we understand the components that make up a computer, let's see how they're used to store information.

How Computers Store Information

In this section, we'll learn about how computers store information from the basics of binary to digital memory.

Using Binary

Electricity is the basic driving force for any — or any electronic device in general! Electricity exists in two main states: off and on. This is reflected in how computers store information at its most foundational level: in 0s and 1s, also known as binary. Binary is a number system, just like our usual decimal number system. Instead of having digits 0 through 9, binary only has two digits (or bits): 0 and 1.

Now that we understand binary, let's compare how binary works with other methods of storing information, and hopefully get a sense for why binary is the most useful form of storing information for computers.

Analog vs. Digital

Digital methods of storing information make usage of binary, breaking down any piece of real-world data into discrete bits and storing those directly on the computer. This is in contrast with analog methods, which are able to store a continuous range of values rather than just 0s and 1s. Although a continuous range of values seems more advanced than just using bits, it actually creates some problems that digital methods with binary are able to avoid. Let's dive in.

So we've talked a lot about how binary stores things with 0s and 1s. But on our computer, we're storing so much more than that! We have text files, images, videos, applications — so how are those things being stored?

How Information Is Represented in Computer Memory

Digital methods of storing information are able to keep track of a diverse range of data and media by finding ways to break it down into binary. Let's see how this works.

Now that we know how computers store information independently, let's take a look at how computers connect with other computers.

Networks and the Internet

In this section, we'll build from simply connecting two computers together to connecting millions of devices via the Internet.

Computer Networks, LAN, and WAN

We'll start our journey into computer networks with basic point-to-point connections and shared communication lines in a local setting, like an office. We'll then move on to understand how network addresses help guide our communication and why delays can occur (and how to prevent them). We'll also talk about different scales of computer networks, from local-area networks (LAN) to wide-area networks (WAN).
As we concluded in the last video, if we're able to zoom out far enough to larger and larger WANs, we essentially end up with the Internet.

The Internet: Links and Protocols

The Internet's foundation lies in the links between devices and the protocols that allow them to communicate. The protocols themselves, which are how computers talk to each other over the Internet, have several layers of their own, as we'll see in this video.

Now that we understand the protocols that allow computers to communicate and understand each other, let's take a look at the addresses that allow different parts of the Internet to connect with one another.

The Internet: Addresses and the World Wide Web

This video will explore the difference between IP addresses and Internet addresses. Internet addresses include things like local hostnames, domain names, and top-level domains. When people make their own websites and want a new, flashy domain name, they have to do so by registering with a Domain Name System. We'll also define the difference between the Internet and the World Wide Web (which you probably know as WWW). We'll also briefly touch on hypertext and hypermedia.

We're almost there! Just two more concepts and we'll have holistic understanding of how the Internet works.

The Internet: URLs and the Cloud

URLs (or Uniform Resource Locators) serve as references to different resources on the Internet. URLs are made up of two parts: the protocol identifier and the resource name. The resource name itself is made up of the host name and the file name. We'll also briefly cover cloud computing and its impact on our contemporary individuals and businesses.

We made it! This unit covered a lot of information. We worked our way up from the basic hardware and software components that make up an individual to how computers connect and the Internet itself. In the next unit, we'll focus in on computer software, including an overview of software engineering in general and a look at the different levels of programming languages.
Unit 2