270 likes | 410 Vues
A computer is a general-purpose electronic device that transforms and processes data, represented in bytes. It consists of hardware components such as the CPU, memory, and storage drives, along with software that instructs the computer to perform tasks. Data is stored in various units (e.g., KB, MB, GB) and managed through files and databases. This knowledge serves as the foundation for understanding algorithms and programming, which play a crucial role in computer science and technology.
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”