Midterm 1 Gen Vocab

0.0(0)
studied byStudied by 1 person
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/118

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

119 Terms

1
New cards

Turning Machine

A theoretical concept in computer science used to understand how computers process information. It consists of a tape that can be read from and written to and a set of rules for moving and changing symbols on the tape.

2
New cards

CPU (Central Processing Unit)

The brain of a computer, responsible for executing instructions and performing calculations.

3
New cards

Transistor

A tiny electronic component that acts as a switch or amplifier in electronic circuits. Transistors are the building blocks of modern computer chips.

4
New cards

Bit (Binary Digit)

The smallest unit of data in computing, representing either a 0 or a 1.

5
New cards

Byte

A group of 8 bits, often used to represent a single character of text or a small amount of data.

6
New cards

Character Encoding (ASCII)

A system that assigns numerical values to characters, making it possible for computers to represent text. ASCII is one such encoding.

7
New cards

Binary

A base-2 number system using only 0s and 1s, essential for representing data in computers.

8
New cards

Hexadecimal

A base-16 number system that uses digits 0-9 and letters A-F, helpful for representing binary data in a more human-readable form.

9
New cards

Nibble

Half a byte, or 4 bits.

10
New cards

Machine Code

Low-level instructions that a computer's CPU can directly execute.

11
New cards

RAM (Random Access Memory)

Temporary computer memory that stores data and instructions that the CPU is currently using.

12
New cards

Memory Address

A unique identifier for a location in RAM where data is stored.

13
New cards

I/O (Input/Output)

The process of sending data to or receiving data from external devices, such as keyboards, screens, or printers.

14
New cards

Kernel (Drivers)

The core part of an operating system responsible for managing hardware and providing essential services. Drivers are software components that enable communication between the operating system and hardware devices.

15
New cards

Shell

A user interface that allows interaction with the computer's operating system through text-based commands.

16
New cards

Command Line Interface

A text-based interface for interacting with a computer or software by typing commands.

17
New cards

SSH (Secure Shell)

A protocol for securely connecting to and managing remote computers over a network.

18
New cards

Mainframe

A powerful and large computer used by organizations to process massive amounts of data and run critical applications.

19
New cards

Programming Language

A set of rules and instructions for writing computer programs.

20
New cards

Abstraction

The process of simplifying complex systems or ideas to make them easier to understand and work with.

21
New cards

Interpreted

A type of programming language that is executed line by line by an interpreter software.

22
New cards

Compiled

A type of programming language that is first translated into machine code by a compiler and then executed.

23
New cards

Executable

A program or application that can be run on a computer.

24
New cards

Data Types

Categories that define the kind of data a variable can hold, such as numbers, text, or Boolean values.

25
New cards

Variable

A named container for storing data in a program.

26
New cards

Dynamic Typing

A programming language feature where variable types are determined at runtime.

27
New cards

Static Typing

A programming language feature where variable types are determined at compile-time.

28
New cards

Pointer

A reference to a memory location, often used in low-level programming.

29
New cards

Garbage Collector

A part of a programming language's runtime system that automatically manages memory by deallocating objects that are no longer needed.

30
New cards

int

A data type representing integers in programming.

31
New cards

Signed / Unsigned

Describes whether a data type can hold both positive and negative values (signed) or only positive values (unsigned).

32
New cards

float

A data type representing floating-point numbers with decimal places.

33
New cards

Double

A data type representing double-precision floating-point numbers.

34
New cards

Char

A data type representing a single character.

35
New cards

String

A data type representing a sequence of characters.

36
New cards

Big endian / Little endian

Different ways of ordering bytes in multi-byte data representations.

37
New cards

Array

A data structure that stores a fixed-size collection of elements of the same data type.

38
New cards

Linked List

A data structure that consists of nodes, each of which contains data and a reference to the next node.

39
New cards

Set

A data structure that stores a collection of unique elements.

40
New cards

Stack

A data structure that follows the Last-In-First-Out (LIFO) principle.

41
New cards

Queue

A data structure that follows the First-In-First-Out (FIFO) principle.

42
New cards

Hash

A data structure that maps keys to values for efficient data retrieval.

43
New cards

Tree

A hierarchical data structure with nodes connected by edges, often used in organizing data.

44
New cards

Graph

A data structure consisting of nodes (vertices) and edges, used to represent relationships between objects.

45
New cards

Nodes and Edges

The fundamental components of a graph data structure.

46
New cards

Algorithms

Step-by-step instructions for solving specific problems or performing tasks.

47
New cards

Functions

Named blocks of code that perform specific tasks.

48
New cards

Return

A statement in a function that specifies the value to be returned to the caller.

49
New cards

Arguments

