Module 1: Computing & Computing Systems

0.0(0)
studied byStudied by 0 people
0.0(0)
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/81

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.

82 Terms

1
New cards

Computing

Use of comptuers to perform tasks such as processing data, solving problems, or automating processes

2
New cards

Computing system

Integrated collection of hardware, software, and data that work together

3
New cards

Hardware

Physical components

4
New cards

Software

Coding components

5
New cards

Natural language

human language

6
New cards

Machine language

made from binary and 0s

7
New cards

High level language

closer to human languages

8
New cards

Procedural programming languages

Writing instructions to make a computer perform specific tasks

9
New cards

Functional programming languages

? - uses pure functions to code, emphasis on mathematics

10
New cards

Object oriented programming languages

Using classes to make objects in order to program

11
New cards

Scripting languages

Reads and executes code on the fly; use an interpreter; used to execute tasks

12
New cards

Logic programming languages

use logical statements to code

13
New cards

Programming languages

low level; high level

14
New cards

Low level languages

Directly control the hardware; Assembly Machine languageHi

15
New cards

High level languages

More abstract and user friendly, easier development; Python, Java, C++

16
New cards

Machine language purpose

Control operations in processor

17
New cards

Assembly

  • Def: low level

  • Type: symbolic and mnenomic; uses mnenomics like MOV, ADD, SUB

  • Debugging: easier debugging than machine language

  • Translator: requires an assembler to convert to machine code

  • Speed: slightly slower execution

  • Portability: low portability, hardware specific (specific to each processor’s architecture)

18
New cards

Machine language

  • Def: Set of binary instructions

  • Language type: binary/hexademical/number system

  • Readable: no

  • Debugging: hard

  • Trnalsator: no

  • Exectution: fast, executed byh CPU

  • Portability: very low, even more hardware specificP

19
New cards

Process

High level → Assembly→ Machine

20
New cards

Compiler

  • translate everything first, then execute

  • Translation: entire program

  • Output: machine code/executible file

  • Speed: slower to start, speeds up

  • Error handling: shows all errors after complication

  • Example: GCC, C++/C

  • Languages: C++, C, Haskel

21
New cards

Interpreter

translate and execute at the same time, step by step

  • Translator: one line at a time

  • Output: no seperate file, runs code directly

  • Faster to start, slower execution

  • Error: stops on first error

  • Example tools: Python interpreter, Javascript engine

  • Programming langugaes that use it: Python, Rugby, Perl

22
New cards

Process 2.0

Compiler, translator, assembler

23
New cards

Compiler

translates high level language to machine code

24
New cards

Assembler

Translates assembly language to machine code

25
New cards

Linker

Combines multiple object files into one executable file

26
New cards

Interpeter

Executes the file but without translating it into machine code

27
New cards

Non object oriented programming

  • Basic unit: functions or procedures

  • Code structure: sequential instructions (step by step)

  • Data and functions: seperate

  • Data access: global data— less secure

  • Modularity: limited (function based)

  • Code reusability: low

  • Inheritance: n/a

  • Polymorphism: n/a

  • Encapsulation: n/a

  • Overloading: n/a

  • East of maintenance: harder as program grows

  • Example languages: C, Pascal, BASIC, fortran, COBOL

28
New cards

Object oriented

  • Basic unit: Objects and classes

  • Code structure: Organized around objects and interactions

  • Data and function: Data and functions are bundled into classes/objects

  • Data access: Encapsulation hides data using access modifiers

  • Modularity: high (class-based modularity)

  • Code reusability: high- through inheritance and polymorphism

  • Inheritance: supported

  • Polymorphism: supported

  • Encapsulation: core concept- controls access to data

  • Overloading- supported (function/operator overloading)

  • East of maintenance: easier (modular and scalable)

  • Example languages: Java, C++, Python, C#, Swift

29
New cards

Organization

Programming languages: compilers and interpreters

30
New cards

