Hey everyone! In this blog, I wanted to continue my series of sharing a little peak into my class lecture notes! In this blog, I will be focusing on my course CS008.
I thoroughly enjoyed taking this class, and found it important to share what I learned in this class.
CHAPTER 1 NOTES
Starting with the definition of what is a computer? This definition is crucial to understand the rest.
What does a comp do?
Computer: a programmable, usually electronic machine that converts raw data into useful information
Compared to other machine, most computers are general purpose machines, so they can be programmed to do different things
Information processing cycle: Process that converts data into information
Input: raw data entered
Processing: raw data manipulated to create useful information
Storage: info stored for later retrieval
Output: info returned to the user
History of computers 19th century
Joseph marie jacquard
Jacquard loom, punched cards, one of 1st programmable machines
Charles babbage
Made analytical engine (mechanical computer), had all basic components of modern day computers, programmable (punched cards), never completed bc tech of time was too limited
Ada lovelace
Created programs (on punched cards for analytical engine), considered to be first programmer
History of computers 20th century
Alan turing
Father of AI, turing test, helped break nazi communication codes during ww2
Grace hopper
Accidentally coined term ‘computer bug’, created first compilers
Bill gates
Founded microsoft
Steve jobs
Founded apple
Definitions
ENIAC - 1st working digital general purpose electronic computer
UNIVAC - 1st commercially available computer, famously predicted outcome of 1952 presidential election
History of computers 4 GENERATIONS
First gen 1940
Used vacuum tubes to store n process data
Were massive in size, not reliable, extremely slow
Programming done by manipulating switched which took days
Second gen
Used transistors to process data
Faster, smaller, more reliable and cheaper than first generations computers
Third gen
Used integrated circuits (computer chips) that contain large numbers of transistors to process data
Faster, smaller, more reliable and cheaper than second gen computers
Fourth gen
Basically an extension to third generation
Microprocessor - a complex integrated circuit that contains processing circuitry
First microprocessors developed were as powerful as the ENIAC
Central processing unit cpu - the main microprocessor in a computer
Faster, smaller, more reliable and cheaper than third gen computers
Personal computers developed
Moore law
Prediction made in 1965 by gordon moore who co founded intel
Said that number of transistors that could be placed on a computer chip would double every 2 years for at least a decade
Actual pace was closer to every 18 months
Pace actually held up until roughly 2016 about 50 years, not just a decade
More transistors on a chip → faster and more powerful the chip is
Bits and Bytes
Humans count using 10 digits
Comp use transistors and switches, which only allow 2 possible values
True or false, yes or no, 1 or 0
Inside comp transistor can hold electricity or not
Known as binary number system
All data entered into comp must be converted into bits (binary digits)
Numbers, characters, images, audio, video
Binary Digits and Codes
Bit - binary digit
Smallest unit of digital data
Basically equated to a single transistor on a computer chip
Can have only 2 values - 1 or 0
Single bit not very useful - only 2 values - but can use string of bits to represent more values
2 bits 4 values
3 bits 8 values
8 bits 256 values
Byte - unit of measurement that equals 8 bits
To represent characters, each symbol - letter, digit, punctuation mark - needs to be given unique sequence of bits
ASCII / Extended ASCII
Developed for English, later expanded for similar “Romance” languages
Uses 8 bits (1 byte) for each character
Example: A = 0100 0001
Example: a = 0110 0001
Example: 0 = 0011 0000
Example: ? = 0011 1111
Cannot be used to represent characters from other languages
So what about Chinese, Japanese, Tagalog, Hindi, Russian, etc.
Unicode
Developed in early 1990’s to handle other languages
Uses 16 bits (2 bytes) for each character (instead of 8 bits / 1 byte)
Backwards compatible with ASCII
Can be used to represent characters from (almost) all languages
Has been universally adopted
Using a standard binary code like Unicode is critical for communication
If one computer sends data to another computer using a different binary code, it will not be understood (unless it is translated)
Could the web function as smoothly as it does today if different computers all over the world used different binary codes?
Measuring Data
Storage capacities (such as on hard drives and in computer memory)
8 bits = 1 byte
1 Kilobyte (K) = 1,000 (1 thousand) bytes
1 Megabyte (M) = 1,000,000 (1 million) bytes
1 Gigabyte (G) = 1,000,000,000 (1 billion) bytes
1 Terabyte (T) = 1,000,000,000,000 (1 trillion) bytes
1 Petabyte (P) = 1,000,000,000,000,000 (1 quadrillion) bytes
etc.
Bits used to measure transfer rates (such as an Internet connection)
1 Kilobit = 1,000 (1 thousand) bits
1 Megabit = 1,000,000 (1 million) bits etc.
Personal computers
Desktop Computers
Fits into a workspace, such as a desk
Not portable
Offer most speed, power, and upgradability for lowest cost
All-In-One: integrated monitor and system unit
Notebook (Laptop) Computers
Portable
Can be as powerful as desktop computers, but will be more expensive
Convertible notebook
Two-in-one notebook
Subnotebook Computers
Smaller and lighter than notebook computers
As powerful as desktop and notebook computers, but even more expensive
Netbook Computers
Inexpensive notebook computer
Not very powerful
Mainly used for Internet access
Have largely been replaced by tablets
Microsoft Windows
Most popular (by far)
Mac OSX
Linux (Chromebooks)
Mobile Devices
Portable, handheld computers used for business and entertainment
Fastest growing segment of computers in terms of sales, especially smartphones
Smartphones
Small computers that combine cellular phone service with Internet service, GPS, etc. (by installing apps)
Tablets
Larger and more powerful than smartphones, but not as powerful as desktop and notebook computers
Usually run same operating systems as smartphones
Wearables (ex: Apple Watch)
Multi User Computers
Systems that allow multiple simultaneous users to connect to them
Advantages include centralized resources and security
Much more powerful (and more expensive) than personal computers and mobile devices
Client / Server Computing
Server: A computer that provides services to and/or share resources with client computers over a network
Client: A computer (or device) that requests services from a server
Forms the basis of how networking and the Internet works
Supercomputers
Fastest, most expensive computers in the world
Can be a single computer or a group of computers that work together
Perform complex mathematical calculations, such as those used in weather forecasting and medical research
Usually found in major universities and research institutes
Speeds normally measured in petaflops: 1 petaflop = one thousand million million (1015) floating-point operations per second
Mainframe Computers / Enterprise Servers
Large, very fast computers primarily used by large organizations for critical applications and bulk data processing
Can have thousands of concurrent users
Midrange Computers / Minicomputers
Computers that are larger, more powerful, and more expensive than desktop computers but smaller, less powerful, and less expensive than mainframe computers
Can have dozens or hundreds of concurrent users
Primarily used by medium-sized companies
As high-end desktops have become more powerful, fewer companies are using midrange computers
Ergonomics
Study of the relationship between workers and their workspaces
Jobs involving mostly using computers can lead to health issues (over time)
Carpal tunnel syndrome (most common)
Eye strain / headaches
Back issues
Etc.
Distributed Computing
Distributes the processing of a task across a group of computers
With distributing computing, a group of less powerful computers can often perform same tasks as more powerful (and more expensive) computers
Grid Computing
Form of distributed computing using a group of computers in one location
Volunteer Computing
Form of distributed computing that uses computers from around the world
SETI@home
Computers are Everywhere
Ubiquitous Computing
Technology that recedes into the background and becomes part of the environment
Also known as invisible computing
Is all around us but has become so commonplace we do not notice
Embedded Computer
A specialized computer that is part of another device
Gasoline pumps, microwave ovens, traffic lights, etc.
Internet of Things (IoT)
The connection of the physical world to the Internet
Devices located, monitored, and controlled by embedded computers
Example: Smart homes
Convergence
The integration of different technologies onto multifunction devices
One device can replace multiple devices
Most common example: smartphones
Comments