Values passed to a function for it to work with.

50
New cards

Operators

Symbols or keywords used to perform operations on data.

51
New cards

Boolean

A data type representing true or false values.

52
New cards

Expression

A combination of values, variables, and operators that can be evaluated to a single value.

53
New cards

Statement

An instruction in a program that performs a specific action.

54
New cards

Conditional Logic

The use of conditions (e.g., if statements) to make decisions in a program.

55
New cards

While Loop

A control structure that repeats a block of code while a condition is true.

56
New cards

For Loop

A control structure that iterates a specific number of times or over a range of values.

57
New cards

Iterable

An object that can be looped over, like a list or an array.

58
New cards

Void

A return type indicating that a function does not return a value.

59
New cards

Recursion

A programming technique where a function calls itself to solve a problem.

60
New cards

Call Stack

A data structure that keeps track of function calls in a program.

61
New cards

Stack Overflow

An error that occurs when the call stack becomes too large.

62
New cards

Base Condition

A condition that stops the recursion in a recursive function.

63
New cards

Big-O

Notation used to describe the upper bound of the time complexity of an algorithm.

64
New cards

Time Complexity

A measure of how long an algorithm takes to run based on its input size.

65
New cards

Space Complexity

A measure of how much memory an algorithm uses based on its input size.

66
New cards

Brute Force

A straightforward but often inefficient approach to problem-solving.

67
New cards

Divide and Conquer

A problem-solving technique that breaks a problem into smaller subproblems.

68
New cards

Dynamic Programming

A method for solving complex problems by breaking them into simpler overlapping subproblems.

69
New cards

Memoization

A technique to optimize recursive algorithms by storing and reusing previously computed results.

70
New cards

Dijkstra's Shortest Path

An algorithm used to find the shortest path between nodes in a graph with non-negative edge weights.

71
New cards

Backtracking

A problem-solving technique that explores potential solutions and returns when it finds that a solution cannot be reached.

72
New cards

Declarative

A programming paradigm that focuses on describing what you want to achieve, rather than specifying how to achieve it.

73
New cards

Functional Language

A programming language that emphasizes the use of functions as the primary building blocks for programs.

74
New cards

Imperative

A programming paradigm that focuses on specifying a sequence of steps to achieve a goal.

75
New cards

Procedural Language

A type of programming language that emphasizes procedures or functions to structure code.

76
New cards

Multiparadigm

A programming language that supports multiple programming paradigms, such as imperative, object-oriented, and functional.

77
New cards

OOP (Object-Oriented Programming)

A programming paradigm that organizes code into objects, which have both data (attributes) and methods (functions).

78
New cards

Class

A blueprint or template for creating objects in object-oriented programming.

79
New cards

Properties

Characteristics or attributes of objects in object-oriented programming.

80
New cards

Methods

Functions associated with objects in object-oriented programming.

81
New cards

Inheritance

A mechanism in object-oriented programming where a new class can inherit properties and methods from an existing class.

82
New cards

Design Patterns

Reusable solutions to common programming problems.

83
New cards

Instantiate

The process of creating an instance (object) of a class in object-oriented programming.

84
New cards

Heap Memory

A region of a computer's memory used for dynamic memory allocation.

85
New cards

Reference

A value that refers to an object or data stored in memory.

86
New cards

Threads

Lightweight processes that can run concurrently within a program.

87
New cards

Parallelism

The execution of multiple tasks or threads simultaneously to improve performance.

88
New cards

Concurrency

The ability of a system to handle multiple tasks and execute them in overlapping time periods.

89
New cards

Bare Metal

Refers to running software directly on hardware without an intervening operating system.

90
New cards

Virtual Machine

A software emulation of a physical computer that runs on a host operating system.

91
New cards

IP Address (Internet Protocol Address)

A unique numerical label assigned to each device connected to a computer network.

92
New cards

URL (Uniform Resource Locator)

A web address that specifies the location of a resource on the internet.

93
New cards

DNS (Domain Name System)

A system that translates human-readable domain names into IP addresses.

94
New cards

TCP (Transmission Control Protocol)

A protocol used for reliable and ordered data transmission over a network.

95
New cards

Packets

Small units of data transmitted over a network.

96
New cards

SSL (Secure Sockets Layer)

A security protocol used to establish encrypted connections on the internet.

97
New cards

HTTP (Hypertext Transfer Protocol)

A protocol used for transferring web pages and other resources on the World Wide Web.

98
New cards

API (Application Programming Interface)

A set of rules and protocols that allows different software applications to communicate with each other.

99
New cards

Printers

Peripheral devices that produce physical copies of digital documents or images.

100
New cards

Primitives

boolean, char, integers (byt/short/int/long), floating points (float/double)