Chapter 1 Flashcards

1
Q

What is a program?

A

A list of unambiguous instructions meant to be followed mechanically by a computer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

One of the components of a computer is its CPU. What is a CPU and what role does it play in a computer?

A

A CPU does the actual computing, and its job is to execute programs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Explain what is meant by an “asynchronous event.” Give some examples.

A

Events that are not “synchronous”, such as a fetch and execute process being interrupted.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the difference between a “compiler” and an “interpreter”?

A

Compiler translates language instructions into executable machine language programs. Interpreters translates instruction by instruction as necessary, as a program.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Explain the difference between high-level languages and machine language.

A

High level languages cannot be run on any computer, and must be translated to machine language with a compiler. Machine language can be run on the individual machine its compiled for.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

If you have the source code for a Java program, and you want to run that program, you will need both a compiler and an interpreter. What does the Java compiler do, and what does the Java interpreter do?

A

The java compiler creates bytecode, the java interpreter compiles bytecode into native machine language just in time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is a subroutine?

A

Consists of instructions for performing some task, grouped as a unit, and given a name.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Java is an object-oriented programming language. What is an object?

A

An object is a module containing data and subroutines

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is a variable? (There are four different ideas associated with variables in Java. Try to mention all four aspects in your answer. Hint: One of the aspects is the variable’s name.)

A

A variable is a memory location that has been given a name and can be referred to in a program. It generally has a type that indicates what type of data it can hold.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Java is a “platform-independent language.” What does this mean?

A

Language can be written once, and then compiled & interpreted on a system by system basis.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is “machine language”?

A

Instructions that are written in a language understood by a computer, and can only be executed if expressed in that language.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Main Memory

A

Programs are stored in Main Memory, also called RAM (or Random Access Memory)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Locations

A

Numbered locations that identify an area in memory.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Address

A

A numbered sequence of a location, allowing a computer to pick out a piece of information from the millions in memory.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Fetching

A

A process of reading an instruction from memory

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Executing

A

A process of carrying out an instruction.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Fetch & Execute Cycle

A

A process of reading an instruction, carrying it out, and then fetching the next instruction.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Arithmetic Logic Unit (ALU)

A

The part of the processor which carries out operations such as addition or subtraction

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Registers

A

Small memory units capable of holding a single number. CPUs generally have 16 or 32 general purpose registers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Program Counter

A

A special purpose register to keep track of the program that is executing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Transistors

A

Tiny switches that a PC is comprised of, that can be turned on and off as part of a program execution

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Bit

A

Identified as a “zero” or “one” in a binary digit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Byte

A

A sequence of 8 bits

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Hard Disk or Solid State Drive

A

Used for storing programs and data files in a permanent fashion. Hard drives use spinning magnetic disks, while solid state drives are purely electronic with no moving parts.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Keyboard & Mouse

A

Devices for user input

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Monitor & Printer

A

Devices for computer output

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Audio Output Device

A

Allows the computer to play sounds

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

Network Interface

A

Allows the computer to communicate with other connected computers on a network, via wires or wirelessly

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

Scanner

A

Converts images into coded binary numbers that can be stored and manipulated

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

Device Driver

A

Software that the CPU executes when dealing with a physical device

31
Q

Busses

A

Set of wires that carry various sort of information between devices connected to those wires.

32
Q

Polling

A

Method of CPU checking whether there is any input data to report

33
Q

Interrupts

A

A signal sent by another device to the CPU to notify it that there is information to be received

34
Q

Interrupt Handler

A

Instructions that tell the CPU what processing to do, and what to do once processing is completed

35
Q

Multitasking

A

Ability to perform multiple tasks at the same time

36
Q

Timesharing

A

An application of multitasking, allows multiple applications (or users) to utilize CPU resources at the same time

37
Q

Thread (or Process)

A

Individual tasks that the CPU is working on

38
Q

Thread Yield

A

A thread yields to give other threads a chance to run

39
Q

Thread Blocked

A

When a thread cannot continue until some data is received by another source

40
Q

Preemptive Multitasking

A

Forced methods of suspending threads to allow other threads to operate

41
Q

Event Handlers

A

Called asynchronously when specific events occurred

42
Q

Operating Systems

A

Software that does all the interrupt handling, communication handling with the user & hardware devices, and controls which thread(s) are allowed to run

43
Q

Control Structures

A

Special instructions that can change the flow of control, of which there are two basic types: loops and branches.

44
Q

Software Engineering

A

Concerned with the construct of correct, working, well written programs.

45
Q

Structured Programming

A

To solve large problems by breaking down problems into pieces of separate work, decomposing until its smallest parts. This was called top-down programming.

46
Q

Bottom Up Design

A

Starting with solving the known problems, and working upwards to create a solution to an entire problem.

47
Q

Module

A

Component of a larger system that interacts with the rest of the system

48
Q

Information Hiding

A

Hiding what the module does, as long as the module fulfills the role correctly.

49
Q

Object Oriented Program

A

That an object is a kind of self sufficient entity that has a state and can respond to messages

50
Q

State

A

The data an object contains

51
Q

Messages

A

The subroutines an object contains

52
Q

Polymorphism

A

A property of objects to respond to the same message in different ways

53
Q

Class

A

Objects that contain the same type of data, and respond to the same messages in the same way

54
Q

Subclasses

A

Classes derived from other classes, and inherit
their properties

55
Q

Command Line Interface

A

The interaction between a user and a computer via a terminal

56
Q

Graphical User Interface

A

A method of interacting with a computer on a screen

57
Q

Interface components

A

Items such as windows, scroll bars, menus, buttons, and icons.

58
Q

Abstract Windowing Toolkit (AWT)

A

a Java GUI component set

59
Q

Swing

A

a Java GUI component set introduced in 1.2

60
Q

Networks

A

A connection of computers together that can exchange data and files

61
Q

Internet

A

A huge public network of millions of connected computers

62
Q

Protocols

A

A details specification of how communication is to proceed

63
Q

Internet Protocol

A

Specifies how data is to be physically transmitted from one computer to another

64
Q

Transmission Control Protocol

A

Ensures that data sent using IP is received in entirety and free from errors

65
Q

Packets

A

A chunk of data being sent from one computer to another

66
Q

IP Address

A

a number that uniquely identifies a computer from all other computers on a network

67
Q

Domain Names

A

An alphanumeric representation of an IP address

68
Q

SMTP

A

Simple Mail Transfer Protocol is a method to transfer email messages from one computer to another

69
Q

Pages

A

A page of information that is stored on a computer on the Internet

70
Q

Links

A

Contained in a page that links to another page on the internet

71
Q

Web Server

A

a computer that stores pages of information

72
Q

Web Browser

A

User interface to the world wide web

73
Q

Applets

A

Small java program that is transmitted over the internet and runs on a web page.