The above chapter readings include specific knowledge for EKs marked in bold.
Work to include unmarked learning objectives in the CS Field Guide is currently in progress.
EK 2.1.1A Digital data is represented by abstractions at different levels.
EK 2.1.1B At the lowest level, all digital data are represented by bits.
EK 2.1.1C At a higher level, bits are grouped to represent abstractions, including but not limited to numbers, characters, and color.
EK 2.1.1D Number bases, including binary, decimal, and hexadecimal, are used to represent and investigate digital data.
EK 2.1.1E At one of the lowest levels of abstraction, digital data is represented in binary (base 2) using only combinations of the digits zero and one.
EK 2.1.1F Hexadecimal (base 16) is used to represent digital data because hexadecimal representation uses fewer digits than binary.
EK 2.1.1G Numbers can be converted from any base to any other base.
EK 2.1.2A A finite representation is used to model the infinite mathematical concept of a number.
EK 2.1.2B In many programming languages, the fixed number of bits used to represent characters or integers limits the range of integer values and mathematical operations; this limitation can result in over flow or other errors.
EK 2.1.2C In many programming languages, the fixed number of bits used to represent real numbers (as floating-point numbers) limits the range of floating-point values and mathematical operations; this limitation can result in round off and other errors.
EK 2.1.2D The interpretation of a binary sequence depends on how it is used.
EK 2.1.2E A sequence of bits may represent instructions or data.
EK 2.1.2F A sequence of bits may represent different types of data in different contexts.
EK 2.2.2A Software is developed using multiple levels of abstractions, such as constants, expressions, statements, procedures, and libraries.
EK 2.2.2B Being aware of and using multiple levels of abstraction in developing programs helps to more effectively apply available resources and tools to solve problems.
EK 2.2.3A Different programming languages offer different levels of abstraction.
EK 2.2.3B High-level programming languages provide more abstractions for the programmer and make it easier for people to read and write a program.
EK 2.2.3C Code in a programming language is often translated into code in another (lower level) language to be executed on a computer.
EK 2.2.3D In an abstraction hierarchy, higher levels of abstraction (the most general concepts) would be placed toward the top and lower level abstractions (the more specific concepts) toward the bottom.
EK 2.2.3E Binary data is processed by physical layers of computing hardware, including gates, chips, and components.
EK 2.2.3F A logic gate is a hardware abstraction that is modeled by a Boolean function.
EK 2.2.3G A chip is an abstraction composed of low-level components and circuits that perform a specific function.
EK 2.2.3H A hardware component can be low level like a transistor or high level like a video card.
EK 2.2.3I Hardware is built using multiple levels of abstractions, such as transistors, logic gates, chips, memory, motherboards, special purpose cards, and storage devices.
EK 2.2.3J Applications and systems are designed, developed, and analyzed using levels of hardware, software, and conceptual abstractions.
EK 2.2.3K Lower level abstractions can be combined to make higher level abstractions, such as short message services (SMS) or email messages, images, audio files, and videos.
EK 2.3.2A Models and simulations facilitate the formulation and refinement of hypotheses related to the objects or phenomena under consideration.
EK 2.3.2B Hypotheses are formulated to explain the objects or phenomena being modeled.
EK 2.3.2C Hypotheses are refined by examining the insights that models and simulations provide into the objects or phenomena.
EK 2.3.2D The results of simulations may generate new knowledge and new hypotheses related to the phenomena being modeled.
EK 2.3.2E Simulations allow hypotheses to be tested without the constraints of the real world.
EK 2.3.2F Simulations can facilitate extensive and rapid testing of models.
EK 2.3.2G The time required for simulations is impacted by the level of detail and quality of the models and the software and hardware used for the simulation.
EK 2.3.2H Rapid and extensive testing allows models to be changed to accurately reflect the objects or phenomena being modeled.