Lesson Summary

Summary

A bit is a single unit of information. Bits are the fundamental building blocks of digital computing.  There are many different ways to represent a single bit physically, and collections of bits can be combined to represent everything from numbers, to electronic books, to control programs for interstellar probes. In this lesson, students will learn how bits are stored and how they can be used to represent information. Students will further explore how numbers can be represented in binary form, how to convert numbers between these different forms, and how they are used by different applications.

Outcomes

  • Understand the abstraction of a "bit" and how bits can be used to represent different kinds of information.
  • Be able to convert numbers between decimal, binary, and (optionally) hexadecimal forms.
  • Be able to identify formats used to represent numbers, pictures, audio, and video data.
  • Understand how these forms of bit representation are used in modern technology.

Overview

Session One

  1. Getting Started (5 min) - Jacquard loom
  2. Guided Activity (10 min) - Light bulb abstraction of bits
  3. Interactive Teacher Presentation (25 min) - "It's Just Bits"
  4. Wrap Up (10 min) - Binary conversions worksheet

Session Two 

  1. Getting Started (5 min) - Journal and completing worksheet
  2. Guided Activity (20 min) - Conversions (two options: Cisco Binary Game or hexadecimal conversions)
  3. Real-World Connections (20 min)
  4. Wrap-up (5 min) - Journal

Optional Activities

  • Homework - Generate conversion worksheets using http://www.worksheetworks.com/math/numbers/systems.html 
  • (30 min) Web-quest to explore different ways of physically representing bits.
  • Four research activities on:
    • Charles Babbage and Ada Lovelace
    • Hollerith's Tabulation Machine
    • Qbits
    • Weaving with the Jacquard Loom

Source

Parts of this lesson were adapted from code.org.

Learning Objectives

CSP Objectives

Big Idea - Abstraction
  • EU 2.1 - A variety of abstractions built on binary sequences can be used to represent all digital data.
    • LO 2.1.1 - Describe the variety of abstractions used to represent data. [P3]
    • LO 2.1.2 - Explain how binary sequences are used to represent digital data. [P5]
Big Idea - Algorithms
  • EU 4.1 - Algorithms are precise sequences of instructions for processes that can be executed by a computer and are implemented using programming languages.
    • LO 4.1.1 - Develop an algorithm for implementation in a program. [P2]

Math Common Core Practice:

  • MP1: Make sense of problems and persevere in solving them.
  • MP2: Reason abstractly and quantitatively.
  • MP4: Model with mathematics.
  • MP8: Look for and express regularity in repeated reasoning.

Common Core Math:

  • N-Q.1-3: Reason quantitatively and use units to solve problems

Common Core ELA:

  • RST 12.1 - Cite specific textual evidence to support analysis of science and technical texts, attending to important distinctions the author makes and to any gaps or inconsistencies in the account.
  • RST 12.2 - Determine central ideas and conclusions in the text
  • RST 12.3 - Precisely follow a complex multistep procedure
  • RST 12.4 - Determine the meaning of symbols, key terms, and other domain-specific words and phrases
  • RST 12.7 - Integrate and evaluate multiple sources of information presented in diverse formats and media
  • RST 12.10 - Read and comprehend science/technical texts
  • WHST 12.1 - Write arguments on discipline specific content
  • WHST 12.2 - Write informative/explanatory texts, including the narration of historical events, scientific procedures/experiments, or technical processes
  • WHST 12.8 - Gather relevant information from multiple authoritative print and digital sources, using advanced searches effectively; assess the strengths and limitations of each source
  • WHST 12.9 - Draw evidence from informational texts to support analysis, reflection, and research

NGSS Practices:

  • 5. Using mathematics and computational thinking

Key Concepts

The students will...

  • Understand the abstraction of a "bit" and how bits can be used to represent different kinds of information.
  • Be able to convert numbers between decimal, binary, and (optionally) hexadecimal forms.
  • Be able to identify formats used to represent numbers, pictures, audio, and video data.
  • Understand how these forms of bit representation are used in modern technology.

