0% found this document useful (0 votes)
233 views48 pages

DLBCSICS01 Session1

Max Mustermann will be giving an introductory lecture on computer science. The 10-part lecture will cover basic concepts like data processing, information representation, algorithms and data structures. It will also cover topics like propositional logic, computer hardware, networks, software, and the discipline of computer science itself. The first unit will focus on basic concepts of data processing. It will define key terms like data, information, and messages. It will also explain the differences between hardware, software, and firmware and provide a historical overview of computers and data processing.

Uploaded by

t
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
233 views48 pages

DLBCSICS01 Session1

Max Mustermann will be giving an introductory lecture on computer science. The 10-part lecture will cover basic concepts like data processing, information representation, algorithms and data structures. It will also cover topics like propositional logic, computer hardware, networks, software, and the discipline of computer science itself. The first unit will focus on basic concepts of data processing. It will define key terms like data, information, and messages. It will also explain the differences between hardware, software, and firmware and provide a historical overview of computers and data processing.

Uploaded by

t
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 48

LECTURER: MAX MUSTERMANN

INTRODUCTION TO COMPUTER SCIENCE


INTRODUCTORY ROUND

Who are you?


- Name
- Employer
- Position/responsibilities
- Fun Fact
- Previous knowledge? Expectations?
INTRODUCTION TO COMPUTER SCIENCE
TOPIC OUTLINE

Basic Concepts of Data Processing 1

Information Representation 2

Algorithms and Data Structures 3

Propositional Logic, Boolean Algebra and Circuit Design 4

Hardware and Computer Architectures 5


INTRODUCTION TO COMPUTER SCIENCE
TOPIC OUTLINE

Networks and the Internet 6

Software 7

Computer Science as a Discipline 8

10
UNIT 1

BASIC CONCEPTS OF DATA PROCESSING


STUDY GOALS

- Understand the concepts of data, information, and


computer messaging.
- Learn about the difference between hardware, firmware,
and software.
- Know the basics of binary and data interpretation.
- Understand what syntax and semantics refer to in
programming languages.
- Know the history of computers and data processing.
EXPLAIN SIMPLY

1. What is the syntax of a language?


2. What is the concept of a message?
3. Why do computers need an operating system?
BASIC CONCEPTS OF DATA PROCESSING

Data, Software,
Languages, Historical
information, firmware,
syntax, and overview of
and and
semantics computers
messages hardware
WHAT IS THE DIFFERENCE BETWEEN DATA AND INFORMATION?

- Data in its most basic, standalone digital format does not provide
information.

- When combined with other data or manipulated in some way, the


organization derives value from it.

- Information is data with a context.

Ü Information then leads to knowledge. i


DIFFERENT TYPES OF DATA

Data processed by software solutions can be:

human- machine-
generated generated

Although it is ultimately the responsibility of machines to generate the


processed results.
Human-generated data is the result of human interaction with systems, such
as online services and digital devices.
ANALOG VS. DIGITAL DATA

- Analog data is temporally continuous. In analog Analog Signal

Amplitude
technology, raw data is transformed into electric
pulses of varying amplitude.
- Digital data is temporally discrete. In digital
technology, analog data is transformed into binary
representations. t

- The conversion of analog data to digital data is called


digitization.* A/D Converter

- Analog signals are sampled rapidly over time, storing

Value
the value of the amplitude a binary number.

* Digitalization ≠ Digitization
Digitalization which refers to the operational application of digital technologies and
t
digital transformation, the strategic approach. Digital Signal
MESSAGES VS. EVENTS VS. COMMANDS

Communication is key for a distributed environment and software services.

One of the most popular ways of communication is messaging.

There are 3 basic concepts:


- messages
- events
- commands
MESSAGES

– Message brokers deal with messages.


– Messages are the basic unit of communication and can literally be
anything: an ID, a string, an object, a command, an event or whatever.
– Messages have no special intent.

MESSAGE

or
ID A string An object A command An event
whatever….
EVENTS

- An event is a message which informs various listeners about


something which has happened.
- It is sent by a producer that doesn’t know and doesn’t care about the
consumers of the event. Example:
A typical example would be an online shop.
CONSUMER I Whenever an order is placed, the shop would
te n publish an OrderSubmittedEvent to inform
lis
other systems (e.g., the logistics system)
PRODUCER EVENT CONSUMER II about the new order.
l i st However, the shop doesn’t care – or even
send en
know – about the consumers.
CONSUMER …
If the logistics system isn’t interested in the
events anymore, it just unsubscribes from the
list of consumers.
COMMANDS

- A command on the order side is much more specific.


- It’s a one-to-one connection between a producer (who sends the
command) and a consumer (who takes and executes the command).

