This repository contains assembly language laboratory exercises for the Intel 8080 microprocessor. Each example provides source code for various tasks performed as part of the laboratory sessions.
lab1/
: Code for the first laboratory exercise.lab2/
: Code for the second laboratory exercise.lab3/
: Code for the third laboratory exercise.lab4/
: Code for the fourth laboratory exercise.lab5/
: Code for the fifth laboratory exercise.
Description: This exercise includes basic assembly operations like moving immediate values into registers, loading and storing data, and basic data manipulation.
- Example 1: Moving immediate values into registers.
- Example 2: Loading registers with immediate values and performing basic operations.
- Example 3: Initializing stack pointers and manipulating stack.
- Example 4: Moving data between registers and performing simple data transfers.
- Example 5: Using the Program Counter for address-based operations.
Description: This exercise focuses on memory operations including storing and loading data to/from specific memory addresses.
- Example 1: Storing data to and loading from memory.
- Example 2: Loading data into registers from memory locations.
- Example 3: Using memory operations with different registers and immediate values.
- Example 4: Loading data from memory into registers in a specific order.
- Example 5: Storing data into two separate memory locations.
- Example 6: Loading data from two separate memory locations.
Description: This exercise involves arithmetic and logical operations, including addition, subtraction, and bitwise operations.
- Example 1: Performing addition with carry and logical operations.
- Example 2: Adding and logical operations between registers.
- Example 3: Performing subtraction and bitwise operations with immediate values.
- Example 4: Performing subtraction and logical operations.
- Example 5: Performing arithmetic and bitwise operations with different registers.
Description: This exercise covers bitwise operations like rotation and logical manipulations.
- Example 1: Rotating bits in the accumulator and performing logical OR operations.
- Example 2: Performing rotate and logical AND operations on registers.
- Example 3: Rotating bits left and performing arithmetic operations.
- Example 4: Rotating bits and performing logical operations with different registers.
- Example 5: Performing bitwise XOR and AND operations.
- Example 6: Performing complex bitwise operations and manipulations on multiple registers.
- Example 7: Performing bitwise NOT and AND operations on registers.
- Example 8: Performing bitwise operations and using memory addressing.
Description: This exercise involves more advanced bitwise operations, including rotation and arithmetic manipulation.
- Example 1: Rotating bits left in the accumulator multiple times.
- Example 2: Rotating bits right and performing bitwise AND operations.
- Example 3: Rotating bits left and performing addition with carry.
- Example 4: Performing bitwise rotation and logical operations.
- Example 5: Performing bitwise rotate and arithmetic operations.