Advanced Search
Search Results
297 total results found
2. Graph Representations
A graph is an abstract concept. To store one in a computer's memory, we must translate this idea of vertices and edges into a concrete data structure. The choice of representation is critical, as it dictates the performance and space efficiency of our graph al...
3. Stack and Queue
Before diving into graph traversal, we must understand the two key data structures that power them: std::stack (for DFS) and std::queue (for BFS). 3.1 Introduction to std::stack std::stack is a container adapter in the C++ STL. It's not a container itself, bu...
4. Graph Traversal: Breadth-First Search (BFS)
Breadth-First Search (BFS) is a traversal algorithm that explores the graph "level by level." It starts at a source vertex, explores all of its immediate neighbors, then all of their neighbors, and so on. 4.1 BFS Analogy and Illustration Imagine a ripple effec...
5. Graph Traversal: Depth-First Search (DFS)
Depth-First Search (DFS) is a traversal algorithm that explores the graph by going as "deep" as possible down one path before backtracking. 5.1 DFS Analogy and Illustration Imagine exploring a maze with only one path. You pick a direction (an edge) and follow...
6. Example: Full Code Implementation
This chapter combines all the concepts into a single Graph class using the C++ STL for the adjacency list. #include <iostream> #include <vector> #include <list> // For Adjacency List #include <queue> // For BFS #include <stack> // For Iterative DFS #...
1. Introduction: The Role of the Control Unit
1.1 Definition: The Control Unit (CU) is the core component of a computer's Central Processing Unit (CPU) that directs its operation. Often compared to the "brain" or "central nervous system" of the computer, the CU does not execute program instructions itse...
2. The Control Unit Dilemma: Hardwired vs. Microprogrammed
The fundamental problem of generating control signals, introduced in Section 1.0, is solved by two distinct design philosophies. This choice between a "hardwired" and a "microprogrammed" control unit represents a classic engineering trade-off between speed and...
3. Principles of Microprogrammed Control
This section details the core theory of the microprogrammed control unit, the flexible alternative to the hardwired FSM. This approach fundamentally changes the design from a complex, fixed logic circuit to a simple, programmable one. 3.1 Core Concept: The "...
4. The Micro-instruction
If the Control Store is the "recipe book" for the CPU, then a micro-instruction is a single "line" in that recipe. It is the most fundamental unit of control in a microprogrammed CPU, defining the exact set of hardware operations that will occur in a single cl...
5. Execution Flow and Sequencing
This section connects all the previous concepts to illustrate how the microprogrammed control unit runs a program. The core of this operation is the mapping of high-level assembly instructions to low-level micro-routines, all managed by the micro-sequencer. 5...
Final Project Guide
Congratulations! 🥳 In this final module, you are given the opportunity to create a project with your group members according to the following provisions: Final Project Timeline Github Link Deadline: Sunday, November 23, 2025 23.59 WIB Project Title: Discuss w...
Principles and Guidelines for AI Usage
Figure: A diagram summarizing key AI ethics principles, emphasising fairness, accountability, privacy, and safety. Principles and Guidelines Fairness and non-discrimination AI systems should be designed and operated to avoid unfair bias and discrimination. T...
Introduction to AI Usage Ethics
Overview Artificial intelligence (AI) influences many aspects of society. As developers and users, we must ensure our AI systems behave ethically. AI usage ethics is about aligning AI systems with human values such as fairness, accountability, transparency, pr...
1. Basic Concepts of Inheritance
1.1 What is Inheritance? Inheritance is a mechanism where a class (derived/child class) can inherit properties and methods from another class (base/parent class). Real-World Analogy: Think of inheritance like family traits: A child inherits characteristics fr...
2. Types of Inheritance and Method Overriding
2.1 Single Inheritance Definition: One derived class inherits from one base class. #include <iostream> #include <string> using namespace std; class Person { protected: string name; int age; public: Person(string n, int a) : name(n), age(a) {}...
3. Practical Applications and Best Practices
3.1 Complete Example: University Management System #include <iostream> #include <vector> #include <string> using namespace std; // Base class class Person { protected: string name; int id; int age; public: Person(string n, int i, int a) :...
Part 1 - Theory
LoRa (& LoRaWAN) Module Authors: Edgrant Henderson Suryajaya 1. Introduction IoT devices can collect and exchange data, monitor and control various processes, and enable smart solutions for domains such as agriculture, health, smart cities, and i...
Part 2 - Hands On
4. Practicum: LoRa Implementation on ESP32 A. Hardware Setup (Wiring) Connect the SX1276/RFM95 module to the ESP32 using the standard SPI configuration: LoRa Pin ESP32 GPIO Function GND GND Ground 3.3V 3.3V Power (Do not use 5V) ...
More Resources
Resources: ESP32 with LoRa using Arduino IDE – Getting Started LoRa Duplex communication with Sync Word Code Lora Repo Root LoRa API Supporting Videos How LoRa Modulation really works - long range communication using chirps LoRa/LoRaWAN tutorials Tutorial...
1. Basic Concepts of Polymorphism
1.1 What is Polymorphism? Polymorphism means "many forms" - the ability of objects to take on multiple forms or behave differently based on their type. Real-World Analogy: Think of a smartphone's "share" button: Share a photo → Opens image sharing options Sha...