Example:
In case of an online shop, one such
PRODUCER COMMAND CONSUMER I
example could be the
send listen
BillCustomerCommand.
After an order is placed, the online
shop sends this command to the
billing system to trigger the invoice.
THE INTENT

- The difference between messages, events and commands lies in their


intent.

- While messages have no special intent at all, events inform about


something which has happened and is already completed (in the past).

- Commands trigger something which should happen (in the future).


BASIC CONCEPTS OF DATA PROCESSING

Data, Software,
Languages, Historical
information, firmware,
syntax, and overview of
and and
semantics computers
messages hardware
SOFTWARE

- Instructions that tell a computer what to do.


- Software comprises the entire set of programs,
procedures and routines associated with the
operation of a computer system.
- The term was coined to differentiate these
instructions from hardware—i.e., the physical
components of a computer system.
- A set of instructions that directs a computer’s
hardware to perform a task is called a program or
software program.

Photo: Markus Spiske on Unsplash


HARDWARE

- computer machinery and equipment, including


memory, cabling, power supply, peripheral devices, and
circuit boards
- Computer operation requires hardware and software.
- Hardware design specifies a computer’s capability;
software instructs the computer on what to do.
- The advent of microprocessors in the late 1970s led to
much smaller hardware assemblies and accelerated
proliferation of computers.
- Modern personal computers are as powerful as early
mainframes, while mainframes are smaller and have
vastly more computing power than early models.

Photo: Niclas Illg on Unsplash


FIRMWARE

- Firmware is a specific class of computer software


that provides the low-level control for a device's
specific hardware.
- Firmware can either provide a standardized
operating environment for more complex device
software (allowing more hardware-independence), or,
for less complex devices, act as the device's complete
operating system, performing all control, monitoring
and data manipulation functions.
- Typical examples of devices containing firmware are
embedded systems, consumer appliances, computers,
computer peripherals, and others.
- Almost all electronic devices beyond the simplest
contain some firmware.
Photo: Denny Müller on Unsplash
GETTING IT STARTED (BOOTSTRAPPING)

Bootstrap: Program in ROM (example of firmware)


- run by the CPU when power is turned on
- transfers operating system from mass storage to main memory
- executes jump to operating system
MAIN MEMORY MAIN MEMORY

Bootstrap DISK STORAGE Bootstrap DISK STORAGE


ROM program
ROM program

Volatile Volatile Operating


memory memory system
Operating Operating
system system
Step 1: Machine starts by executing the bootstrap Step 2: Bootstrap program directs the transfer of
program already in memory . Operating system is the operating system into main memory and then
stored in mass storage. transfers control to it

Source of the text: Brookshea, 2011, p. 121.


BOOT UP PROCESS

When a computer
is turned on, the
microprocessor
has no idea what The whole process
to do next. is hidden because
The instruction This process is
BIOS provides the only thing
As there is nothing typically located at known as booting,
those instructions, displayed by the
at all in the memory location or booting up, monitor is the logo
memory to and it is stored in a FFFF0h, or right at which is short for of the machine
execute, it tries to BIOS ROM. the end of the bootstrapping. manufacturer or
execute its first system memory.
the logo of the
instruction and it BIOS company.
has to get the
instruction from
somewhere.
FUNCTIONS OF OPERATING SYSTEMS

Oversee
operation
of
computer
Store and
retrieve
files

Schedule
programs
Coordinate for
the execution
execution
of
programs
BASIC CONCEPTS OF DATA PROCESSING

Data, Software,
Languages, Historical
information, firmware,
syntax, and overview of
and and
semantics computers
messages hardware
FORMAL DEFINITION OF PROGRAMMING LANGUAGES

SYNTAX SEMANTICS
The semantics of a programming
language are usually informally
The syntax of a programming defined by human languages. It can
language is usually formally defined be partially defined in a formal
by context-free grammars. language using operational
semantics, denotational semantics,
or axiomatic semantics.
SYNTAX

An if-statement consists of the word “if” followed by an expression inside


parentheses, followed by a statement, followed by an optional else part
consisting of the word “else” and another statement.

if (expression) statement else statement

Picture: Scratch is a project of the Scratch Foundation, in collaboration with the Lifelong Kindergarten Group at the MIT Media Lab. It is available for free at https://scratch.mit.edu
SEMANTICS

An if-statement is executed by

First evaluating its expression, which must have arithmetic or pointer


type, including all side effects, and

If it compares unequal to 0, the statement following the expression is


executed.

If there is an else part, and the expression is 0, the statement following


the “else” is executed.
BASIC CONCEPTS OF DATA PROCESSING

