Microcontrollers: The Arithmetic Logic Unit
In Microcontrollers: The Arithmetic Logic Unit, you'll learn ...
- The purpose of an arithmetic logic unit (ALU) in the central core of a central processing unit (CPU).
- How arithmetic and logical operations are performed within a CPU
- How the instruction from the machine code from a compiled computer program gets translated into useful code for the ALU to determine which operation to perform
- How ALUs were designed in early computers
Overview
The arithmetic logic unit (ALU) is the central core of a central processing unit (CPU). The ALU is simply a digital circuit that performs arithmetic and logical operations on binary numbers. They are combinational logic circuits which means that their outputs change asynchronously in response to changes to their inputs. ALU circuits perform operations on integer binary numbers. All microcontrollers contain an arithmetic logic unit (ALU). It is a fundamental building block of the CPU.
An ALU has two integer inputs called operands and another input called an opcode. The opcode instructs the ALU which instruction to perform (like addition, subtraction, decrement, increment, AND, OR, NOT, XOR, etc.). The opcode code is a binary code that comes from the instruction set (or program) that is being executed.
The instructions or program will contain both the operands or numbers to be used and the opcode that tells the ALU what to do with the numbers, eg. add the numbers. These instructions are usually written in a higher-level programming language and are stored in the computer's main memory. A compiler will compile the higher-level language program and convert it to machine code. The computer executes one instruction at a time.
This course focuses on the ALU. The course explains how arithmetic and logical operations are performed within a CPU. This course explains how the instruction from the machine code from a compiled computer program gets translated into useful code for the ALU to determine which operation to perform and where the data is coming from.
Learning Objectives
Upon completion of this course, participants will be able to:
- Explain how an ALU selects among its available functions.
- Trace the development of ALU designs used in early computers.
- Illustrate how an ALU processes its operands.
- Analyze how an ALU uses an opcode to select an operation.
- Demonstrate how an ALU performs subtraction.
- Describe carry-in and carry-out operation in a full adder.
- Differentiate a half adder from a full adder.
- Identify the logic elements shown in a full-adder diagram.
- Construct a truth table that represents ALU operations.
- Interpret how an instruction set is converted into machine code.
- Decompose machine code into an opcode and associated operation data.
- Map the ALU’s role within a CPU architecture.
- Sequence the steps in the CPU fetch-decode-execute cycle.
- Assess the historical significance of the 74181 ALU.
- Calculate the number of arithmetic and logic operations available from a 74181 ALU.
- Evaluate the 74181 schematic and truth table to determine selected operations.
Certificate of Completion
You will be able to immediately print a certificate of completion after passing a multiple-choice quiz consisting of 28 questions. CPD credits are not awarded until the course is completed and quiz is passed.
