This repository contains my solutions for the Computer Architecture course assignments and final project, all implemented in RISC-V Assembly language.
├── assignments
│ ├── HW4.pdf
│ ├── five.s
│ ├── four.cpp
│ ├── four.s
│ ├── one.s
│ ├── three.s
│ └── two.s
└── project
├── CA-CPULatorProj.s
├── project.pdf
└── report.pdf
- HW4: Practice exercises focusing on RISC-V instruction set architecture
- Includes solutions for array processing, palindrome checking, factorial calculation, and more
- All solutions written in pure RISC-V Assembly
- CPULator Project: A financial transaction simulator implemented in RISC-V Assembly
- Tracks loans and debts between individuals with various query operations
- Handles floating-point calculations and complex data structures in assembly
- Language: RISC-V Assembly
- Instruction Set: RV32I base integer instruction set
- Focus: Low-level programming, memory management, and computer architecture concepts
- RISC-V instruction formats and types
- Memory access operations (load/store)
- Arithmetic and logical operations
- Control flow (branches, jumps)
- Function calls and stack management
- Array processing and string manipulation
- Recursive algorithms
- System calls and I/O operations
- Financial transaction tracking system
- Multiple query types (net worth, debt relationships)
- Floating-point arithmetic handling
- String processing and comparison
- Efficient data structure management in assembly
- Use a RISC-V simulator like RARS or CPUlator
- Load the desired
.sfile into the simulator - Assemble and execute the program
- Provide input as required by each program
- Course: Computer Architecture
- Instructor: Dr. Elham Cheshmi Khani
- Semester: Spring 1403 (2024)
- University: Shahid Beheshti University