CBSE Class 11 Computer Science
Chapters: 3
1. Computer Systems and Organisation
Basic computer organisation · Types of software · Operating system · Boolean logic · Number systems and encoding
- Basic Computer Organisation – A computer system has hardware (parts you can touch) and software (instructions). Input devices bring data in, the CPU (ALU + Control Unit + registers) processes it, and output devices give results. Memory forms a ladder: registers and cache are tiny and fastest, primary memory (RAM, ROM) holds running programs, and secondary storage (HDD, SSD, pen drive) keeps data permanently. Memory is measured in bits and bytes: 8 bits = 1 byte, and each bigger unit (KB, MB, GB, TB, PB) is 1024 times the one before.
- Computers and Computing: Evolution, Parts and I/O Devices – A computer is an electronic machine that takes input, processes it under the control of a program, stores data and gives output. Computing devices grew from the abacus to smartphones. Every computer has an input unit, a CPU, memory and an output unit, joined by buses and ports.
- Software: System and Application, Generic and Specific – Software is a set of programs. System software (operating system, device drivers, utilities, language translators) runs and looks after the computer. Application software does a user's task. Application software can be generic (general-purpose, ready-made for many users) or specific-purpose (customised for one organisation's need).
- Types of Software – Software is of two big kinds. System software runs the computer: the operating system, utility programs (antivirus, disk cleanup, backup, compression) and device drivers. Language translators are also system software: an assembler turns assembly language into machine code, a compiler translates a whole high-level program at once, and an interpreter translates and runs it line by line. Application software does a user's job: general-purpose (word processor, spreadsheet, browser) or customised (made for one organisation).
- Operating System – An operating system (OS) is the main system software that sits between the user and the hardware and manages all resources. Its functions: process management (sharing the CPU between programs), memory management (giving and taking back RAM), file management, device management (through drivers) and security (passwords, permissions). Users talk to the OS through a user interface: command line (CLI), graphical (GUI), touch, voice or gesture. Examples: Windows, Linux, macOS, Android, iOS.
- Boolean Logic – Boolean logic works with only two values: 1 (true) and 0 (false). Logic gates act on them: NOT flips a value; AND gives 1 only if all inputs are 1; OR gives 1 if any input is 1; NAND and NOR are the opposites of AND and OR; XOR gives 1 when inputs differ. A truth table lists the output for every input combination (2ⁿ rows for n inputs). De Morgan's laws: (A·B)' = A' + B' and (A + B)' = A'·B'. Gates joined together form logic circuits that match Boolean expressions.
- Number Systems and Encoding – A number system is a way to write numbers using a set of digits and a base. Decimal (base 10) uses 0–9, binary (base 2) uses 0 and 1, octal (base 8) uses 0–7, and hexadecimal (base 16) uses 0–9 and A–F. To go from decimal to any base, divide repeatedly by the base and read remainders bottom to top; for fractions, multiply by the base and read the integer parts top to bottom. To go to decimal, multiply each digit by its place value and add. Binary ↔ octal uses groups of 3 bits, binary ↔ hex groups of 4. Text is stored with encoding schemes: ASCII (7-bit, 128 characters), ISCII (8-bit, Indian scripts) and Unicode (every script), stored as UTF-8 (1–4 bytes) or UTF-32 (4 bytes).
2. Computational Thinking and Programming - 1
Problem solving · Python basics · Data types and operators · Flow of control · Strings · Lists · Tuples · Dictionaries · Python modules
- Introduction to Problem Solving – Problem solving on a computer has stages: analyse the problem (inputs, outputs, rules), develop an algorithm (a finite, clear, ordered set of steps), code it in a programming language, test it with different inputs, and debug (find and remove errors). An algorithm can be shown as a flowchart (oval = start/stop, parallelogram = input/output, rectangle = process, diamond = decision, arrows = flow) or as pseudocode (structured plain English). Decomposition breaks a big problem into smaller sub-problems that are solved separately and then joined.
- Python Basics: Modes, Variables, Data Types and Operators – Python runs in interactive mode (one line at a time) or script mode (a saved .py file). Blocks are shown by indentation. Variables are names tied to values; every value has a data type, and some types are mutable. Operators build expressions that Python works out by precedence. input() reads text, int()/float()/str() convert types, and debugging fixes syntax, runtime and logical errors.
- Getting Started with Python – Python is a high-level, free and open-source, interpreted, portable, case-sensitive language that is easy to read. You can run it in interactive mode (type after the >>> prompt and see the result at once) or script mode (save code in a .py file and run it). Python's character set includes letters, digits, special symbols, whitespace and all Unicode characters. The smallest units of a program are tokens: keywords, identifiers, literals, operators and punctuators. A variable is a name that refers to a value; in an assignment the right side (r-value) is evaluated first and stored in the left side (l-value). Comments start with # and are ignored by Python.
- Data Types, Operators and Errors in Python – Every value in Python has a data type: numbers (int, float, complex), bool (True/False), None, sequences (str, list, tuple) and mapping (dict). Mutable types (list, dict) can be changed in place; immutable types (int, float, bool, str, tuple) cannot. Operators are arithmetic (+ − * / // % **), relational (< > <= >= == !=), logical (and, or, not), assignment (= += −= …), identity (is, is not) and membership (in, not in). Precedence decides the order of evaluation, with ** highest and or lowest. Type conversion can be implicit (automatic, int → float) or explicit (int(), float(), str()). input() reads text as a string; print() shows output with sep and end. Errors are syntax errors (grammar), runtime errors or exceptions (crash while running) and logical errors (wrong answer).
- Flow of Control in Python – Flow of control is the order in which statements run. Python has three kinds: sequential (top to bottom), selection (if, if-else, if-elif-else) and repetition (for and while loops). Blocks are marked by indentation (usually 4 spaces after a colon). range(start, stop, step) gives numbers from start up to but not including stop. while repeats as long as a condition is true. break exits a loop at once; continue skips to the next turn. A loop inside another is a nested loop and is used for patterns; loops with an accumulator are used for series sums.
- Control Statements in Python: if-else, while and for – Normally Python runs lines one after another (sequence). Control statements change this flow. if-else chooses one of two paths; if-elif-else picks the first true condition from many. while repeats a block while a condition is true; for repeats once for each item of a sequence such as range(start, stop, step).
- Strings in Python – A string is an immutable sequence of characters written in single, double or triple quotes. Each character has a positive index (0 from the left) and a negative index (−1 from the right). Operations: + (concatenation), * (repetition), in / not in (membership) and slicing s[start:stop:step], which takes characters from start up to but not including stop. Traversal means visiting each character with a for or while loop. Built-in methods like len(), upper(), lower(), title(), capitalize(), count(), find(), index(), replace(), split(), join(), strip(), startswith(), endswith(), isalpha(), isdigit(), isalnum(), islower(), isupper() and isspace() return new values without changing the original string.
- Lists in Python – A list is an ordered, mutable sequence of values of any type, written in square brackets: [4, 'a', 2.5]. Items are reached by index (0 from the left, −1 from the right) and can be changed in place. Operations: + (join), * (repeat), in / not in (membership) and slicing. Traversal uses for or while loops. Built-in functions and methods: len(), list(), append(), extend(), insert(), count(), index(), remove(), pop(), reverse(), sort(), sorted(), min(), max(), sum(). A nested list holds lists inside it, like a table (M[row][col]). Standard programs find the maximum, minimum and mean, do a linear search and count the frequency of elements.
- Lists in Python: Create, Traverse, Change and List Methods – A list is an ordered, changeable collection written in square brackets, like [10, 20, 30]. Items are reached by index (from 0, or negative from the end) and slices. We traverse a list with a for loop, change items in place because lists are mutable, and use functions (len, max, min, sum, sorted, list) and methods (append, insert, extend, remove, pop, sort, reverse, count, index, clear) to work with it.
- Tuples in Python – A tuple is an ordered, immutable sequence written in round brackets: T = (4, 7, 2). Items are read by index but cannot be changed, added or removed. A single-item tuple needs a trailing comma: (5,). Operations: + (join), * (repeat), in / not in, slicing and comparison. Functions and methods: len(), tuple(), count(), index(), sorted(), min(), max(), sum(). Tuple assignment unpacks values into variables in order (a, b = 3, 8), which also swaps values in one line (a, b = b, a). A nested tuple holds tuples, useful for fixed records such as (roll, name, marks).
- Dictionaries in Python – A dictionary is a mutable collection of key: value pairs written in curly brackets: D = {'Riya': 91, 'Aman': 85}. Values are reached by key (D['Riya']), not by position; a missing key raises KeyError. Keys must be unique and immutable (numbers, strings, tuples); values can be anything. D[key] = value adds a new pair or changes an existing value. Traversal uses for key in D. Useful functions and methods: len(), dict(), keys(), values(), items(), get(), update(), del, clear(), fromkeys(), copy(), pop(), popitem(), setdefault(), max(), min(), count via loops, and sorted(). A classic program counts how many times each character appears in a string.
- Dictionaries in Python: Key-Value Pairs and Methods – A dictionary is a mutable collection of key: value pairs in curly braces, like {"Ravi": 85}. Keys are unique and immutable; values can be anything. We add or change a pair with d[key] = value, read with d[key] or d.get(key), traverse with for k in d, and use methods such as keys(), values(), items(), update(), pop(), popitem() and clear().
- Python Modules: math, random and statistics – A module is a Python file (.py) containing ready-made functions, constants and classes. You load it with import module_name (then call module.function()), import module as alias, or from module import name1, name2 (then call the name directly); from module import * loads everything (not recommended). The math module gives sqrt(), pow(), ceil(), floor(), fabs(), factorial(), gcd(), log(), log10(), sin(), cos(), tan() and constants pi and e. The random module gives random() (0 ≤ x < 1), randint(a, b) (a to b, both included) and randrange(start, stop, step) (stop excluded). The statistics module gives mean(), median() and mode().
3. Society, Law and Ethics
Digital footprints and netiquette · Data protection and IPR · Cyber crime and cyber safety · E-waste, IT Act, technology and society
- Digital Footprints and Netiquette – A digital footprint is the trail of data we leave online. Active footprints are shared on purpose (posts, comments, forms); passive footprints are collected without us noticing (cookies, browsing history, location, IP address). Footprints are hard to erase and can be seen by others later. We live in a digital society where learning, banking, shopping and government services are online; a responsible user of it is a digital citizen (netizen). Net etiquette means being ethical (respect copyright, share reliable information), respectful (privacy, diversity, no bullying) and responsible (avoid oversharing, don't feed trolls). Communication etiquette asks us to be precise, polite and credible; social media etiquette asks us to choose passwords and privacy settings wisely, think before uploading, and verify before sharing.
- Data Protection and Intellectual Property Rights – Intellectual property (IP) is a creation of the mind, such as a story, song, program, invention or logo. Intellectual Property Rights (IPR) give the creator control over its use. Copyright protects creative works (text, music, art, software code) automatically once created; a patent protects a new, useful invention for about 20 years and must be applied for; a trademark protects brand names, logos and slogans. Plagiarism is presenting someone else's work as your own without credit. Infringement is using protected IP without permission (copyright, patent or trademark infringement). Public licences let creators share on their own terms: Creative Commons (BY, SA, NC, ND) for creative works, and software licences such as GPL (copyleft: modified versions must stay open) and Apache (permissive: can be used in closed products with notices).
- Cyber Crime and Cyber Safety – Cyber crime is any crime that uses a computer, phone or the internet as a tool or target. Common forms: hacking (breaking into a system without permission; ethical hackers test security with permission), eavesdropping (secretly intercepting communication), phishing (fake emails, SMS or websites that trick you into giving passwords, OTPs or card details), ransomware (malware that locks or encrypts files and demands money), cyber trolls (people who post provoking, offensive messages) and cyberbullying (harassing, threatening or humiliating someone online). Malware includes viruses (attach to files and spread), worms (spread by themselves), trojans (look useful but open a back door), spyware and adware (unwanted pop-up ads, often tracking). Safe browsing: https sites, updated software, antivirus and firewall, no unknown links or downloads. Identity protection: strong unique passwords, two-factor authentication, never sharing OTPs, careful sharing of personal details, and logging out on shared devices.
- E-waste, the IT Act, and Technology and Society – E-waste (electronic waste) is discarded electrical and electronic equipment such as phones, computers, batteries, chargers and monitors. It contains valuable metals (gold, silver, copper) and toxic substances (lead, mercury, cadmium, brominated flame retardants). Dumped or burnt e-waste pollutes soil, water and air and harms human health. Safe disposal follows reduce, reuse and recycle: repair and use devices longer, donate or resell working ones after wiping data, and hand the rest to authorised e-waste recyclers or manufacturer take-back schemes; India has E-Waste (Management) Rules. India's Information Technology Act, 2000 gives legal recognition to electronic records and digital signatures and defines cyber offences and penalties; the 2008 amendment added sections such as 66 (computer offences like hacking), 66C (identity theft), 66D (cheating by impersonation) and 67 (obscene content), and strengthened CERT-In. Technology and society issues include the gender gap in computing and the needs of people with disabilities, which are addressed with encouragement, role models, accessible software and assistive technology.