Title: Finals Review
1Finals Review
2Announcements
- Exam is on Friday 12/15 at 320 pm in CL50
- Multiple Choice Questions
- Chapters 1-18
- 50 from Exam 1 and Exam 2, 50 new material
- Coding based as well as theory based
- Few challenging questions READ carefully!
- If you are unsure of an answer
- Eliminate those choices that dont look right
- Educated guess!
3A quick look at CS177 in a nutshell
4Chapter 1 Computer Basics
- What is a computer?
- Hardware components
- CPU, I/O devices, Memory
- Software components
- Operating System
- Internet and the Web
- Web Browser, Web Server, Web Address
5Chapter 2 HTML and Web Pages
- HTML basics tags
- html, head, title, body
- Hypertext and Multimedia
- Hyperlinks, Images
- Lists
- Ordered, Unordered
- Tables
- Borders, aligning images and text
6Chapter 3 Internet and the Web
- History of ARPANet
- Defense agency
- How does internet work?
- Packet switching, TCP/IP, Domain Names
- History of the web
- How does the web work?
- HTML
- Web protocol HTTP
7Chapter 4 Javascript Dynamic Web Pages
- What are dynamic web pages?
- Javascript script tags
- Javascript Variable Names
- 2hot4u vs. salary
- Interactive pages
- Prompts
- Alerts
8Chapter 5 Javascript Numbers and Expression
- Data Types and Operators
- Variables and Expressions
- Number Representation
- Evaluating Mixed Expressions
- 3 2 Hello 5Hello
- Hello 3 2 Hello32
- Predefined Javascript functions
- Math.random, Math.floor, Math.round, Math.power
etc.
9Chapter 6 The History of Computers
- Generation 0
- Mechanical Devices Electronic relays
- Generation 1
- Vacuum Tubes, Von Neumann Architecture
- Generation 2
- Transistors, High level programming
- Generation 3
- ICs, Large scale integration
- Generation 4
- VLSI, Object Oriented Programming
- Generation 5
- Parallel Processing and Networking
10Chapter 7 Abstraction and User-Defined Functions
- User Defined Functions
- Structure of Function
- Multiple functions in a page
- Return Statements
- Parameters
- Local variables
- A quick look at random.js library
11Chapter 8 Algorithms and Programming Languages
- What are Algorithms?
- Algorithm Analysis
- Big-Oh Notation e.g. O(logn) vs. O(n)
- Search Algorithm
- Sequential Search - O(n)
- Binary Search - O(logn)
- Conditions necessary?
- Machine language vs. High-level language
- Program Translation
- Interpreters Vs. Compilers
- C? Java? Javascript?
12Chapter 9 Event Driven Programming
- Initiating actions via
- Buttons and Forms
- ltinput type button value ClickMe onClick
a()/gt - On click execute some javascript code
- Input and Output via
- Text Boxes
- ltinput type text name box value
default/gt - Text Areas
- lttextarea name area rows4 cols40gt
lt/textareagt - Dynamic Images
- document.images.name_of_img_.src 1.gif
13Chapter 10 Computer Science as a Discipline
- Computer Science Themes
- Software
- Hardware
- Theory
- Subfields of Computer Science
- OS, Algo. Data Structures, Architecture etc.
- Public and Private key Encryption
- Stages of Software Life Cycle
14Chapter 11 Conditional Execution
- If else statements
- Evaluate a boolean test true, false
- Nested if else statements
- if (3 is a number)
- if (3 is odd) say odd!
- else if (3 is even) say even!
-
- Use of Counters
15Chapter 12 Data Representation
- Analog vs. Digital
- Binary Numbers
- 0101010001
- Representing Integers (32 bits)
- Representing Real Numbers
- IEEE single/double precision floating point
- Representing Character Strings (8 bit per char)
- ASCII e.g. f ?01100110
- Representing Images
- RGB
16Chapter 13 Conditional Repetition
- While loops !!!!!
- Counter driven loops
- c 1
- while (c lt 100)
-
- document.write(c )
- c c 3
- c c - 1
- if ( c 100)
- c 0
-
- Output?
- 1 3 5 7 99 1 3 5 7 . 99 1 3 5 7.Infinite
loop? - 1 3 5 7 99 ?
- What happens if I start with c 0 instead?
17Chapter 14 Inside the Computer The von
Neumann Architecture
- CPU subunits and data paths
- Arithmetic logic unit, registers, control unit
- Data path cycle
- CPU and Main Memory
- Transferring data to/from main memory
- Stored-Program Computer
- Programs are stored in memory
- Simulators for illustration
- Machine language vs. Assembly language
18Chapter 15 Javascript Strings
- String as an Object
- Properties and Methods
- String manipulations
- REMEMBER starting index 0 NOT 1!
- str.charAt(i) character at ith index!
- str.substring(i, j) i (inclusive), j
(exclusive) - str.search(/aeiou/) returns first index
- str.lowercase() returns a NEW lowercase string
- str.length - length of the string
- String concatenation
- word word.charAt(0) word.substring(1,
word.length)
19Chapter 16 Inside the computer Transistors
and Integrated Circuits
- Electricity
- Good conductors, Bad conductors
- Gates
- AND, NOT, OR
- Binary logic
- 1 AND 1 1 1 OR 0 1 NOT 1 0
- PMOS/NMOS
- What are Half adders used for?
- Add 2 bits and provide a sum and a carry
- Full Adders?
- Add 3 bits and provides a sum and a carry
- N-bit Full Adders?
- Add two N bit numbers together and provides a sum
- What are Flip flops?
- Integrated circuits ?
20Chapter 17 Javascript Arrays
- Array as Objects
- Accessing and Assigning Items in an Array
- sum 0 nums 5,0,4,0,1,0,6
- while( i lt nums.length)
- sum sum numsi // Accessing
- if (i2 0)
- numsi 0 // Assigning
- i
-
- What is in sum and nums?
- Notable properties of JavaScript Arrays
- Capability to hold items of different types
- Ability to automatically increase the array size
- Split method for strings
- a str W_X_Y_Z a str.split(_)
- a0 is W, a3 Z
21Chapter 18 Computers Society
- Positive Impact of Technology
- Computers and Everyday Programs
- Internet and the Web
- Information sources
- Communication media
- Web Commerce
- Privacy and Security
- Digital Divide
22Questions?
- Thank you for a wonderful semester!
- Good luck with finals!