Essential Questions

  • How can computing and the use of computational tools foster creative expression?
  • How are vastly different kinds of data, physical phenomena, and mathematical concepts represented on a computer?
  • How can computational models and simulations help generate new understanding and knowledge?
  • How are number values converted across decimal, binary, and hexadecimal representations?
  • How are digital colors represented with hexadecimal codes?
  • What is the algorithm to convert a number to or from hexadecimal with another number system?

Teacher Resources

Student computer usage for this lesson is: required

For the Student

For the Teacher

In the Lesson Resources folder:

  • Presentation: JustBits
  • BinaryConversionWorksheet
    • Give these directions to students during the lesson
  • AdditionalResource_bin2dec
  • AdditionalResource_BinaryWorksheet
  • AdditionalResource_binmagic
  • For Lecture:
    • HexBinaryExamples
    • HexDecimalExamples
  • Hexadecimal worksheets:
    • Worksheet: HexConversionsWorksheet
    • Homework: HexConversionsHomework
  • Answer Keys:
    • HexConversionsWorksheetKEY
    • HexConversionsHomeworkKEY

Available on the Web for Teachers:

Lesson Plan

Session One

Getting Started (5 min)

Jacquard loom: early computer programming

The teacher will introduce the "Jacquard Loom," an early machine that made use of punch cards to make complicated textiles.

 

Guided Activity (10 min)

Represent Values as a Light Switch

  1. Instruct students to answer these questions with an elbow partner:
    • Using a single light switch, how can you represent the value 0? 1?
    • If you have two light switches (connected to two different lights in the same room), how many values can you represent? Describe how you would represent each value (numbers, symbols, etc.).
  2. Invite students to share their ideas with the class.
  3. Engage the entire class with the following questions. Show the various combinations.
    • If I add a third switch, how many values can I represent?
    • How many values can I represent with four switches? Do you notice a pattern?

Teaching Tip: Guiding the students toward understanding that the number of switches determines how many numbers can be represented. The pattern is 1 switch = 2 (or 21) numbers, 2 switches = 4 (or 22), 3 switches = 8 (or 23), etc.

Interactive Teacher Presentation (25 min)

Use the "JustBits" presentation in the lesson folder to explore different ways to represent bits, and different ways in which bits can be used to store different kinds of information.

General Presenting Tips:

  • Throughout the presentation, the slides have questions on them that the students should be thinking about. Try to ensure that students are actively considering these questions and that they understand how to answer them before moving on.  
  • You may wish to call on students randomly, have everyone write down an answer, or have students suggest different answers that you write on the board and then have the class work on.  (Note: Incorrect answers are a great opportunity to diagnose and remedy conceptual errors. Remember, there are no "bad answers," just ones that reveal different levels of understanding.)

Presentation Guide:

  • As you go through the slides, discuss how the different uses of bits relates to the representation of bits. Eight bits can be interpreted in many ways:  as an unsigned integer from 0 to 255, as a signed integer from -127 to 128, as a single ASCII character, or as a red, green, or blue color value associated with a pixel in a screen display.
  • Emphasize to the students that a "bit" is just an abstraction. It refers to the value of a single piece of information stored in an "on/off", "zero/one", or "yes/no" format.  Similarly, any given interpretation a collection of bits as information is an abstraction that lets us move from "a bunch of bits" to "data and information."  
  • Slide 5 (Storing Bits): If you are planning to do the optional web quest to explore different bit representations, you could encourage students to think about different ways that bit could be stored, to get them thinking about that question.
  • Slide 11 (Conversions): This is a fairly quick introduction to binary/decimal conversions.  You may wish to spend some time at the board working through more examples.  Students will have an opportunity later in the class to use the "Cisco Binary Game" (or optionally paper worksheets) to practice binary/decimal conversion.
  • Slide 12 (Hexadecimal): If you are planning to have the students work on hexadecimal number conversions, you may wish to spend a bit of extra time on this slide to make sure they understand the concept more clearly.
  • Practice Problems, Slide 18: Give the students a few minutes to start working on the first problem, then lead the class in a brief discussion to make sure they’re approaching it correctly.
    • They should be multiplying the number of pixels (600 * 400 = 240,000) by the number of bytes (3 bytes in a pixel) by the number of bits in a bite (8 bits in a byte).
    • The total number of bits = (240,000 * 3 * 8) = 5,760,000 bits.
    • CD answer: 44,100 samples/second * 16 bits/sample = 705,600 bits/second.
    • One 3-minute song = 705,600 bits/second * 60 seconds/minute * 3 = 127,008,000 bits. 

 

