Computer Science Illuminated

a data set by xnity
created February 25, 2016
PascalThis French mathematician built and sold the first gear-driven mechanical machine which did addition and subtraction
LeibnizThis person built the first mechanical machine that did addition, subtraction, multiplication, and division
BabbageThis person designed the first mechanical machine that included memory
LovelaceThis person was considered the first programmer
HollerithThis person proposed that a punched card be used for counting the census
LovelaceThis person edited Babbage’s work
ByronThis person was Ada Lovelace’s father
TuringThis person would have been mentioned in the book the Code Breakers
JacquardThis person developed the concept of punched holes used in weaving cloth
HollerithThis person is associated with IBM
ThirdCircuit boards were developed in this generationA circuit board is a piece of material on which printed or integrated circuits are installed.
SecondTransistors were developed during this generationIn the digital world of computing, a transistor is mostly a binary switch and the fundamental building block of digital circuitry. Like a light switch on the wall, the transistor acts as a simple on/off switch, either preventing or allowing current to flow through.
SecondThe Magnetic core memory was developed during this generationMagnetic-core memory was the predominant form of random-access computer memory for 20 years between about 1955 and 1975. Such memory is often just called core memory, or, informally, core. Core uses tiny magnetic toroids (rings), the cores, through which wires are threaded to write and read information.
FirstCard input/output was developed during this generationIn computing, input/output or I/O (or, informally, io or IO) is the communication between an information processing system, such as a computer, and the outside world, possibly a human or another information processing system. Inputs are the signals or data received by the system and outputs are the signals or data sent from it
FourthParallel computing was developed in this generationParallel computing is a form of computation in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved concurrently ("in parallel").
FirstMagnetic drums were developed during this generationMagnetic drums, which had fixed read/write heads for each of many tracks on the outside surface of a rotating cylinder coated with a ferromagnetic material, were used for both main and auxiliary memory in the 1950s, although their data access was serial.
FirstMagnetic tape drives were developed during this generationMagnetic tape, similar to the tape used in tape recorders, has also been used for auxiliary storage, primarily for archiving data. Tape is cheap, but access time is far slower than that of a magnetic disk because it is sequential-access memory—i.e., data must be sequentially read and written as a tape is unwound, rather than retrieved directly from the desired point on the tape. Servers may also use large collections of tapes or optical discs, with robotic devices to select and load them, rather like old-fashioned jukeboxes.
ThirdIntegrated circuits were developed during this generationAnother name for a chip, an integrated circuit (IC) is a small electronic device made out of a semiconductor material. The first integrated circuit was developed in the 1950s by Jack Kilby of Texas Instrumentsand Robert Noyce of Fairchild Semiconductor.
FourthPersonal computers were developed during this generationWhile the term PC stands for personal computer and could apply to Macs, Windows machines and computers running other operating systems alike, we're using it in the common vernacular as shorthand for a Windows machine.
FirstVacuum tubes were developed during this generationA vacuum tube (also called a VT, electron tube or, in the UK, a valve ) is a device sometimes used to amplify electronic signals. In most applications, the vacuum tube is obsolete, having been replaced decades ago by the bipolar transistor and, more recently, by the field-effect transistor .
FourthLarge scale integration was developed during this generationLSI defines the technology used to build powerful microchips or integrated circuits (IC) in a very small form factor. It succeeded small-scale integration (SSI) and medium-scale integration (MSI), which included tens to hundreds of transistors per microchip. LSI consists of thousands of transistors that are closely embedded and integrated with a very small microchip.
SecondMagnetic discs were developed during this generationAlso called disk, hard disk. a rigid disk coated with magnetic material, on which data and programs can be stored. The optical disk system is a hierarchical system with primary storage on magnetic disk and secondary storage on the optical disks.
FourthNetworking was developed during this generationA computer network or data network is a telecommunications network which allows computers to exchange data. In computer networks, networked computing devices exchange data with each other using a data link. The connections between nodes are established using either cable media or wireless media. The best-known computer network is the Internet.
FirstAssemblers were developed during this generationAssemblers are a program for converting instructions written in low-level symbolic code into machine code
SecondFORTRAN was developed during this generationFORTRAN is a general-purpose, imperative programming language that is especially suited to numeric computation and scientific computing
ThirdOperating systems were developed during this generationAn Operating System is system software that manages computer hardware and software resources and provides common services for computer programs
FourthStructured programming was developed during this generationStructured programming is a programming paradigm aimed at improving the clarity, quality, and development time of a computer program by making extensive use of subroutines, block structures, for and while loops—in contrast to using simple tests and jumps such as the goto statement which could lead to "spaghetti code" which is difficult both to follow and to maintain.
ThirdTime sharing was developed during this generationTime sharing is a technique which enables many people, located at various terminals, to use a particular computer system at the same time. Time-sharing or multitasking is a logical extension of multiprogramming. Processor's time which is shared among multiple users simultaneously is termed as time-sharing.
FifthHTML (for Web) was developed during this generationShort for HyperText Markup Language, the authoring language used to create documents on the World Wide Web. HTML is similar to SGML, although it is not a strict subset. HTML defines the structure and layout of a Web document by using a variety of tags and attributes.
SecondLoaders were developed during this generationIn a computer operating system , a loader is a component that locates a given program (which can be an application or, in some cases, part of the operating system itself) in offline storage (such as a hard disk ), loads it into main storage (in a personal computer, it's called random access memory ), and gives that program control of the computer (allows it to execute its instruction s).
FourthSpreadsheets were developed during this generation
FourthWord processors were developed during this generation
SecondLisp was developed during this generationLisp is a family of computer programming languages with a long history and a distinctive, fully parenthesized Polish prefix notation. Originally specified in 1958, Lisp is the second-oldest high-level programming language in widespread use today; only Fortran is older (by one year)
FourthPC-DOS was developedIBM PC DOS (full name: International Business Machines Corporation Personal Computer Disk Operating System) was an operating system for the IBM Personal Computer, manufactured and sold by IBM from the 1980s to the 2000s. Before version 6.1, PC DOS was an IBM-branded version of MS-DOS.
ThirdLoaders/linkers bundled into Operating System were developed during this generation
FifthJava was developed during this generationJava is a general-purpose computer programming language that is concurrent, class-based, object-oriented, and specifically designed to have as few implementation dependencies as possible. It is intended to let application developers "write once, run anywhere" (WORA), meaning that compiled Java code can run on all platforms that support Java without the need for recompilation
ThirdSPSS was developed during this generationSPSS Statistics is a software package used for statistical analysis.
FourthC++ was developed during this generationC++ is a middle-level programming language developed by Bjarne Stroustrup starting in 1979 at Bell Labs. C++ runs on a variety of platforms, such as Windows, Mac OS, and the various versions of UNIX.
Algorithms and data structuresPart of the six subject subareas of computer science, called systems areas, that relate to understanding and building computing tools in general
Programming languagesPart of the six subject subareas of computer science, called systems areas, that relate to understanding and building computing tools in general
ArchitecturePart of the six subject subareas of computer science, called systems areas, that relate to understanding and building computing tools in general
Operating systemsPart of the six subject subareas of computer science, called systems areas, that relate to understanding and building computing tools in general
Software methodology and engineeringPart of the six subject subareas of computer science, called systems areas, that relate to understanding and building computing tools in general
Human-computer communicationPart of the six subject subareas of computer science, called systems areas, that relate to understanding and building computing tools in general
Numerical and symbolic computationPart of the six subject subareas of computer science, called applications areas, that relate to the computer’s use as a tool
Databases and informational retrievalPart of the six subject subareas of computer science, called applications areas, that relate to the computer’s use as a tool
Artificial intelligence and roboticsPart of the six subject subareas of computer science, called applications areas, that relate to the computer’s use as a tool
GraphicsPart of the six subject subareas of computer science, called applications areas, that relate to the computer’s use as a tool
Organizational informaticsPart of the six subject subareas of computer science, called applications areas, that relate to the computer’s use as a tool
BioinformaticsPart of the six subject subareas of computer science, called applications areas, that relate to the computer’s use as a toolBioinformatics is an interdisciplinary field that develops methods and software tools for understanding biological data. As an interdisciplinary field of science, bioinformatics combines computer science, statistics, mathematics, and engineering to study and process biological data.
AbstractionA model of a complex system that includes only the details essential to the viewer.
Computer HardwareThe physical elements of a computing system.
Computer SoftwareThe programs that provide the instructions that a computer executes.
Computing systemComputer hardware, software, and data, which interact to solve problems.
What do you mean by the statement the " the 1980s and 1990s must be characterized by the changing profile of the user"?The original user was the programmer who had a problem to solve. By the 1970s, application programs were being written such that nonprogrammers could use them to solve problems. With the advent of the personal computer, many people began using the computer for personal correspondence, personal accounts, and games.
Name 4 areas in which the practitioner must be skilled.Algorithmic thinking, representation (of data storage), programming, and design.
Distinguish between computing as a tool and computing as a discipline.Computing as a tool refers to the use of computing by people to solve problems in their professional or personal life. Computing as a discipline refers to the study of the body of knowledge that makes up computer science and/or computer engineering.
Is computing a mathematical discipline, a scientific discipline, or an engineering discipline? Explain.Computing is neither a mathematical discipline nor a scientific discipline nor an engineering discipline; it has roots in all three disciplines. Boolean algebra, logic, and numerical analysis contribute greatly to the foundations of computing. Simulation and model building from the scientific discipline contribute to the foundations of computing. The techniques from engineering of building large systems contribute to the foundations of computing.
Distinguishing between systems areas and applications areas in computing as a discipline.The systems areas of computing as a discipline relate to the understanding and building of computer tools: algorithms and data structures, programming languages, (computer) architecture, operating systems, software methodology and engineering, and human-computer communication. The applications areas in computing relate to the computer's use as a tool: numerical computation, databases and informational retrieval, artificial intelligence and robotics, graphics, organizational informatics, and bioinformatics.
Define the word abstraction and relate it to the drawing in figure 1.2.An abstraction is a mental model that removes complex details. An abstraction lets the viewer see only those details that are relevant to the user's view. For example an engine is a mental model of a car from the builder or mechanic's view. The cockpit is the mental model for an ordinary driver, who does not have to know the details of the engine in order to drive the car.
Define the word protocol and explain how it is used in computing.A protocol is a code prescribing strict adherence to correct etiquette and procedure (as in a diplomatic exchange). Computing terminology has borrowed the word to describe the correct etiquette for computers to use when communicating with one another.
Distinguish between machine language and assembly language.Machine language is built into the electrical circuitry of a computer. Assembly language is made up of mnemonic codes that represent machine-language instructions. *Programs written in assembly language are translated into machine language programs by a computer program called an assembler. *
Distinguish between assembly language and high-level languages.While assembly language is a made up of mnemonic codes that represent machine-language instructions, high-level languages use English-like statements to represent groups of assembly-language statements or machine-language statements. *There is a one-to-one correspondence between statements in an assembly language and the statements they represent in machine language. There is a one-to-many correspondence between high-level statements and the corresponding machine-language statements. *
FORTRAN and COBOL were two high-level languages defined during the second generation of computer software. Compare and contrast these languages in terms of their history and their purpose.FORTRAN was written at IBM for use in solving science and engineering problems. It was not formally designed and has grown greatly over the years. COBOL was design by a team for business applications and has been relatively stable.
Distinguish between an assembler and a compiler.An assembler translates assembly-language programs into machine code. A compiler translates programs in a high-level language into either assembly-language programs or machine-language programs.
Distinguish between a systems programmer and an applications programmer.A systems programmer writes programs that are tools to help others write programs. An applications programmer writes programs to solve specific problems.
What was the rationale behind the development of operating systems?A human operator is too slow. Everything application had to be accessed by the user writing it in. Therefore the computer was idle while the human prepared the next program to be run. The computer has the speed to organize itself.
What constitutes systems software?Utility programs such as loaders and linkers, operating systems, and language translators are systems software.
What does a Loader do?Loader puts a program's instructions into memory where they can be executed.
What does a Linker do?Linker a program that puts pieces of a large program together so that it can be put into memory where it in can be executed.
What does an Editor do?Editor a word processing program that allows the user to enter and edit text.
How was the program SPSS different from the programs that came before it?SPSS was the first application program written so that the nonprogrammer user could enter data and specify the processing of the data.
Ready to learn about Computer Science Illuminated?