Registers

Small, high-speed storage locations within CPU are used to store data and instructions that are needed immediately in processing

31
New cards

Input devices

Devices through which data enters

32
New cards

Storage devices

Used to store data permnanety(such as USBs)

33
New cards

Central processing unit(CPU)

performs instructions on programs

  • ALU

  • CU

  • Registers

34
New cards

Output devices

Devices through which data leaves the computer

35
New cards

ALU(arighmetci logic unit)

Performs arithmetic and logical operations

36
New cards

Memory types

  • RAM (random access memory)

  • ROM

37
New cards

RAM

Temporary storage used by CPU to store data for active tasks

38
New cards

ROM

Permanent memory; store firmware and essential startup programs for a computer

39
New cards

Computer system block diagram

<p></p>
40
New cards

Types of computers

  • Super computers

  • Mainframes

  • Personal computers

  • Distributed computers(network of computers)

  • Embededd systems: computers integrated into other devices

    • Mobile devices: portable computing devices like smartphones

41
New cards

Supercomputers

Extremely powerful systems used for complex computation (e.g. weather forecasting, scientific research)

42
New cards

Mainframes

Large computers used by large organizations for bulk data processing

43
New cards

Personal computers (PCs)

Desktop or laptop computers used by individuals and small businesses

44
New cards

Distributed systems

Multiple computers or servers that work together to solve a problem, often connected via a network(e.g. cloud computing, server farms)

45
New cards

Embedded systems

computers integrated into other devices (e.g. smartphones)

46
New cards

Mobile devices

Portable computing devices

  • smartphones

47
New cards

Operating system

  • Manages computer hardware and software and provides services for computer programs

    Functions

    • process management

    • memory management

    • security and user management

    • Windows, macOS, Linux, Android, iOS

48
New cards

Process management

manages running processes and multitasking

49
New cards

Memory management

Allocates and manages computer memory

50
New cards

File System Management

Organizes files and directories on storage devices

51
New cards

Security and user management

Ensures privacy and data security and allows for user authentication

52
New cards

Software categories

  • System software

  • Application software

  • Utility software

53
New cards

System software

Software that runs and manages the computer hardware (e.g. operating systems)

54
New cards

Applicatiohn software

Programs that perform specific tasks for users

55
New cards

Utility software

Tools that help maintain and optimize computer performance (e.g. antivirus software, disk cleaners)

56
New cards

Electrical vs Electronic

use high voltages vs control information

57
New cards

Generations of computing systems

different stages, advance by hardware+software

58
New cards

Vacuum tube

Electronic device that controls the flow of electrons in a vacuum; used as switch, amplifier, and display screen in many older model radios, televisions, computers

59
New cards

Transistor

Electronic component that can be used as amplified or switch; used to control the flow of electricity in radios, televisions, computers, etc.

60
New cards

Integrated circuit(IC)

Small electronic circuit printed on cip (made of silicon),; has its own circuit elements(transisitors, diodes, resistors)

61
New cards

Microprocessor

Electronic component held on integrated circuit that contains a computer’s central processing unit (CPU) and other associated circuits

62
New cards

Central processing unit

Brain or engine of a computer; where most of the processing takes place

63
New cards

Magnetic drum

Cylinder coated with magnetic material, on which data and programs can be stored

64
New cards

Magnetic core

Use arrays of small rings of magnetized material called cores to store information

65
New cards

Machine language

Low level programming language, consists of binary digits that the computer can read and understand

66
New cards

Assembly language

Human readable representation of machine instructions; human friendly version of machine language

67
New cards

Memory

physical device that is sued to store data, information and program in a computer

68
New cards

Artificial intellgience

Area of computer science that deals with the simulation and creation of intelligent machines or intelligence behavior in computers (think, learn, react, and work like humans)

69
New cards

