270 likes | 394 Views
Computers. What is a computer? General purpose device that is programmable Electronic Transform data. Data. Stored as bytes (B) 1 B can represent one character (usu.) Kilobyte (KB) ~= 1e3 B Megabyte (MB) ~= 1e6 B Gigabyte (GB) ~= 1e9 B Terabyte (TB) ~= 1e12 B Petabyte (PB) ~= 1e15 B
E N D
Computers • What is a computer? • General purpose device that is programmable • Electronic • Transform data
Data • Stored as bytes (B) • 1 B can represent one character (usu.) • Kilobyte (KB) ~= 1e3 B • Megabyte (MB) ~= 1e6 B • Gigabyte (GB) ~= 1e9 B • Terabyte (TB) ~= 1e12 B • Petabyte (PB) ~= 1e15 B • Exabyte (EB) ~= 1e18 B
Hardwareand Software • Computing concerns data and • Hardware • Software
Hardware • Input/Output devices • Processor (CPU) • Control Unit • Arithmetic and Logic Unit • Memory (RAM) • Capacities?
Hardware • Storage • Hard Disk Drive • Solid State Drive (Flash) • Capacities?
Software • Software • Programs that instruct computers in the steps needed to implement applications • Intangible
Software • Hardware and software present a virtual world that we experience • Synthetic, intangible • Facebook • Bejeweled Blitz • Wikipedia • Call of Duty Black Ops
Computers Are Everywhere • In laptops, tablets, smart phones, music players, wireless mics, anti-lock brakes, TV remotes, credit card readers, etc. • Through 2010, 24.1 billion ARM processor chips have been shipped • It means that every consumer in the developed world owns more than a dozen
Computers Are Everywhere • Head-to-Head Comparisons
Inside a Smartphone Figure 1.2 Top side of the main printed circuit board in the iPhone 3GS; for orientation, the USB port is at left. CPU by Samsung. Flash by Toshiba.
Inside a Smartphone • iFixit • http://www.ifixit.com/Teardown/iPhone+5+Teardown/10525/1
Software • Software is a collective term for programs • Programs consist of instructions • Programs “instruct” the computer (hardware)
Software • Software Stack • Concept used to structure and organize the software in computer systems • Series of layers of programs that implement user applications • Each layer implements operations used to build the layers above
Software • Referring to figure on the previous slide: • To check out a video on YouTube video using a smart phone, you would: • use the browserapplication to get to YouTube • the browser app uses the window manager, and several other frameworks • the window manager uses media manager, and several other libraries • the media manager uses the display drivers, and several other kernel operations
Software • Writing software is challenging • Word • Photoshop • Windows 7
The Data • Data and Information are (usu.) interchangeable words • Physical Form • Information is everywhere in the physical world • Much of it can be captured and digitized • It is always represented as bits (0’s and 1’s), 8 of which form a byte
The Files and Databases • Digital information we access through WWW is stored on Web servers around the world as files and databases. • Database examples • iTunes library • Phone contact list • Note SQLite library in software stack
Terms of Endearment • To learn a new subject, we must learn its terminology • Helps when you search or call tech support too!
Algorithms • Computer Science • Study of algorithms • Precise, systematic method for producing a specified result • Important points about algorithms • We use and invent algorithms all the time to solve our problems (examples?) • Often the agent that “runs” the algorithm is a person, NOT a computer
Algorithms (cont’d) • Computers are clueless • Everything needs to be spelled out • Programmers make algorithms precise by writing them in a programming language
Algorithms (cont’d) • People do have a clue, so many things can be left out of an explanation when people have to follow directions • E.g., directions to the lab
Algorithm Versus Program • Programs • Consist of many algorithms • Written in a specific programming language • Often use terms interchangeably
Key Concept Terms • Abstract and Generalize • Abstract • Remove the essential from the nonessential • Way no manage complexity • Fables require abstraction • Abstract essential point to learn from it • “Tortoise and the Hare” fable
Key Concept Terms • Generalize • Process to recognize the common idea in two or more situations • E.g. • Faucet handles usually turn left for on, right for off • Caps are same way • Leads to “Lefty loosey, righty tighty”