Module 2

Data Representation / Scratch Application 1

Outline Chapter 2

Chapter 2 Binary Values and Number Systems

2.1 Numbers and Computing

2.2 Positional Notation

Binary, Octal, and Hexadecimal

Arithmetic in Other Bases

Power-of-2 Number Systems

Converting from Base 10 to Other Bases

Binary Values and Computers

Ethical Issues: The FISA Court 49


Related FGCU Courses

Course Descriptions

MAD 3107 Discrete Mathematics - 3 credits(s)

Introduction to concepts of discrete mathematics, as as used by computer scientists. Topics include symbolic logic and Boolean algebra, propositional and predicate calculus, sets, functions, and relations, enumeration and counting principles, introduction to graphs, trees, spanning trees, shortest path and matching algorithms, finite state automata, Turing machines.

Outline Chapter 3

Chapter 3 Data Representation

3.1 Data and Computers

Analog and Digital Data

Binary Representations

3.2 Representing Numeric Data

Representing Negative Values

Representing Real Numbers

3.3 Representing Text

The ASCII Character Set

The Unicode Character Set

Text Compression

3.4 Representing Audio Data

Audio Formats

The MP3 Audio Format

3.5 Representing Images and Graphics

Representing Color

Digitized Images and Graphics

Vector Representation of Graphics

3.6 Representing Video

Video Codecs

Ethical Issues: The Fallout from Snowden’s Revelations


Lesson

Day 1 (chapter 2)

  • Lab review

  • Chapter questions review

  • DS

    • Sets, Relations, and Functions

      • Basic Concepts of Set Theory, Functions and Relations

        • Set - a collection of objects which are called the members or elements of that set

        • Relations - links existing between objects, like ‘is a subset of’

        • Functions - may be thought of as a “process” or as a correspondence

    • Logic

      • Truth table A table showing all possible input values and the associated output values

      • Introduction (more on this in chapter 4)

  • Algorithm

  • Number systems

  • Computers interpret underlying patterns of 1s and 0s

  • Binary

  • Scratch Binary Bulbs

  • 8 bit game

  • Bring headphones to next class


Day 2 (chapter 3)


Review

Scratch Tutorial

  • Objects

    • Properties

  • Coordinates

    • Move along axis

  • Loops

    • Iteration

    • For (count) vs while (condition) loop

    • Event controlled: forever if

  • Operators (green)

    • Math, comparisons, ...

  • Variables

    • in Data section (orange)


Project Preview

Scratch Application 1

  • Conditions

    • Nested

    • Argument

  • Methods

    • call with argument to header with parameter

    • broadcast to

  • Scratch Help

    • Video Tutorials

      • Paint Editor Tips

  • Make a custom image for Scratch project


ACM KA: Discrete Structures (DS)

Discrete structures are foundational material for computer science. By foundational we mean that relatively few computer scientists will be working primarily on discrete structures, but that many other areas of computer science require the ability to work with concepts from discrete structures. Discrete structures include important material from such areas as set theory, logic, graph theory, and probability theory. The material in discrete structures is pervasive in the areas of data structures and algorithms but appears elsewhere in computer science as well. For example, an ability to create and understand a proof—either a formal symbolic proof or a less formal but still mathematically rigorous argument—is important in virtually every area of computer science, including (to name just a few) formal specification, verification, databases, and cryptography. Graph theory concepts are used in networks, operating systems, and compilers. Set theory concepts are used in software engineering and in databases. Probability theory is used in intelligent systems, networking, and a number of computing applications.

KA Topics:

  • Sets, Relations, and Functions

    • Sets

      • Venn diagrams

      • Union, intersection, complement

      • Cartesian product

      • Power sets

      • Cardinality of finite sets

    • Relations

      • Reflexivity, symmetry, transitivity

      • Equivalence relations, partial orders

    • Functions

      • Surjections, injections, bijections

      • Inverses

      • Composition

  • Basic Logic

    • Propositional logic (cross-reference: Propositional logic is also reviewed in IS/Knowledge Based Reasoning)

    • Logical connectives

    • Truth tables

    • Normal forms (conjunctive and disjunctive)

    • Validity of well-formed formula

    • Propositional inference rules (concepts of modus ponens and modus tollens)

    • Predicate logic

      • Universal and existential quantification

    • Limitations of propositional and predicate logic (e.g., expressiveness issues)


KA Learning Outcomes:

Sets, Relations, and Functions

  1. Explain with examples the basic terminology of functions, relations, and sets. [Familiarity]

  2. Perform the operations associated with sets, functions, and relations. [Usage]

  3. Relate practical examples to the appropriate set, function, or relation model, and interpret the associated operations and terminology in context. [Assessment]

Basic Logic

  1. Convert logical statements from informal language to propositional and predicate logic expressions. [Usage]

  2. Apply formal methods of symbolic propositional and predicate logic, such as calculating validity of formulae and computing normal forms. [Usage]

  3. Use the rules of inference to construct proofs in propositional and predicate logic. [Usage]

  4. Describe how symbolic logic can be used to model real-life situations or applications, including those arising in computing contexts such as software analysis (e.g., program correctness), database queries, and algorithms. [Usage]

  5. Apply formal logic proofs and/or informal, but rigorous, logical reasoning to real problems, such as predicting the behavior of software or solving problems such as puzzles. [Usage]

  6. Describe the strengths and limitations of propositional and predicate logic. [Familiarity]