First generation

  • Year: 1940-1950)

  • Main electronic component- vacuum tube

  • Main memory- magnetic drums and magnetic tapes

  • Programming language: machine language

  • Power: consume a lot of electricity and generate a lot of heat

  • Speed and size- super slow and super big

  • Input/output devices: punched cards and paper tape

  • Examples: ENIAC, UNIVACI, IBM 650, IBM 701, etc.

  • Quantity- about 100 produced between 1942 and 1963

70
New cards

Second generation

  • Year: 1950s- 1960s)

  • Main electronic component- transistor

  • Memory- magnetic core and magnetic tape/disk

  • Programming language- assembly language

  • Power and size- low power consumption, generates less heat, smaller

  • Speed: improvement

  • Input/output: punched cars and magnetic tape

  • Examples: IBM 1401, IBM 7090, IBM 7094, UNIVAC 1107

71
New cards

Third generation

  • Year: 1960- 1970

  • Main electronic component: integrated circuits (ICs)

  • Memory: large magnetic core, magnetific tape/disk

  • Programming language: high level language (FORTRAN, BASIC, Pascal, COBOL, C, etc.)

  • Size: smaller, cheaper, more efficient (called mini-computers)

  • Speed: better speed and reliability

  • Input/ouput: magnetic tape, keyboard, monitor, printer, etc

  • Examples: IBM 360, IBM 370, PDP-11, UNIVAC 1108, etc.

72
New cards

Fourth generation

  • Speed: improvement of speed, accuracy, and reliability

  • Input/output: keyboard, pointing devices, optical scanning, monitor, printer

  • Network: group of two or more computer system linked together

  • Examples: IBM PC, STAR 1000, APPLE II, Apple Macintosh, etc.

73
New cards

Fifth generation

  • Year: present- future

  • Main electronic component: AI, ULSI technology, parallel processing method

    • ULSI: millions of transistors on a single microchip

    • Parallel processing method: two or more microprocessors to run tasks simoltaneously

  • Language; understand natural language (such as AI)

  • Power: consume less power and generate less heat

  • Speed: remarkable improvement of speed, accuracy, and reliability

  • Side: portable and small

  • Input/output: keyboard, monitor, mouse, trackpad (or touchpad), touch screen, pen, speech input(recognize voice/speech), light scanner, printer, etc.

  • Example: desktops, laptops, tablets, smartphones

  • Mobile phonesss!!

74
New cards

Summary of generations

knowt flashcard image
75
New cards

Hardware developments

  • Development speed: slower, hardware requires extensive R&D, testing, and manufacturing

  • Costs: high upfront costs (fabrication, material, testing)

  • Complexity: high complexity due to physical constraints(materials, heat, power)

  • Impact: tangible improvements (e.g. better performance, efficiency)

  • Adaptability: less adaptable: hardware must be replaced or upgraded

  • Dependence: software depends on hardware to run effectively

  • Challenges: upfront investment, longer development cycles, physics + material science + manufacturing that pose boundaries in development

76
New cards

Software innovation

  • Development speed: faster software can be rapidly prototyped, tested, and deployed

  • Costs: lower initial costs but more expensive later

  • Complexity: high complexity due to system integration, scalability, and security

  • Impact: intangible improvements

  • Adaptability: highly adaptable, software can be easily updated and changed

  • Dependence: Hardware depends on software to make use of its full potential

  • Challenges: constant updates, bug fixes, adapting to new hardware, and user demands

77
New cards

Future in computing

Artificial intellignece; cloud computing; big data; quantum computing

78
New cards

Cloud computing

Storing + accessing data and applications over the internet, rather than on local storage

79
New cards

Big data

Analyzing large datasets to exract valuable insights

80
New cards

Quantum coputing

New form of computing based on quantum mechanics, which could significantly increase computational power

81
New cards

internet of things

Network of interconnected devices that can collect and exchange data

82
New cards

Cloud computing

Machines that simulate human intelligence, such as speech recognition, decision making, and problem solving