Wrap Up (10 min)

Converting between decimal and binary

Use the "BinaryConversionWorksheet" in the lesson folder (from Code.org) to let students explore (individually or in pairs/small groups) how to build an algorithm for converting binary to decimal. As you progress through the activity, answer questions as they arise, or ask students to explain how they arrived at the answer to check for understanding.

Other extensions and activities that may be useful:

  • List the numbers from 0 to 15. Show students how they are represented in binary. Practice representing the grade level of various students in binary.
  • Show an algorithm for converting binary to decimal.
  • Show an algorithm for converting decimal to binary.
  • Convert an IP-V4 address from decimal to binary.

 

Session Two 

Getting Started (5 min)

Introduction

  • Have students describe what they know about representing numbers in binary code from the previous lesson (journal or discussion). (You may want to put a few conversion problems on the board as an entry check.)
  • Complete any remaining problems in the "Student Activity Guide: Converting Decimal to Binary."

Guided Activity: Conversions (20 min)

Option 1: 

  • Have the students play the Cisco Binary Game. http://forums.cisco.com/CertCom/game/binary_game_page.htm   You could also have the students teach a friend how to play the game, or create a quiz to determine if the friend has learned the basics of the binary number system.  To ensure progress, you could have the students show you and/or a partner when they have reached a particular level of the game.

Option 2:

  • If your students are comfortable with binary/decimal conversions, you could have them also master hexadecimal conversions.  (See "HexBinaryExample"s and "HexDecimalExamples" in the Lesson Resources folder for specific directions and suggested examples and/or the PowerPoint slides in the lesson folder.)
  • You may want to add additional examples or have students come to the board to show their work as you go through the different types of conversions.  (See the "HexConversionWorksheet" for distribution of those additional practice problems done during class.)

Extension: If you want to give your students more practice problems for in-class practice or homework, you can use the worksheet generator at http://www.worksheetworks.com/math/numbers/systems.html .

Real World Connections (20 min)

How are text, colors and images saved in hexadecimal format? Select some of the following to present and discuss with the class.

  1. How is text converted to hexadecimal format?
    http://cs10kcommunity.org/forum/lessons-share-encourage-active-learning
    Text to hexadecimal conversion tool - http://www.string-functions.com/hex-string.aspx

  2. Where are hexadecimal numbers used to represent digital data? Colors!
    Color Conversion Website: http://rapidtables.com/convert/color/index.htm

  3. How are picture files saved with hexadecimal format?
    http://cs10kcommunity.org/forum/lessons-share-encourage-active-learning

  4. Color Chart of 216 Web-safe Colors in hexadecimal form - http://www.w3schools.com/html/html_colors.asp

Wrap-Up (5 min)

Journal

Students should consider the following prompt, and record their thoughts in their journals:

  • Why is the abstract idea of an image stored in a jpeg file useful even though it hides important details about the actual file format?  When a user takes a digital photograph, they capture a digital image in their camera. Assuming the pictures are in the jpeg format, explain the difference between the abstract idea of an image and what is actually stored by the camera. 
  • Alternative question: Now that you have seen hexadecimal, what other number systems might be useful in computer science?  Give advantages and disadvantages of each. 

Optional Activities

Activity 1 - Collaborative Web-Quest (20 min)

