Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Introduction to Computers and Terminology CS280 – 09/01/05 Why do we care? Communication requires specific language. Different fields and activities have different languages. Understanding the language can help you understand the activity and vice versa. Sports, hobbies, majors, businesses, etc. all have their own languages and these languages help us to communicate effectively with others in that same field. Objectives At the conclusion of this section you will be able to: identify the basic components of a computer system. define the difference between volatile and nonvolatile memory order different size words used in the computing field identify the difference between hardware and software identify the difference between OS software and application software identify common elements of standard user interfaces begin to “look under the covers” of your computer and its applications Objectives – you will be able to define the following terms Computer processor CU ALU main memory – RAM auxilliary storage volatile vs persistent hard disk floppy disk input device output device device driver boot shortcut menu command button control file type GUI WYSIWYG software, hardware treeware, wetware algorithm program execute abstraction generalization We will start with what a computer is Figure 1.1. Examples of the monolithic (a) and component (b) systems. a. b. Figure 1.9. A componentapproach computer. Figure 9.2. The principal components of a computer. von Neumann architecture – developed by John von Neuman Figure 1.10. A motherboard. Central Processing Unit or CPU The CPU consists of the ALU and CU. The ALU – Arithmetic Logic Unit – processes operations (adding, subtracting, logical operations, etc.) The CU – Control Unit – controls the flow of activity, processing one tiny instruction at a time. One action at the user end results in many instructions in the CU Storage Two storage types Volatile – Main memory – temporary storage. If machine is turned off, main memory is lost. RAM/ROM Non-volatile – Auxiliary storage. If machine turned off, the non-volatile memory remains. Hard drive, floppy disks, tapes, etc. RAM Sequential All memory is composed of binary devices. Computers are binary machines A binary device consists of two states. Refer to these states as on or off or high voltage/low voltage. Represented as 0 (off) and 1 (on). All numbers, characters, instructions, etc are represented as a series of 1’s and 0’s. Bits are grouped into 8-bit segments called bytes. Most computers have byte addressability. All storage is binary We also refer to computers as digital as opposed to analog. Main memory Main memory is volatile storage. It retains its values only while there is power to the machine. When power is lost or the machine is shut down, the memory is wiped clean. Think of it as the computer’s desktop. We can work on the items only while they are on the desk. When we leave, we move them into permanent storage, since they are vulnerable to loss if they remain. Main memory consists of a series of “bits”. each can have one of two values – on or off. On is interpreted as a 1 and off is interpreted as the value 0. All data is represented as some sequence of 0’s and 1’s on a modern digital computer. Figure 1.11. Sequential versus random storage access. Main memory is accessed randomly That means that each location can be accessed independently of all others. Think of the library. You don’t have to go through all of the books to find one. You go to an index and then can go rapidly to the section then the book you are interested in. Random access is this kind of access method. CPU and main memory The processor of the computer works with main memory. Anything that the processor is going to operate on has to be in memory. Anything that comes in or out must go through main memory. It is like your desktop. What is on top can be worked on. What is sitting in a file cannot be. Addressability Memory is a collection of cells, each with a unique physical address. Most machines are 8-bit…a cell consists of one byte. From Dale Auxiliary Storage (“Permanent” Storage) Hard drives Floppy drives Memory sticks (USB devices) tape These are all also input/output devices – we can read from and write to. Some CD/DVD are only input, others are input/output. We describe the size of the storage in terms of bytes. Or in other words how many 8 bit locations are on that medium. Sizes in Perspective Page 119 Figure 1.12. A hard disk. Magnetic Disks A read/write head travels across a spinning magnetic disk, retrieving or recording data Figure 5.5 The organization of a magnetic disk Internal drives and external storage Floppy disks share the same basic mechanism as the hard drive. Only one platter. Magnetic Tape The first truly mass auxiliary storage device was the magnetic tape drive Figure 5.4 A magnetic tape Compact Disks A CD drive uses a laser to read information stored optically on a plastic disk CD-ROM is Read-Only Memory DVD stands for Digital Versatile Disk Other parts of the computer system Input devices – mouse, keyboard , camera, scanner – converts analog (real world) to binary representation (or digital). Output devices – printer, display – converts binary back to something we can deal with. Connections The parts are connected to one another by a collection of wires called a bus Figure 5.2 Data flow through a von Neumann architecture Beyond the hardware Computing Systems (Cont’d) Hardware: The physical elements of a computing system (printer, circuit boards, wires, keyboard…) Software: The programs that provide the instructions for a computer to execute 3 One other component Wetware – The human user. A computer system needs the human being to get things started, provide input, interpret output, etc. Hardware vs Software Hardware is the “hard stuff”. All of the electronics and peripherals are hardware. Software is the stuff that we cannot touch. Software is the instructions that the computer executes and the data on which it operates. Software vs data We might have an application such as Word. The application does the activity for us. The data are the words, formatting instructions, special characters that make up the document. Data can also be provided to the application via the keyboard or the mouse. Kinds of software Operating system Examples are Windows, Linux, Mac OS Each provides similar services Each provides the tools that allow a user to interact with the hardware without having to deal with the detail. (see Abstraction). Applications System tools (used by programmers) User tools (used by humans) Examples are Word, PeopleSoft, Myst, editors, compilers Operating systems Provide a layer between the user applications and the hardware. Manage the processes. Keeps track of which processes are active and in what order requests for services are processed. Keeps track of the various storage locations…main memory, auxilliary storage, etc. Application software Early applications were very specific. If I had to write a report, I had a program to do so. Examples are e-campus and Blackboard. More recently, generic user tools came into being. The use that the user will put to the tool is determined by what they want to do, not what the programmer designed into it. Examples are the general purpose tools of word and excel. Computing as a Tool Programmer / User Systems Programmer (builds tools) Applications Programmer (uses tools) Domain-Specific Programs User with No Computer Background 20 User interfaces User interface – What the user sees and “interacts” with. It is the virtual image of what the user is trying to do. When I type on the keyboard, I usually see an echo of what I am typing. But it looks like I am directly typing onto the screen. Good interfaces Intuitive Consistent across applications Aesthetic Useful Let’s look at some examples WYSIWYG Acronym for What You See Is What You Get Word uses a WYSIWYG interface. See HTML document for a non-WYSIWYG interface (and an example where a generic editor is used to write code intended to be run under another application) Interface features Control buttons Sliders Minimize, maximize, and variable size Menus – expected functionality