Data, Software,
Languages, Historical
information, firmware,
syntax, and overview of
and and
semantics computers
messages hardware
ERAS OF COMPUTING

GRAPHICAL
BEHEMOTS - the dawn of the
- huge machines used graphical user
mostly by interface and digital
governments imagery
- 1940s to 1960s - 1980s to 2000s

BUSINESS PORTABLE
- computers used by - miniaturization of
individuals in computers; laptops,
business tablets,
- 1960s to 1980s smartphones
- 2000s until today
USER INTERFACE EVOLUTION MAP

1962 1978 1991 1997 2004 2012

1964 1983 1995 2003 2011

WEB 2.0
GRAPHICAL USER INTERFACES (GUI)

In 1981 Xerox introduced a pioneering product, Star, a workstation incorporating


many of PARC's innovations. Although not commercially successful, Star greatly
influenced future developments, for example at Apple, Microsoft and Sun Microsystems.

Apple Macintosh, 1984

Apple Lisa, 1983

Sun, 1988
Microsoft Windows 1.0, 1986

Xerox Smalltalk on Star

Pictures: Wikimedia Commons, CC-BY and Public Domain


STUDY GOALS REVIEW

- Understand the concepts of data, information, and


computer messaging.
- Learn about the difference between hardware, firmware,
and software.
- Know the basics of binary and data interpretation.
- Understand what syntax and semantics refer to in
programming languages.
- Know the history of computers and data processing.
Session 1

TRANSFER TASK
TRANSFER TASK

Joseph Weizenbaum
1966
- (1923–2008)
- was a German-American
computer scientist as well as a
science and society critic.
- Weizenbaum called himself a
dissident and heretic of
computer science.

Photo: https://www.masswerk.at/eliza/
TRANSFER TASK

Exploring the past

1. We use ELIZA
- Go to https://www.masswerk.at/eliza/
- Try it out
- Explain the idea of Eliza
- Briefly describe your experience

Photo: https://www.masswerk.at/eliza/
TRANSFER TASK
PRESENTATION OF THE RESULTS

Please present your


results.
The results will be
discussed in
plenary.
Session 1

TRANSFER TASK
TRANSFER TASK

2. Use a historic graphical user interface on an Apple McIntosh


Emulator
- Go to http://jamesfriend.com.au/pce-js/
- Try it out
- Draw a picture with the painting software installed on the computer
- Write a small text
- Create screenshots to document what you have done
- Briefly describe your experience
TRANSFER TASK
PRESENTATION OF THE RESULTS

Please present your


results.
The results will be
discussed in
plenary.
Session 1

TRANSFER TASK
TRANSFER TASK

3. Find out what the major differences between graphical user


interface (GUI) and command-line interface (CLI) are.

Have a look at the following aspects:


- Ease of use
- Multitasking
- Remote access
- Scripting
- Speed
- Control
TRANSFER TASK
PRESENTATION OF THE RESULTS

Please present your


results.
The results will be
discussed in
plenary.
LEARNING CONTROL

1. All digital data stored on the computer is saved as:


a) binary
b) analog
c) hexadecimal
d) decimal
LEARNING CONTROL

2. What is the “brain” of the computer, which controls


other hardware?
a) RAM
b) CPU
c) hard drive
d) motherboard
LEARNING CONTROL

3. Alan, a senior programmer, has written an


application to calculate the maximum amount of
inventory for warehouse number 1. Instead, it
perfectly calculates the average inventory for
warehouse 1. What kind of problem does Alan have?
a) variable
b) syntax
c) semantic
d) network
LEARNING CONTROL

4. Firmware is usually stored:


a) on a computer chip
b) on the hard drive
c) in system RAM
d) in VRAM
LEARNING CONTROL

5. Before flat screen monitors existed, computer users


viewed data on a:
a) CRT
b) “trak” table
c) magnetic medium
d) wall projector
LIST OF SOURCES

Brookshear, G. & Bylow, D. (2011). Computer science: An overview (11th ed.). Pearson.
Dale, N. & Lewis, J. (2020). Computer science illuminated (7th ed.). Jones & Bartlett Learning.
Downey, A. B. & Mayfield, C. (2020). Think Java: How to think like a computer scientist. O'Reilly.
Filho, W. F. (2018). Computer science distilled: Learn the art of solving computational problems. Code Energy LLC.
Petzold, C. (2000). Code: The hidden language of computer hardware and software. Microsoft Press.
Weizenbaum, J. (1966). ELIZA—a computer program for the study of natural language communication between man and machine. Communications of the ACM 9 (1), 36-45. https://doi.org/10.1145/365153.365168
Whitington, J. (2016). A machine made this book: Ten sketches of computer science. Coherent Press.

You might also like