Part 1 - Exploring Physical Bit Representations

  • Group students into small teams. Assign each team to research how computers represent bits with one of the following:
    • Punch cards
    • Magnetic polarity
    • Electrical voltage
    • Light intensity
  • Students can record their findings in a common file such as a Google doc, so that all students can edit and see the combined results of the research. Encourage students to create and/or add images that more completely illustrate what they have learned.

Teaching note: The research and writing activity in this lesson presents an opportunity to talk about copyright laws and emphasize that copied content must be credited to the rightful author or organization. 

Part 2 - Sharing the research

  • Allow students in each group to briefly share the most important details about what they learned about their assigned topics. If more than one group researched the same topic, they can report to the class as one team.
  • Encourage the class to ask questions.
  • Ask students if they know of any additional ways to represent bits.

Teaching note: Model writing skills through a variety of writing opportunities and prompts. Encourage students to write complete sentences that clearly communicate their ideas.

 

Activity 2 - Charles Babbage and Ada Lovelace

  • Have each student research the machines designed and programmed by Charles Babbage and Ada Lovelace. How did these machines represent bits? Investigate Babbage's and Lovelace's intellectual roles in creating their designs.
  • Communicate your learning in any effective format. Consider images, a collage, a recording, a screen play script, or a compare-and-contrast chart of the contributions to computer science of both Babbage and Lovelace.
  • Student should prepare to discuss their findings with the class.

Activity 3 - Hollerith's Tabulation Machine

  • Have each student research the machines that were designed by Herman Hollerith. How did these machines represent bits? What was the purpose of the machines? How did his device change history?
  • Predict how history might have been different if Hollerith hadn't created this device.
  • Student should prepare to discuss their findings with the class.

Activity 4 - Learn about Qbits

  • Have each student research "Qbit" and how it is used in quantum computing. Be particularly attentive to the vocabulary used to describe this technology. What implications does it have for the future of computing? Report your findings in any effective format.
  • Student should prepare to discuss their findings with the class.

Activity 5 - Weaving

  • Have each student create a small weaving project by following the directions shown in the video about the Jacquard loom:
    • http://www.instructables.com/id/How-to-Weave-on-a-Frame-Loom/step2/Warp/
  • Students respond to this prompt in their journals:
    • How did the invention of the Jacquard weaving loom change society? (consider technologically, economically, socially) Compare these changes to those brought by a recent innovation in computing technology. Be sure to speculate on the long-term impact and significance of these inventions.

Options for Differentiated Instruction

