Everything the M.Sc. (CSE) admission MCQ + short-written exam draws from — every subject, every definition explained in plain language with an example, every high-yield fact marked. Built from real question banks (JU PMSCS "Father of Admission Test", Examveda computer bank, BUET/KUET past patterns). Analysis of those banks: ~80% of questions come from CSE core subjects, ~20% from math, analytical reasoning and English.
C developed by: Dennis Ritchie, 1972, Bell Labs (for UNIX).
C++ developed by: Bjarne Stroustrup. Java: James Gosling (Sun Microsystems).
C is a structured / procedural, middle-level, compiled language.
Program execution starts from main().
Compiler translates whole program at once; interpreter line by line.
Keywords in C: 32. All lowercase.
sizeof is an operator, not a function.
Typical sizes (32/64-bit gcc): char = 1, int = 4, float = 4, double = 8, pointer = 8 (on 64-bit).
Array index starts at 0; last index = size − 1.
String terminator: '\0' (null character). So "CSE" takes 4 bytes.
Format specifiers: %d int, %f float, %lf double, %c char, %s string, %x hex, %o octal, %p pointer, %u unsigned.
Header for printf/scanf: stdio.h; strings → string.h; math → math.h; malloc → stdlib.h.
int marks = 80; reserves 4 bytes named marks holding 80.int a=5; int *p=&a; — now *p gives 5 (value at that address), p gives the address. & = "address of", * = "value at".fact(n) = n * fact(n-1), base case fact(0)=1. Recursion uses the stack; missing base case → stack overflow.| Class | Stored in | Default value | Lifetime / scope |
|---|---|---|---|
auto | RAM (stack) | garbage | inside block only (default for locals) |
register | CPU register (request) | garbage | fast access; cannot take its address with & |
static | RAM (data segment) | 0 | whole program run, keeps value between calls |
extern | RAM | 0 | global, visible across files |
i++ uses the value first, then increments; ++i increments first.
Example: int i=5; printf("%d %d", i++, ++i); is undefined behaviour in one printf, but the classic single case: i=5; x=i++; → x=5, i=6. i=5; x=++i; → x=6, i=6.5/2 = 2 (not 2.5), because both are int. 5.0/2 = 2.5. 5%2 = 1 (remainder). % works only on integers.if(a = 0) assigns 0 → condition false. if(a == 0) compares. Any non-zero value is true in C; 0 is false.'A' has ASCII value 65, 'a' = 97, '0' = 48. So 'A'+1 prints 66, or 'B' with %c. Difference between uppercase and lowercase = 32.int a[5], a itself is the address of a[0]. *(a+2) is the same as a[2]. Pointer arithmetic moves by the size of the type: for int pointer, p+1 jumps 4 bytes.int a = 10, b;
b = a++ + ++a; // a++ gives 10 (a becomes 11), ++a makes a=12 and gives 12
printf("%d %d", a, b); // prints: 12 22
Trace left to right, updating the variable at each step. Most output MCQs die to careful tracing.for(i=0;i<10;i+=2) runs for i = 0,2,4,6,8 → 5 times. Formula: number of runs = ⌈(end − start)/step⌉. while(1) and for(;;) are infinite loops. break exits the loop; continue skips to the next iteration.| Function | Does | Example |
|---|---|---|
strlen(s) | length WITHOUT '\0' | strlen("CUET") = 4 |
strcpy(d,s) | copy s into d | — |
strcat(d,s) | join s to end of d | "AB"+"CD" → "ABCD" |
strcmp(a,b) | 0 if equal, <0 if a<b, >0 if a>b (dictionary order) | strcmp("abc","abc")=0 |
strrev(s) | reverse (non-standard, Turbo C) | — |
malloc(n) allocates n bytes with garbage values; calloc(k, size) allocates k blocks and initializes to 0. realloc resizes; free() releases. Forgetting free() → memory leak.| Pillar | Plain meaning | Real example |
|---|---|---|
| Encapsulation | Wrap data + functions together in a class; hide data with private | Bank account: balance is private, you change it only through deposit()/withdraw() |
| Abstraction | Show only what is needed, hide how it works | You press the brake pedal; you don't see the hydraulics |
| Inheritance | A new class reuses properties of an existing class | class Car inherits from class Vehicle |
| Polymorphism | Same name, different behaviour | function overloading (compile-time), virtual function overriding (run-time) |
Class = blueprint; object = real instance of the class.
Constructor: special function, same name as class, no return type, runs automatically when object is created. Destructor (~ClassName) runs when object is destroyed.
Constructor overloading = multiple constructors with different parameters.
Compile-time polymorphism: function/operator overloading. Run-time: virtual functions (achieved via pointers/late binding).
Java: platform independent ("write once run anywhere") because it compiles to bytecode run by the JVM. No pointers, no multiple inheritance of classes (uses interfaces).
Java: everything must be inside a class. Entry: public static void main(String[] args).
Access specifiers: private (class only), protected (class + derived), public (everywhere). Default in C++ class = private; in struct = public.
friend function can access private members of a class without being a member.
this pointer = address of the current object.
| Algorithm | Best | Average | Worst | Extra note |
|---|---|---|---|---|
| Bubble sort | O(n) | O(n²) | O(n²) | swaps neighbours; stable |
| Selection sort | O(n²) | O(n²) | O(n²) | minimum swaps (n−1); not stable |
| Insertion sort | O(n) | O(n²) | O(n²) | best for nearly-sorted / small data; stable |
| Merge sort | O(n log n) | O(n log n) | O(n log n) | divide & conquer; needs O(n) extra space; stable |
| Quick sort | O(n log n) | O(n log n) | O(n²) | worst when already sorted / bad pivot; in-place; not stable |
| Heap sort | O(n log n) | O(n log n) | O(n log n) | in-place, not stable |
| Counting/Radix | O(n+k) / O(nk) | non-comparison sorts | ||
| Linear search | O(1) | O(n) | O(n) | works on unsorted data |
| Binary search | O(1) | O(log n) | O(log n) | data must be sorted |
| Hash table lookup | O(1) | O(1) | O(n) | worst = all keys collide |
| BST search/insert | O(log n) balanced | O(n) skewed | AVL guarantees O(log n) | |
push, pop, peek. Example: a stack of plates. Uses: function calls (recursion), undo, expression evaluation, infix→postfix conversion, balanced-parentheses check, DFS. Push on full stack = overflow; pop on empty = underflow.A + B * C → postfix A B C * + (because * has higher precedence).
Evaluate postfix 6 2 3 + - 3 8 2 / + *: 2+3=5 → 6−5=1 → 8/2=4 → 3+4=7 → 1*7 = 7. Rule: scan left→right, push operands, on operator pop two (second-popped OP first-popped), push result.| BFS | DFS | |
|---|---|---|
| Data structure | Queue | Stack / recursion |
| Explores | level by level (nearest first) | as deep as possible first |
| Finds shortest path (unweighted)? | Yes | No |
| Complexity | O(V+E) | O(V+E) |
| Uses | shortest path, level order | cycle detection, topological sort, maze solving |
h(k) = k mod 10. Two keys mapping to the same index = collision. Resolutions: chaining (linked list per slot) and open addressing (linear probing: try next slot; quadratic probing; double hashing).| Paradigm | Idea | Examples |
|---|---|---|
| Divide & Conquer | split, solve, combine | merge sort, quick sort, binary search |
| Greedy | best local choice each step | Dijkstra, Prim, Kruskal, Huffman coding, fractional knapsack |
| Dynamic Programming | store answers to overlapping subproblems | Fibonacci (memoized), 0/1 knapsack, LCS, Floyd-Warshall |
| Backtracking | try, undo, try again | N-Queens, Sudoku, maze |
New → Ready → Running → (Waiting/Blocked ↔) → Terminated. Ready = waiting for CPU; Running = has CPU; Waiting = waiting for I/O. Moving CPU from one process to another = context switch (pure overhead — no useful work). The dispatcher gives the CPU to the process chosen by the scheduler; dispatch latency = time to stop one process and start another.
| Algorithm | Type | Key property |
|---|---|---|
| FCFS (First Come First Served) | Non-preemptive | simple; suffers convoy effect (short jobs stuck behind long) |
| SJF (Shortest Job First) | Non-preemptive | optimal minimum average waiting time; risk of starvation of long jobs |
| SRTF (Shortest Remaining Time First) | Preemptive SJF | preempts if a shorter job arrives |
| Round Robin | Preemptive | each process gets a fixed time quantum; best for time-sharing; too-small quantum → too many context switches |
| Priority | Both | starvation fixed by aging (slowly raising priority of waiting jobs) |
Handling strategies: Prevention (deny one of the 4 conditions), Avoidance (Banker's algorithm — stay in a "safe state" by checking before granting), Detection & recovery (allow it, find cycle in resource-allocation graph, kill/rollback), Ignore (ostrich algorithm — what most OSes actually do).
wait(P) decrements (blocks if 0) and signal(V) increments. Two types: binary semaphore (0/1, works like a mutex/lock) and counting semaphore (N identical resources). Classic problems: Producer–Consumer, Readers–Writers, Dining Philosophers.Batch OS: jobs grouped and run without interaction.
Time-sharing / multitasking: CPU switches rapidly among many tasks (Round Robin).
Real-time OS: response time is crucial — e.g. car fuel injection, missile guidance, process control.
Multiprogramming: many programs in memory to keep the CPU busy. Multiprocessing: more than one CPU.
Embedded OS: inside devices — mobile phones, thermostats.
MS-DOS: single-user, single-tasking, command-driven — NOT truly multitasking.
File systems: DOS→FAT16, Win95→FAT32, WinNT/2000/modern→NTFS (New Technology File System). Linux→ext4.
Deleting with Shift+Delete skips the Recycle Bin. One recycle bin per drive/partition.
| Key | Meaning | Example (Student table) |
|---|---|---|
| Super key | any attribute set that uniquely identifies a row | {Roll}, {Roll, Name} |
| Candidate key | minimal super key | {Roll}, {NID} |
| Primary key | chosen candidate key; unique + NOT NULL, one per table | Roll |
| Alternate key | candidate keys not chosen | NID |
| Foreign key | attribute referring to the primary key of another table — creates the link; can be NULL/duplicate | Dept_ID in Student → Dept table |
| Composite key | key made of 2+ attributes | {CourseID, Roll} in Enrollment |
Student(Roll, Name, Dept, DeptHead, Courses) where Courses holds "CSE101, CSE102".
-- SQL types: DDL (CREATE, ALTER, DROP, TRUNCATE)
-- DML (SELECT, INSERT, UPDATE, DELETE)
-- DCL (GRANT, REVOKE) TCL (COMMIT, ROLLBACK, SAVEPOINT)
SELECT Dept, AVG(Salary) AS avg_sal
FROM Employee
WHERE Salary > 20000 -- WHERE filters ROWS (before grouping)
GROUP BY Dept
HAVING AVG(Salary) > 50000 -- HAVING filters GROUPS (after grouping)
ORDER BY avg_sal DESC;
-- 2nd highest salary (classic written question)
SELECT MAX(Salary) FROM Employee
WHERE Salary < (SELECT MAX(Salary) FROM Employee);
-- Pattern matching: names starting with 'A'
SELECT * FROM Student WHERE Name LIKE 'A%'; -- % = any string, _ = one char
| Join | Returns |
|---|---|
| INNER JOIN | only matching rows of both tables |
| LEFT JOIN | all left rows + matches (NULL where no match) |
| RIGHT JOIN | all right rows + matches |
| FULL OUTER JOIN | everything from both sides |
| CROSS JOIN | Cartesian product (m × n rows) |
Concurrency control: locks — shared (S) lock for reading (many allowed), exclusive (X) lock for writing (only one). Two-Phase Locking (2PL) — growing phase (acquire locks) then shrinking phase (release) — guarantees serializability. Locking can cause deadlock, handled like in OS.
| B-tree | B+ tree (used in DBMS) |
|---|---|
| data stored in all nodes | data (records) only in leaf nodes; internal nodes hold keys only |
| no linked leaves | leaves linked left-to-right → fast range queries and sequential access |
| search may end at internal node | every search goes to a leaf → uniform time |
Other quick facts: Dense index = entry for every record; sparse = entry per block. Clustered index orders the actual data (one per table). Hash index = O(1) equality search but no range queries.
| # | Layer | Job (plain words) | Data unit | Protocols | Device |
|---|---|---|---|---|---|
| 7 | Application | user-facing services | data | HTTP, HTTPS, FTP, SMTP (send mail), POP3/IMAP (receive mail), DNS, Telnet, SSH, DHCP | gateway |
| 6 | Presentation | format, encryption, compression | data | SSL/TLS, JPEG, ASCII | — |
| 5 | Session | open/manage/close sessions | data | NetBIOS, RPC | — |
| 4 | Transport | end-to-end delivery, error control, ports | segment | TCP, UDP | — |
| 3 | Network | logical addressing + routing | packet | IP, ICMP (ping), ARP | Router |
| 2 | Data Link | physical addressing (MAC), framing, error detection | frame | Ethernet, PPP | Switch, bridge, NIC |
| 1 | Physical | raw bits over the medium | bit | cables, RS-232 | Hub, repeater, cable |
| TCP | UDP |
|---|---|
| connection-oriented — 3-way handshake (SYN, SYN-ACK, ACK) | connectionless — just send |
| reliable: acknowledgement, retransmission, ordering | unreliable, no guarantee, no order |
| slower, heavier header (20 bytes) | faster, light header (8 bytes) |
| used for: web (HTTP), email (SMTP), file transfer (FTP) | used for: video streaming, VoIP, online games, DNS, DHCP |
FTP 20/21 · SSH 22 · Telnet 23 · SMTP 25 · DNS 53 · DHCP 67/68 · HTTP 80 · POP3 110 · IMAP 143 · HTTPS 443.
| Class | First octet | Default mask | Hosts per network | Note |
|---|---|---|---|---|
| A | 1 – 126 | 255.0.0.0 (/8) | 2²⁴−2 ≈ 16.7M | 127.x.x.x = loopback (localhost) |
| B | 128 – 191 | 255.255.0.0 (/16) | 2¹⁶−2 = 65,534 | |
| C | 192 – 223 | 255.255.255.0 (/24) | 2⁸−2 = 254 | private: 192.168.x.x |
| D | 224 – 239 | — | — | multicast |
| E | 240 – 255 | — | — | experimental/research |
Private ranges: 10.0.0.0/8, 172.16.0.0–172.31.255.255, 192.168.0.0/16. Why −2 in host count? The all-0 host part = network address, all-1 = broadcast address — neither assignable.
Parity bit: detects single-bit errors only.
CRC (Cyclic Redundancy Check): strong error detection using polynomial division — used in Ethernet.
Hamming code: can correct single-bit errors.
Checksum: used by TCP/IP.
Fiber optic: fastest, light-based, immune to electromagnetic interference.
Twisted pair (UTP + RJ-45): common LAN cable; coaxial = cable TV.
Bandwidth measured in bps; LAN speeds in Mbps.
Topologies: star (central hub — one cable fails, only that node dies; hub fails, all die), bus (single backbone), ring (token passing), mesh (n(n−1)/2 links, most reliable).
LAN = building; MAN = city; WAN = country/world (Internet is the largest WAN).
MAC address: 48-bit physical address burned into the NIC (e.g. 00:1A:2B:3C:4D:5E) — Data Link layer. IP = logical, changeable — Network layer.
Hub broadcasts to all (dumb); switch sends only to the destination MAC (smart); router connects different networks using IP.
Modem: MOdulator-DEModulator — digital ↔ analog over phone line. Bluetooth = short-range wireless; Wi-Fi standard = IEEE 802.11; Ethernet = 802.3.
Firewall guards against unauthorized access; encryption scrambles data; the key-based system = cryptosystem.
URL parts: protocol://domain/path — https://cuet.ac.bd/admission.
| Gate | Output is 1 when… | Key fact |
|---|---|---|
| AND | all inputs 1 | A·B |
| OR | any input 1 | A+B |
| NOT | input is 0 | inverter |
| NAND | NOT(AND) — 0 only when all 1 | universal gate |
| NOR | NOT(OR) — 1 only when all 0 | universal gate |
| XOR | inputs are different (odd number of 1s) | A⊕B = A'B + AB'; used in adders, parity |
| XNOR | inputs are same | equality detector |
A + A' = 1 · A · A' = 0 · A + A = A · A + 1 = 1 · A·0 = 0
De Morgan: (A·B)' = A' + B' এবং (A+B)' = A'·B'
Absorption: A + AB = A · A(A+B) = A
Distributive: A + BC = (A+B)(A+C)
Duality: swap AND↔OR and 0↔1.
SOP = Sum of Products (minterms, m); POS = Product of Sums (maxterms, M).
| Circuit | What it does | Must-know |
|---|---|---|
| Half adder | adds 2 bits | Sum = A⊕B, Carry = AB — 1 XOR + 1 AND |
| Full adder | adds 3 bits (incl. carry-in) | Sum = A⊕B⊕C, Carry = AB + C(A⊕B); = 2 half adders + 1 OR |
| Multiplexer (MUX) | many inputs → 1 output, chosen by select lines | 2ⁿ inputs need n select lines (8:1 MUX → 3 selects); "data selector" |
| Demultiplexer | 1 input → one of many outputs | reverse of MUX |
| Decoder | n inputs → 2ⁿ outputs (one active) | 3×8 decoder; drives 7-segment displays |
| Encoder | 2ⁿ inputs → n outputs | reverse of decoder |
| Comparator | tells A>B, A=B, A<B | equality bit uses XNOR |
| Flip-flop | Behaviour | Note |
|---|---|---|
| SR | Set / Reset | S=R=1 is invalid/forbidden |
| JK | like SR but J=K=1 → toggle | fixes SR's invalid state; J=K=1 continuously → race-around, fixed by master–slave |
| D (Data/Delay) | output = D at clock edge | used in registers |
| T (Toggle) | T=1 → flip state | used in counters (divide-by-2) |
Register: group of flip-flops storing n bits. Shift register types: SISO, SIPO, PISO, PIPO.
Counter: counts clock pulses. n flip-flops count up to 2ⁿ states; MOD-10 (decade) counter needs 4 flip-flops. Asynchronous = ripple counter (slower); synchronous = common clock.
To count 0–100 you need 7 flip-flops (2⁷=128 ≥ 101).
Propagation delay = time for output to respond to input change.
IC families: TTL (transistor-transistor logic), CMOS (lowest power). IC chips are made of silicon.
ALU: performs arithmetic AND comparison/logic operations (not storage).
Control Unit: the "supervisor" — directs all other units; ALU responds to commands from the control section.
Registers: fastest storage, inside CPU. PC (Program Counter): address of the next instruction. IR: the current instruction. MAR: memory address; MDR/MBR: data being transferred. Accumulator: holds ALU results. SP: stack pointer.
Instruction cycle: Fetch → Decode → Execute (→ store).
Buses (3): data bus (bidirectional), address bus (unidirectional), control bus. n address lines → can address 2ⁿ locations (16 lines → 64 KB).
Word length measured in bits. Clock speed in GHz; MIPS = Million Instructions Per Second.
RISC: few simple fixed-length instructions, more registers, pipelining-friendly (ARM). CISC: many complex variable-length instructions (Intel x86).
Firmware: software permanently stored in ROM (e.g. BIOS).
Microprocessor invented: Intel 4004 (1971), first Intel processor — 4th generation.
Fastest/most expensive → slowest/cheapest: Registers → Cache (SRAM) → Main memory (DRAM) → SSD/Hard disk → Tape.
| Memory | Facts asked |
|---|---|
| RAM | volatile, read-write. SRAM = flip-flops, fast, used for cache; DRAM = capacitor + transistor, needs refresh, used for main memory (cheaper, denser) |
| ROM | non-volatile. PROM write once; EPROM erase with UV light; EEPROM erase electrically; Flash = modern EEPROM (BIOS, pendrives, SSD) |
| Cache | small fast SRAM between CPU and RAM holding frequently used data (locality of reference). L1 (fastest, inside core) → L2 → L3 |
| Virtual memory | hard-disk space acting as extra RAM (illusion of large memory) |
| Mapping | Rule | Trade-off |
|---|---|---|
| Direct | block goes to exactly ONE line: line = block mod lines | cheap, but conflicts even when cache has space |
| Fully associative | block can go anywhere | flexible, expensive search |
| Set-associative | block maps to one set, anywhere inside it (k-way) | the practical compromise |
8086: 16-bit microprocessor, 20-bit address bus → addresses 2²⁰ = 1 MB memory; 16-bit data bus; ~29,000 transistors; introduced 1978.
8085: 8-bit, 16-bit address bus → 64 KB.
Physical address = Segment × 16 + Offset (i.e. segment shifted left 4 bits + offset). Example: CS=1000H, IP=0200H → PA = 10000H + 0200H = 10200H.
Segment registers (4): CS (code), DS (data), SS (stack), ES (extra) — each segment max 64 KB.
General purpose (16-bit): AX (accumulator), BX (base), CX (counter — loops), DX (data); each splits into H/L halves (AH/AL).
Pointer/index: SP, BP, SI, DI. IP = instruction pointer.
Flags: Carry, Zero, Sign, Overflow, Parity, Auxiliary + control flags (Trap, Interrupt, Direction).
BIU & EU: Bus Interface Unit fetches (has a 6-byte instruction queue → pipelining); Execution Unit executes.
Addressing modes: Immediate (MOV AX, 5), Register (MOV AX, BX), Direct (MOV AX, [1234H]), Register indirect (MOV AX, [BX]), Based/Indexed ([BX+SI+disp]).
Common instructions: MOV copy, ADD/SUB, MUL/DIV, INC/DEC, CMP compare, JMP jump, LOOP uses CX, PUSH/POP use stack, INT = software interrupt, HLT = halt, NOP = no operation, XCHG = exchange.
Interrupt vector table: first 1 KB of memory (256 interrupts × 4 bytes). NMI = non-maskable interrupt.
De Morgan for sets: (A∪B)' = A'∩B'. Cartesian product |A×B| = |A|·|B|.
Tautology = always true (p ∨ ¬p); contradiction = always false (p ∧ ¬p). A truth table with n variables has 2ⁿ rows. Quantifiers: ∀ for all, ∃ there exists; ¬∀x P(x) ≡ ∃x ¬P(x).
Sum rule: OR → add. Product rule: AND/steps → multiply. Binomial theorem: (a+b)ⁿ has n+1 terms; coefficient of term = nCr; sum of coefficients = 2ⁿ.
Relation properties: reflexive (aRa ∀a), symmetric (aRb→bRa), transitive (aRb∧bRc→aRc). All three together = equivalence relation (example: "same remainder mod 3"). Reflexive + antisymmetric + transitive = partial order (example: ≤, "divides").
Function: every input has exactly one output. Injective/one-to-one: different inputs → different outputs. Surjective/onto: every output hit. Both = bijective (invertible).
Number of functions from A(m elements) to B(n): nᵐ.
Handshaking lemma: Σdegrees = 2 × |edges| → number of odd-degree vertices is always even.
Complete graph Kn: n(n−1)/2 edges; each vertex degree n−1.
Tree: connected + no cycle → exactly n−1 edges; adding any edge creates exactly one cycle.
Euler circuit (use every EDGE once, return to start): exists iff every vertex has even degree. Euler path: exactly 0 or 2 odd vertices. (Königsberg bridges — impossible, 4 odd vertices.)
Hamiltonian circuit: visit every VERTEX once — no easy condition (NP-complete).
Bipartite graph: 2-colorable ⇔ no odd cycle. Planar: Euler's formula V − E + F = 2; K5 and K3,3 are NOT planar.
Chromatic number: min colors so neighbours differ; 4-color theorem for planar maps.
Mathematical induction: prove base case P(1), then P(k)→P(k+1). Famous sums: 1+2+…+n = n(n+1)/2; 1²+2²+…+n² = n(n+1)(2n+1)/6.
| Model | Idea | When / weakness |
|---|---|---|
| Waterfall | strict sequence, each phase finishes before next | requirements fixed & clear; can't go back easily — inflexible |
| Iterative/Incremental | build in small versions, improve each round | early partial product |
| Spiral | iterative + explicit risk analysis each loop | large, risky projects |
| Prototype | quick throwaway model to confirm requirements | unclear requirements |
| Agile (Scrum) | short sprints (1–4 weeks), working software over documentation, welcome change; roles: product owner, scrum master; daily stand-up | needs customer involvement |
| V-model | each dev phase paired with a test phase | verification-heavy |
Black-box testing: test inputs/outputs without seeing code (boundary value analysis, equivalence partitioning).
White-box: test internal logic/paths (statement, branch coverage).
Levels: Unit (one module) → Integration (modules together) → System (whole product) → Acceptance/UAT (by customer). Alpha testing = in-house; beta = by real users outside.
Regression testing: re-test after changes to ensure nothing broke.
Bug/defect: error in software; debugging = finding & fixing.
Cohesion = how focused one module is (want HIGH); coupling = dependence between modules (want LOW).
UML: Unified Modeling Language — use-case, class, sequence diagrams.
COCOMO: cost estimation model. Software crisis = projects late/over-budget.
| Phase | Does | Output / example |
|---|---|---|
| Lexical analysis (scanner) | groups characters into tokens; removes whitespace/comments | int a = 5; → keyword, identifier, operator, constant. Uses regular expressions / finite automata |
| Syntax analysis (parser) | checks grammar, builds parse tree | catches a = 5 +;. Top-down: LL(1), recursive descent. Bottom-up: LR, SLR, LALR (used by YACC) |
| Semantic analysis | meaning checks: type checking, undeclared variables | catches int + string |
| Intermediate code | machine-independent form | three-address code: t1 = b * c |
| Optimization | make code faster/smaller | constant folding: 2*3 → 6; dead-code removal |
| Code generation | target assembly/machine code | MOV, ADD… |
Assembler: assembly → machine code. Linker: joins object files/libraries into one executable. Loader: puts the executable into memory to run.
Interpreter: executes line by line (Python, older BASIC); slower, but errors shown immediately per line. Java = hybrid (compile to bytecode + JVM interprets/JIT).
Lex = lexical analyzer generator; YACC = Yet Another Compiler Compiler (parser generator).
Ambiguous grammar: a string with 2+ parse trees. Left recursion must be removed for top-down parsing.
Sum 1..n = n(n+1)/2 (1..100 = 5050). Sum of first n odd = n². Sum of first n even = n(n+1).
Divisibility: by 3/9 → digit sum; by 4 → last 2 digits; by 8 → last 3; by 11 → alternating digit sums differ by multiple of 11.
LCM × HCF = product of the two numbers.
Prime: exactly two factors; 2 = only even prime; 1 is NOT prime. Primes under 20: 2,3,5,7,11,13,17,19 (eight of them).
Unit digit cycles: powers of 2 → 2,4,8,6 repeat; of 3 → 3,9,7,1; of 7 → 7,9,3,1. 7^15: 15 mod 4 = 3 → unit digit 3.
Number of factors: N = p^a·q^b → (a+1)(b+1). 72 = 2³·3² → 12 factors.
Logs: log(ab)=log a+log b; log(aⁿ)=n log a; log₂8 = 3; log 1 = 0.
Quadratic ax²+bx+c: sum of roots −b/a, product c/a; discriminant b²−4ac (0 → equal roots).
Probability: favourable/total. Two dice sum 7 → 6/36 = 1/6. Cards: 52 cards, 4 suits, 13 each; P(ace) = 4/52 = 1/13.
Circular seating facing center: left = clockwise. Draw the circle; place the most-constrained person first.
Ranking: position from other end = (total + 1 − position). 15th from top in 40 → 26th from bottom. Total people = rank from top + rank from bottom − 1.
Clock angle = |30H − 5.5M|. At 3:30 → |90 − 165| = 75°. Hands overlap 11 times in 12 hours.
Calendar: ordinary year = 52 weeks + 1 odd day → next year same date shifts +1 weekday (+2 after 29 Feb). Leap year: divisible by 4; centuries must be divisible by 400 (2000 ✔, 1900 ✘).
Syllogism: draw Venn diagrams; "All A are B" = A inside B; "Some" = overlap; check whether the conclusion is FORCED in every possible diagram, not just one.
Coding: CAT→DBU means +1 shift; find the shift, apply it.
Fair = just, impartial, unbiased. Ameliorate = improve. Abundant = plentiful (ant: scarce).
Candid = frank, honest. Obsolete = outdated. Feasible = possible/practical.
Diligent = hardworking. Prudent = wise/careful. Vague = unclear.
Augment = increase. Terminate = end. Contagion = spread of disease by contact.
Goliath = a giant. Colossal/enormous/immense = huge. Trivial = unimportant.
Benevolent = kind (ant: malevolent). Transparent = clear. Ambiguous = double meaning.
Subject–verb: "Each/Every/Either… " takes singular verb. "The number of students is…", "A number of students are…".
Prepositions: good at, afraid of, congratulate on, die of disease, consist of, depend on, interested in, capable of, angry with (person) / at (thing).
Since + point of time (since 2019); for + duration (for 5 years).
Fewer for countable, less for uncountable.
Conditionals: If + past → would (If I were rich, I would…). "I wish I were".
Voice: "He writes a letter" → "A letter is written by him" (obj→subj, verb→be+V3).
Idioms: a piece of cake = very easy; once in a blue moon = rarely; break the ice = start conversation; ins and outs = details.
void f(int x)). Argument: the actual value passed in the call (f(5)). Call by value copies; call by reference/pointer lets the function change the original.Father of computer: Charles Babbage (Analytical Engine). Basic architecture: John Von Neumann.
First electronic general-purpose computer: ENIAC (Eckert & Mauchly, vacuum tubes).
Generations (5): 1 vacuum tube → 2 transistor → 3 IC → 4 microprocessor/VLSI → 5 AI.
Supercomputer inventor: Seymour Cray. India's first: PARAM. Banks/railways/airlines use mainframes.
Most powerful computer type: supercomputer — for math-intensive scientific work.
First computer mouse: Douglas Engelbart. Mouse named for its tail-like cable.
First web browser: WorldWideWeb; WWW invented by Tim Berners-Lee; web standard body = W3C.
First email: 1971, Ray Tomlinson. First web-mail: Hotmail (Sabeer Bhatia, 1996). Spam = unsolicited email. BCC = Blind Carbon Copy.
Big Blue = IBM. Intel HQ = Santa Clara, California. First Intel processor = 4004. Intel & AMD make processors; Microsoft does NOT.
Bit = smallest unit; byte = 8 bits; nibble = 4 bits. KB=1024 B, MB=1024 KB, GB=1024 MB, TB=1024 GB. Data order: bit → byte → field → record → file → database.
1 GB ≈ one billion bytes; hard-drive capacity in GB; LAN speed in Mbps; resolution of laser printer in DPI.
Memory device circuit: flip-flop. Word length in bits. Cache = high-speed memory for frequently used data.
Non-volatile: ROM/PROM/EPROM/EEPROM/flash; volatile: RAM. PROM = write once. Most advanced ROM = EEPROM. BIOS stored in flash/ROM; its settings in CMOS.
Booting = loading OS to RAM; bootstrap loader in ROM starts it; POST checks hardware (video, memory) — ScanDisk does NOT run in POST.
Working document lives in RAM; saved documents on disk (secondary storage). Semiconductor memory is NOT secondary storage.
Icons = graphical object pictures; GUI = Graphical User Interface; system tray shows clock/volume; title bar shows window name; taskbar switches programs.
Recycle bin stores deleted files; one per partition (3 drives → 3 bins); emptying frees space (sending to bin does NOT).
OS is system software; MS Word/Excel/Photoshop = application software; Redhat Linux distribution counted as OS (not application package). Oracle, Pascal, Notepad are NOT operating systems.
Linux: open source — anyone can modify code (that's the key difference from Windows). UNIX (AT&T Bell Labs) is multi-user + multitasking + time-sharing. Mac OS is UNIX-based. OS/2 = IBM.
Kernel = core of OS; memory-resident part. Shell = interface layer. Windows Explorer = file manager.
Real-time OS example: process control / fuel injection. PDA OS = single-user single-task.
Modem converts digital↔analog for phone lines; not used inside a LAN. Router decodes radio-signal data at home.
Firewall: blocks unauthorized access. Hacking = unauthorized entry; identity theft = posing as someone; spoofing = stealing passwords; biometrics = fingerprint/retina security; DoS attack = fake traffic flood.
Melissa (1999) = email virus. Worm dies when memory/disk runs out. Plain-text email cannot carry a virus. Most computer crime is committed by insiders.
Blog = web log (personal journal). Cookie = small text stored by browser. Homepage = first page of a website. URL = address of a page.
Valid email format: name@site.domain (one @). Subject line describes the message.
Input devices: keyboard, mouse, scanner, OMR, MICR (bank cheques), barcode reader (laser scanner), light pen, joystick, touch screen. Output: monitor (VDU), printer (hardcopy), plotter, speaker.
OMR reads pencil marks; OCR reads printed characters; MICR reads magnetic ink on cheques.
Impact printer: dot-matrix (ribbon + print head); daisy wheel = printer type. Laser printer uses drum + laser (no print head). Inkjet needs a cartridge.
Pixel = smallest dot on screen. Monitor types: CRT and LCD. Public info displays = touch-screen kiosks.
Keyboard: QWERTY; function keys = 12; Space key has no name printed; Windows key opens Start.
Floppy 3.5", CD-ROM 680–700 MB; capacity order: DVD > CD > floppy. CD-ROM cannot be modified. Backup file extension .bak. Seagate/WD/Samsung make hard disks; Intel does not.
Zipping = compressing. WinZip compresses. Defragmenter speeds up disk; ScanDisk repairs FAT/lost clusters.
Shortcuts: Ctrl+C copy, Ctrl+X cut, Ctrl+V paste, Ctrl+Z undo, Ctrl+Y redo, Ctrl+P print, Ctrl+S save, Ctrl+A select all, Ctrl+F find, Ctrl+H replace, F7 spell-check, F5 slideshow (PowerPoint) / refresh (Windows), F2 rename, Alt+Tab switch windows, Ctrl+Alt+Del task manager, Shift+Delete permanent delete, Ctrl+End = end of document, Ctrl+Home = beginning.
Excel: formula begins with =; A1 = first cell; $A$1 = absolute reference; data in rows & columns; fill handle = small black square; SUM via AutoSum; NOW() = date+time, TODAY() = date; %MOD() gives remainder; charts: pie = proportions, line = trend over time; workbook = collection of worksheets; VisiCalc = first spreadsheet; Lotus 1-2-3 = old DOS spreadsheet.
Word: .docx (2007+), word wrap moves text to next line automatically, mail merge = same letter to many people (needs main document + data source + merge fields), thesaurus = synonyms, gutter margin = binding side, portrait = default orientation, header/footer prints on every page, Ctrl+Enter = page break, Winword.exe starts Word.
PowerPoint: .pptx; slide master = same logo on all slides; slide transition = effect between slides; animation scheme = motion on objects; slide sorter view = see all slides; F5 = start show; Esc = stop; placeholder = box holding text; handout = printed audience copy.
CPU — Central Processing Unit · ALU — Arithmetic Logic Unit · CU — Control Unit
RAM/ROM — Random Access / Read Only Memory · PROM — Programmable ROM · EEPROM — Electrically Erasable PROM
BIOS — Basic Input Output System · POST — Power-On Self Test · CMOS — Complementary Metal-Oxide Semiconductor
USB — Universal Serial Bus · PCI — Peripheral Component Interconnect · SATA — Serial ATA · IDE — Integrated Drive Electronics
HTTP(S) — HyperText Transfer Protocol (Secure) · HTML — HyperText Markup Language · URL — Uniform Resource Locator
WWW — World Wide Web · ISP — Internet Service Provider · IP — Internet Protocol · TCP — Transmission Control Protocol · UDP — User Datagram Protocol
FTP — File Transfer Protocol · SMTP — Simple Mail Transfer Protocol · POP3 — Post Office Protocol 3 · IMAP — Internet Message Access Protocol
DNS — Domain Name System · DHCP — Dynamic Host Configuration Protocol · NAT — Network Address Translation · VPN — Virtual Private Network
LAN/MAN/WAN — Local/Metropolitan/Wide Area Network · Wi-Fi — Wireless Fidelity · NIC — Network Interface Card · MAC — Media Access Control
SQL — Structured Query Language · DBMS — Database Management System · ACID — Atomicity Consistency Isolation Durability · ER — Entity Relationship
DDL/DML/DCL — Data Definition / Manipulation / Control Language
OS — Operating System · GUI — Graphical User Interface · CLI — Command Line Interface · FAT — File Allocation Table · NTFS — New Technology File System · FIFO/LIFO — First/Last In First Out
AI — Artificial Intelligence · ML — Machine Learning · IoT — Internet of Things · VR/AR — Virtual/Augmented Reality
ASCII — American Standard Code for Information Interchange · BCD — Binary Coded Decimal · MIPS — Million Instructions Per Second
PDF — Portable Document Format · JPEG — Joint Photographic Experts Group · GIF — Graphics Interchange Format · MP3 — MPEG Audio Layer 3 · AVI — Audio Video Interleave (Microsoft) · WAV — sound file
UPS — Uninterruptible Power Supply (backup power) · VDU — Visual Display Unit · CRT/LCD/LED — Cathode Ray Tube / Liquid Crystal / Light Emitting Diode
DPI — Dots Per Inch · bps — bits per second · GHz — GigaHertz
OOP — Object Oriented Programming · IDE — Integrated Development Environment · API — Application Programming Interface · SDK — Software Development Kit
SDLC — Software Development Life Cycle · SRS — Software Requirements Specification · UML — Unified Modeling Language · UAT — User Acceptance Testing
CIDR — Classless Inter-Domain Routing · OSPF — Open Shortest Path First · RIP — Routing Information Protocol · ICMP — Internet Control Message Protocol · ARP — Address Resolution Protocol
JVM — Java Virtual Machine · JDK — Java Development Kit · CSS — Cascading Style Sheets · PHP — Hypertext Preprocessor · XML — eXtensible Markup Language
VIRUS — Vital Information Resource Under Siege (quiz form) · VLSI — Very Large Scale Integration · IC — Integrated Circuit · TTL — Transistor-Transistor Logic
| Days | Do |
|---|---|
| Day 1–2 | Ch 1 (C/OOP) + Ch 2 (DSA). Hand-trace every code example; rewrite the complexity table from memory. |
| Day 3–4 | Ch 3 (OS) + Ch 4 (DBMS). Solve the scheduling and page-fault examples on paper yourself; write the normalization chain from memory. |
| Day 5–6 | Ch 5 (Networks) + Ch 6 (DLD). Do 5 fresh subnetting problems and 3 K-map simplifications you invent yourself. |
| Day 7–8 | Ch 7 (Architecture/8086) + Ch 8 (Discrete). Pipeline formula + physical-address calculation until automatic. |
| Day 9 | Ch 9 (SE + Compiler) + Ch 13 (written comparisons) — practice writing 5 comparisons in 3–4 points each, by hand. |
| Day 10–11 | Ch 10–12 (Quant, Analytical, English). Time yourself: 60 seconds max per math problem. |
| Day 12–13 | Full revision pass of all chapters — only the highlighted terms, tables, and boxes. |
| Day 14 | Solve your uploaded question banks (Father of Admission Test MCQs + Examveda) as a mock exam. Mark misses; re-read only those sections here. |
| Day 15–19 | Daily: Ch 14 rapid-fire + full forms (20 min), one subject deep-revise per day, one timed mock. |
| 19 July night | Only Ch 14 + your personal mistake list. Sleep early. No new topics. |
Honest note: no single document can guarantee 100% — exams always throw one or two surprises — but this book covers the full syllabus that CUET/BUET/KUET/JU M.Sc. papers have actually drawn from, and if the highlighted facts, tables, and worked methods here are automatic for you, you are prepared for the overwhelming majority of what will appear. Combine it with the two question-bank PDFs you already have (use them as mocks, this book as the theory), and you're set.