Let’s continue our exploration of the numbering system and process for representing real numbers, i.e. floating point and fractional numbers. Your key takeaways from this episode are: Computers use scientific notation for floating point The size of the machine determines the precision The binary pattern is a group of bits for the sign, exponent, and mantissa (or significand) Repeating patterns are rounded Approximation can occur Study Notes Be aware: Floating points can be approximations There are inherit problems with floating point within computers. You need to be aware of these and compensate for them in your system. Case in point, depending […]
Labs
Labs are hands-on coding projects that you build along with Tonya as she explains the code, concepts, and thought processes behind it. You can use the labs to further your code knowledge or to use right in your projects. Each lab ties into the Docx to ensure you have the information you need.
Each lab is designed to further your understanding and mastery of code. You learn more about how to think about its construction, quality, maintainability, programmatic and logical thought, and problem-solving. While you may be building a specific thing, Tonya presents the why of it to make it adaptable far beyond that specific implementation, thereby giving you the means to make it your own, in any context.
Real Number Data Representation – Part 1
We need a numbering system and process to represent real numbers, i.e. those floating point and fractional numbers. In this episode, you will learn about this technique. Your key takeaways from this episode are: Computers use scientific notation for floating point The size of the machine determines the precision The binary pattern is a group of bits for the sign, exponent, and mantissa (or significand) Repeating patterns are rounded Approximation can occur Study Notes Non-integer numbers come in many formats. 5.4920873E+3 1000085.3333333 -12001 * 10-2 Etc… What makes up a non-integer? A Fractional. What do we call these non-integer numbers? […]
Negative Integer Data Representation – Part 2
In part 2 of representing negative integers in data, we ask the question: What if we could represent the actual negative values by mapping a set of the bit range? In this episode, you’ll walk through the process. Your key takeaways are: Split the range of available binary bit patterns in half The lower half are for positive integers The upper half are for negative integers To compute the negative integers, you flip the positive binary pattern and then add one Overflow happens when numbers are outside of the range Study Notes Split the Range in Half How could we […]
Negative Integer Data Representation – Part 1
In this episode, you will learn how negative integer numbers are represented in data. Study Notes Think about this for a second. How do you represent a negative number in binary? What makes a positive number different than a negative one? There’s a problem here… All of the bits are taken They mean positive numbers How do you represent the integers on the other side of zero? It seems as though adding a sign bit would solve the problem. If the sign is one, then it’s a negative number; otherwise, it’s positive. Let’s say the left most bit is the sign. Then […]
Binary Addition
In this episode, you need to do a refresher course on how to add binary numbers together. You will need to know the addition process for the remainder of this course. Study Notes Steps to add Base-10 numbers Remember back in grade school when you were taught how to add decimal numbers together using the positional notation? For example, to add 21 + 19 together, you do the following: Add the ones column first, e.g. 1 + 9 = 10 Then you carry the 1, which is in the tens column, while leaving 0, as it represents no ones Next […]
The Age of 16 Bit and Hexadecimal
Let’s talk about the age of 16-bit and new numbering system. We need to compute larger numbers. Working in binary and octal is mind-numbing. Bam, welcome the hexadecimal (or hex) notation, which you use every day for CSS color codes. Your key takeaways in this episode are: Hexadecimal (hex) more condensed notation Allows up 16 digits: 0-9 + A-F One hex notation is the same as 4-bit groupings in binary Useful for larger numbers Color codes use hex Study Notes Remember: Larger numbers = more power The process of converting binary to decimal takes a few steps. It is more […]
Improving Binary Representation
In this episode, you are going to learn about how to improve the binary representation. Computer scientists and mathematicians found a way to look at the number pattern and intuitively read it to know what it represents. The key takeaways from this episode are: Octal gives us a more efficient representation of 1s and 0s Base-8 8 digits 0-7 Breaks binary into groups of three bits starting from LSB Study Notes Converting from binary to decimal? There has to be an easier way. The process of converting binary to decimal takes a few steps. It is more difficult to look […]
Lab Introduction
This episode introduces you to the basic of digitizing data. Remember that computers do not understand your code directly. No, they understand 1s and 0s. Computers do not understand this: Wait a second! How do computers understand code? Software understands how to convert code into computer machine code: Computers only understand 1s and 0s.
Basics of Digitizing Data
We communicate with numbers, images, and text. How does the computer represent this information? In this lab, you will learn about the basics of digitizing data for the computer.
Big Picture of the Computing Machine
As part of the Understanding How the Computer Works series, this lab provides you with a big picture of the computing machine. Before you dig into how data and code is represented in the computer, you need to understand a big picture view of the computer. You’ll learn about how code is translated into the 1s and 0s that the digital circuits need as well as why computers need 1s and 0s.