The Extension section above gives a variety of outside activities, some of which are appropriate for verbal and others for tactile learners.

  1. Instead of flashlights, the same task can be done with large cards that are black on one side and white on the other.
  2. If you have the space for a physical activity, have two (or more) teams (of 4 or 5 students each) line up.  
    • Each student represents a bit, with the student on one end being the bit in the 1's place, the next student representing the 2's place, the next the 4's place, etc.   
    • The students start in a standing position, which represents neither 1 nor 0. To represent a 1, the student's arms must be stretched straight overhead; to represent a 0, the student must squat down.  
    • You then call a number (one that can be represented using that many bits).  The two teams then race to get their team to represent that number. The first team to have it correct gets a point. They normalize (all stand with no arms up) and a new number is called.  
    • Ask them about patterns they find during the game.  (The 1's place student should notice that if the number is odd, their arms are up, but if the number is even, they are squatting.  The student representing the highest bit should notice that their arms are up if the number is larger than or equal to their place value.)

Note: If there are students in the class with physical limitations who are unable to stand, stretch, or squat, the game can be modified appropriately: 

  • Have the students play the game seated, with a card in their lap. (It represents neither a 1 nor a 0 when in their lap.) They will hold up a black side (to represent 0) or a white side (to represent 1) when a number is called.

 

Visual - Decimal, Binary, Octal, and Hexadecimal Number Systems Video -   http://whyu.org/whyUPlayer.php?currentchapter=3&currentbook=1&youtubeid=5sS7w-CMHkU

OR - https://www.youtube.com/watch?v=_oaBT-TndCs

Kinesthetic - Hexadecimal Drum Machine - http://www.mathsisfun.com/games/hex-drums.html 

Auditory - Hexadecimal File Music - https://www.youtube.com/watch?v=fyBf4Y2mVzs

Extension Activity 1. Students that have mastered the conversion techniques can peer-tutor students [one-on-one] that are having difficulty solving the conversions.

Extension Activity 2. Students can observe their computer’s network interface card (NIC) MAC address in hexadecimal, and convert the MAC address to binary and decimal. 

See algorithms of number system conversions:

Binary and Hexadecimal Easter eggs - http://searchengineland.com/googles-easter-eggs-for-binary-octal-hexadecimal-114800?utm_campaign=tweet&utm_source=socialflow&utm_medium=twitter

Alternative presentation for Gifted Students doing Decimal to Hexadecimal Conversion:

For decimal number x:

  1. Get the highest power of 16 that is less than the decimal number x:

  2. 16n < x, (n=1,2,3,...)

  3. The high hex digit is equal to the integer if the decimal number x divided by the highest power of 16 that is smaller than x:

  4. dn = int(x / 16n)

  5. Calculate the difference Δ of the number x and the hex digit dn times the power of 16, 16n:

  6. Δ = x - dn × 16n

  7. Repeat step #1 with the difference result until the result is 0.

Example

Convert x=603 to hex:

n=2, 162=256 < 603

n=3, 163=4096 > 603

So

= 2

d2 = int(603 / 162) = 2

Δ = 603 - 2×162 = 91

= 1, x = Δ = 91

d1 = int(91 / 161) = 5

Δ = 91 - 5×161 = 11

= 0, x = Δ = 11

d0 = int(11 / 160) = 1110 = B16

Δ = 11 - 11×160 = 0

(d2d1d0)  = 25B

Answer: x = 60310 = 25B16

 

Learn to Count in Binary and Hexadecimal - http://webelfin.com/webelfindesign/counthex.html

 

ADDITIONAL/ALTERNATE FORMATIVE ASSESSMENT MATERIAL or Class Activity if time permits - from unplugged.com

http://csunplugged.org/binary-numbers

Brainstorm reasons for storing and communicating secret messages.  Challenge students to think of both helpful and problematic reasons.  Students record at least two of each.

View steganography presentation.  Presentations are available on YouTube such as https://www.youtube.com/watch?v=o7SqlLXcK0Q.


Evidence of Learning

Formative Assessment

Assessment Questions:

  • Describe the pattern for even and odd numbers that you see in the binary number system. Speculate on why this pattern exists.
  • Why is the binary number system used in computers?
  • Why is the Jacquard loom important in the history of computing?
  • How are bits represented in punch cards?
  • How are bits represented magnetically?
  • How are bits represented with voltage?
  • How are bits represented with light?
  • Are students correctly answering questions in the Getting Started activity: Represent values with a light switch? On the Student Activity Guide: Converting Decimal to Binary?
  • Decimal, binary, and hexadecimal value conversions:
    • Write the step-by-step process needed for the following number conversions:
      • hexadecimal to binary
      • binary to hexadecimal
      • hexadecimal to decimal
      • decimal to hexadecimal
    • Assign a sequence of consecutive hexadecimal numbers - one to each person.  After they have converted them to decimal and to binary, have them compare to find patterns in their answers.
    • Distribute worksheets so all students practice conversions of all types.  See "BinaryConversionWorksheet" and "HexConversionWorksheet"

Summative Assessment

Journal check - questions presented as described in the lesson plan

ASSESSMENT QUESTIONS

  • Why is the binary number system used in computers?
  • Describe the pattern you observe for even and odd numbers in binary. Why do you think this pattern emerges?
  • What other patterns do you see in binary numbers?
  • Convert the ages of your family members to binary. How many bits are needed to express the ages?
  • Describe an algorithm for converting decimal numbers to binary.
  • Describe an algorithm for converting binary numbers to decimal.

Getting Started section: questions on converting between bases and describing the purpose of hexadecimal numbers.