Goal:
The comprehensive exam serves as a milestone before students begin their specialization, ensuring that they organize and consolidate the professional, engineering, and programming knowledge acquired during the first two years.
Topics:
The knowledge required to successfully complete the comprehensive exam is based on the topics covered in the following courses: Electronics Basic, Electronics, Digital Systems, Problem-solving using programming, Basics of Software Development, and Algorithms and data structures.
Topics from Electronics and Digital Systems subject group:
- Charge and Current, Voltage, Power and Energy
- Resistance, Capacitors, Inductors, Conductance, Ohm’s Law, Kirchhoff’s Laws
- Voltage Division, Current Division • Superposition, Source Transformation, Thevenin’s Theorem, Norton’s Theorem • Phasor Relationships for Circuit Elements, Impedance and Admittance, Impedance Combinations
- Diodes, DC Power Supply, Rectifier Circuits, Limiting and Clamping Circuits
- Bipolar Junction Transistors (BJT), BJT Modes of Operation, Current–Voltage Characteristics
- Configurations of BJT, Transistor as a Switch • Operational Amplifiers, Function and Characteristics of the Ideal Op Amp, Differential & Common Mode Signals
- Op Amp with Negative Feedback, Inverting and Non-Inverting Configuration
- Op Amp: Closed loop Gain, Input & Output Resistances
- Difference Amplifiers, Integrators and Differentiators
- MOS Field-Effect Transistors (MOSFETs), Current–Voltage Characteristics
- Biasing in MOSFET, Configurations of MOSFET, MOSFET Transistor as a switch
- Binary Arithmetic, Boolean Algebra, Karnaugh Map • Decoder and Encoder, Multiplexer and Demultiplexer
- Combinational Logic Circuits, Adder, Ripple Carry Adder, Subtractor, Multiplier
- Sequential Logic Circuits, Flip Flops, D Flip Flop, SR Flip-Flop, JK Flip-Flop, T Flip-Flop • Analysis of Sequential Circuit, State Table, State Diagram, Timing Chart
- Registers, Shift Register
Topics from Programming subject group:
- Objectoriented programming
- Basic algorithms for array operations
- Sorting algorithms
- Sorted arrays (binary search, union and intersection operations)
- Divide and conquer algorithms (merge sort, quicksort)
- Dynamic programming and backtracking (algorithms solving the 0-1 knapsack problem)
- Linked data structures and their operations (stack, queue, list, priority queue)
- Binary search tree and its operations
- Hash functions, dictionary implementations, and their operations
- Graph algorithms (breadth-first and depth-first search, shortest path finding)