CBSE कक्षा 11 कंप्यूटर विज्ञान
अध्याय: 3
1. कंप्यूटर प्रणाली और संगठन
कंप्यूटर का मूल संगठन · सॉफ़्टवेयर के प्रकार · ऑपरेटिंग सिस्टम · बूलियन तर्क · संख्या पद्धति और कूटन
- कंप्यूटर का मूल संगठन – कंप्यूटर प्रणाली में हार्डवेयर (जिसे छू सकें) और सॉफ़्टवेयर (निर्देश) दोनों होते हैं। इनपुट उपकरण डेटा अंदर लाते हैं, CPU (ALU + कंट्रोल यूनिट + रजिस्टर) उस पर काम करता है, और आउटपुट उपकरण परिणाम देते हैं। मेमोरी एक सीढ़ी जैसी है: रजिस्टर और कैश छोटे पर सबसे तेज़, प्राथमिक मेमोरी (RAM, ROM) चलते प्रोग्राम रखती है, और द्वितीयक भंडारण (HDD, SSD, पेन ड्राइव) डेटा हमेशा के लिए रखता है। 8 बिट = 1 बाइट, और KB से आगे हर इकाई पिछली की 1024 गुना है।
- कंप्यूटर और संगणन: विकास, भाग और इनपुट-आउटपुट उपकरण – कंप्यूटर एक इलेक्ट्रॉनिक मशीन है जो इनपुट लेती है, प्रोग्राम के अनुसार उस पर काम करती है, डेटा सहेजती है और आउटपुट देती है। अबेकस से स्मार्टफ़ोन तक उपकरण बदलते गए। हर कंप्यूटर में इनपुट इकाई, CPU, मेमोरी और आउटपुट इकाई होती है, जो बस और पोर्ट से जुड़ी रहती हैं।
- सॉफ़्टवेयर: सिस्टम और एप्लिकेशन, सामान्य और विशिष्ट – सॉफ़्टवेयर प्रोग्रामों का समूह है। सिस्टम सॉफ़्टवेयर (ऑपरेटिंग सिस्टम, डिवाइस ड्राइवर, यूटिलिटी, भाषा अनुवादक) कंप्यूटर को चलाता और सँभालता है। एप्लिकेशन सॉफ़्टवेयर उपयोगकर्ता का काम करता है। एप्लिकेशन सॉफ़्टवेयर सामान्य उद्देश्य (बहुत लोगों के लिए तैयार) या विशिष्ट उद्देश्य (एक संस्था के लिए बनवाया) हो सकता है।
- सॉफ़्टवेयर के प्रकार – सॉफ़्टवेयर के दो बड़े प्रकार हैं। सिस्टम सॉफ़्टवेयर कंप्यूटर चलाता है: ऑपरेटिंग सिस्टम, यूटिलिटी (एंटीवायरस, डिस्क क्लीनअप, बैकअप, कंप्रेशन) और डिवाइस ड्राइवर। भाषा अनुवादक भी सिस्टम सॉफ़्टवेयर हैं: असेंबलर असेंबली को मशीन कोड बनाता है, कंपाइलर पूरा प्रोग्राम एक साथ बदलता है, और इंटरप्रेटर एक-एक पंक्ति बदलकर चलाता है। एप्लिकेशन सॉफ़्टवेयर उपयोगकर्ता का काम करता है: सामान्य उपयोग (वर्ड प्रोसेसर, ब्राउज़र) या विशेष (एक संस्था के लिए बना)।
- ऑपरेटिंग सिस्टम – ऑपरेटिंग सिस्टम (OS) मुख्य सिस्टम सॉफ़्टवेयर है जो उपयोगकर्ता और हार्डवेयर के बीच रहकर सारे संसाधन संभालता है। इसके कार्य: प्रोसेस प्रबंधन (प्रोग्रामों में CPU बाँटना), मेमोरी प्रबंधन (RAM देना और वापस लेना), फ़ाइल प्रबंधन, उपकरण प्रबंधन (ड्राइवरों से) और सुरक्षा (पासवर्ड, अनुमति)। उपयोगकर्ता OS से यूज़र इंटरफ़ेस से बात करता है: कमांड लाइन (CLI), ग्राफ़िकल (GUI), टच, आवाज़ या हावभाव। उदाहरण: Windows, Linux, macOS, Android, iOS।
- बूलियन तर्क (Boolean Logic) – बूलियन तर्क में केवल दो मान हैं: 1 (सत्य) और 0 (असत्य)। लॉजिक गेट इन पर काम करते हैं: NOT मान उलटता है; AND तभी 1 जब सभी इनपुट 1; OR तब 1 जब कोई भी इनपुट 1; NAND और NOR, AND और OR के उल्टे हैं; XOR तब 1 जब इनपुट अलग हों। सत्य सारणी हर इनपुट संयोजन का आउटपुट बताती है (n इनपुट पर 2ⁿ पंक्तियाँ)। डी मॉर्गन: (A·B)' = A' + B' और (A + B)' = A'·B'। गेटों को जोड़कर लॉजिक सर्किट बनते हैं।
- संख्या पद्धति और कूटन (Encoding) – संख्या पद्धति अंकों और आधार से संख्याएँ लिखने का तरीका है। दशमलव (आधार 10) में 0–9, बाइनरी (आधार 2) में 0 और 1, ऑक्टल (आधार 8) में 0–7, और हेक्साडेसिमल (आधार 16) में 0–9 और A–F। दशमलव से किसी आधार में: आधार से बार-बार भाग देकर शेष नीचे से ऊपर पढ़ें; भिन्न भाग के लिए आधार से गुणा करके पूर्णांक ऊपर से नीचे पढ़ें। दशमलव में: हर अंक × स्थानीय मान, फिर जोड़ें। बाइनरी ↔ ऑक्टल में 3 बिट के समूह, बाइनरी ↔ हेक्स में 4 बिट के। टेक्स्ट कूटन से रखा जाता है: ASCII (7 बिट, 128 अक्षर), ISCII (8 बिट, भारतीय लिपियाँ) और यूनिकोड (हर लिपि), जो UTF-8 (1–4 बाइट) या UTF-32 (4 बाइट) में सहेजा जाता है।
2. संगणनात्मक चिंतन और प्रोग्रामिंग - 1
समस्या समाधान · पायथन की मूल बातें · डेटा प्रकार और संचालक · नियंत्रण प्रवाह · स्ट्रिंग · सूचियाँ · टपल · डिक्शनरी · पायथन मॉड्यूल
- समस्या समाधान का परिचय – कंप्यूटर से समस्या हल करने के चरण: समस्या का विश्लेषण (इनपुट, आउटपुट, नियम), एल्गोरिद्म बनाना (सीमित, स्पष्ट, क्रमबद्ध चरण), प्रोग्रामिंग भाषा में कोड करना, अलग-अलग इनपुट से जाँचना (टेस्ट), और डीबग (गलतियाँ ढूँढकर हटाना)। एल्गोरिद्म को फ़्लोचार्ट (अंडाकार = शुरू/रुको, समांतर चतुर्भुज = इनपुट/आउटपुट, आयत = प्रक्रिया, हीरा = निर्णय, तीर = दिशा) या स्यूडोकोड (सरल संरचित भाषा) में दिखाते हैं। विघटन बड़ी समस्या को छोटी उप-समस्याओं में तोड़ता है।
- पायथन की मूल बातें: मोड, वेरिएबल, डेटा प्रकार और ऑपरेटर – पायथन इंटरैक्टिव मोड (एक-एक पंक्ति) या स्क्रिप्ट मोड (सहेजी गई .py फ़ाइल) में चलता है। ब्लॉक इंडेंटेशन से पहचाने जाते हैं। वेरिएबल मान से बँधे नाम हैं; हर मान का एक डेटा प्रकार होता है, और कुछ प्रकार परिवर्तनशील हैं। ऑपरेटर व्यंजक बनाते हैं जिन्हें पायथन प्राथमिकता के क्रम से हल करता है। input() टेक्स्ट पढ़ता है, int()/float()/str() प्रकार बदलते हैं, और डिबगिंग से सिंटैक्स, रनटाइम और तार्किक त्रुटियाँ ठीक होती हैं।
- Python से शुरुआत – Python उच्च स्तरीय, मुफ़्त व ओपन सोर्स, इंटरप्रेटेड, पोर्टेबल और केस-सेंसिटिव भाषा है जो पढ़ने में आसान है। इसे इंटरैक्टिव मोड (>>> के बाद लिखो, परिणाम तुरंत) या स्क्रिप्ट मोड (.py फ़ाइल में सेव करके चलाओ) में चलाते हैं। इसके कैरेक्टर सेट में अक्षर, अंक, विशेष चिह्न, खाली जगह और यूनिकोड अक्षर हैं। प्रोग्राम की सबसे छोटी इकाई टोकन है: कीवर्ड, पहचानकर्ता, लिटरल, ऑपरेटर और विराम चिह्न। वेरिएबल एक नाम है जो किसी मान की ओर इशारा करता है; असाइनमेंट में दायाँ भाग (r-value) पहले निकलकर बाएँ (l-value) में रखा जाता है। # से शुरू टिप्पणी को Python छोड़ देता है।
- Python में डेटा प्रकार, ऑपरेटर और त्रुटियाँ – Python में हर मान का एक डेटा प्रकार है: संख्याएँ (int, float, complex), bool (True/False), None, अनुक्रम (str, list, tuple) और मैपिंग (dict)। म्यूटेबल प्रकार (list, dict) अपनी जगह बदल सकते हैं; इम्यूटेबल (int, float, bool, str, tuple) नहीं। ऑपरेटर: अंकगणितीय (+ − * / // % **), संबंधपरक (< > <= >= == !=), तार्किक (and, or, not), असाइनमेंट (= += …), पहचान (is) और सदस्यता (in)। प्राथमिकता क्रम तय करती है: ** सबसे ऊपर, or सबसे नीचे। रूपांतरण अंतर्निहित (अपने-आप) या स्पष्ट (int(), float(), str()) होता है। input() हमेशा स्ट्रिंग देता है; print() sep और end के साथ दिखाता है। त्रुटियाँ: सिंटैक्स, रनटाइम (एक्सेप्शन) और लॉजिकल।
- Python में नियंत्रण प्रवाह – नियंत्रण प्रवाह वह क्रम है जिसमें कथन चलते हैं। Python में तीन प्रकार: क्रमिक (ऊपर से नीचे), चयन (if, if-else, if-elif-else) और पुनरावृत्ति (for और while लूप)। ब्लॉक इंडेंटेशन से बनते हैं (कोलन के बाद आमतौर पर 4 स्पेस)। range(start, stop, step) start से stop तक, पर stop शामिल नहीं। while तब तक दोहराता है जब तक शर्त सत्य है। break लूप तुरंत छोड़ता है; continue अगली बारी पर जाता है। लूप के अंदर लूप नेस्टेड लूप है, जो पैटर्न में काम आता है; जोड़ने वाले चर (accumulator) से श्रेणी का योग निकलता है।
- पायथन में नियंत्रण कथन: if-else, while और for – सामान्यतः पायथन पंक्तियाँ एक के बाद एक चलाता है (क्रम)। नियंत्रण कथन यह बहाव बदलते हैं। if-else दो में से एक रास्ता चुनता है; if-elif-else कई में से पहली सच्ची शर्त चुनता है। while शर्त सच रहने तक ब्लॉक दोहराता है; for किसी क्रम, जैसे range(start, stop, step), के हर आइटम के लिए एक बार चलता है।
- Python में स्ट्रिंग – स्ट्रिंग अक्षरों का इम्यूटेबल अनुक्रम है जो एकल, दोहरे या तिहरे उद्धरण चिह्नों में लिखा जाता है। हर अक्षर का धनात्मक इंडेक्स (बाएँ से 0) और ऋणात्मक इंडेक्स (दाएँ से −1) होता है। संक्रियाएँ: + (जोड़ना), * (दोहराना), in / not in (सदस्यता) और स्लाइसिंग s[start:stop:step], जो start से stop तक (stop शामिल नहीं) अक्षर लेती है। ट्रैवर्सल = लूप से हर अक्षर पर जाना। len(), upper(), lower(), title(), capitalize(), count(), find(), index(), replace(), split(), join(), strip(), startswith(), endswith(), isalpha(), isdigit(), isalnum(), islower(), isupper(), isspace() जैसे मेथड मूल स्ट्रिंग बदले बिना नया मान देते हैं।
- Python में लिस्ट – लिस्ट किसी भी प्रकार के मानों का क्रमबद्ध, म्यूटेबल अनुक्रम है, जो वर्ग कोष्ठक में लिखा जाता है: [4, 'a', 2.5]। आइटम इंडेक्स से मिलते हैं (बाएँ से 0, दाएँ से −1) और उसी जगह बदले जा सकते हैं। संक्रियाएँ: + (जोड़ना), * (दोहराना), in / not in (सदस्यता) और स्लाइसिंग। ट्रैवर्सल for या while से। फ़ंक्शन और मेथड: len(), list(), append(), extend(), insert(), count(), index(), remove(), pop(), reverse(), sort(), sorted(), min(), max(), sum()। नेस्टेड लिस्ट में लिस्ट के अंदर लिस्ट होती है, तालिका जैसी (M[पंक्ति][स्तंभ])। मानक प्रोग्राम: अधिकतम, न्यूनतम, औसत, रैखिक खोज और बारंबारता।
- पायथन में list: बनाना, ट्रैवर्स, बदलना और list मेथड – list वर्ग कोष्ठक में लिखा क्रमबद्ध, बदलने योग्य संग्रह है, जैसे [10, 20, 30]। आइटम इंडेक्स (0 से, या अंत से ऋणात्मक) और स्लाइस से मिलते हैं। for लूप से list ट्रैवर्स करते हैं, list परिवर्तनशील है इसलिए आइटम वहीं बदलते हैं, और फ़ंक्शन (len, max, min, sum, sorted, list) व मेथड (append, insert, extend, remove, pop, sort, reverse, count, index, clear) से काम करते हैं।
- Python में टपल – टपल क्रमबद्ध, इम्यूटेबल अनुक्रम है जो गोल कोष्ठक में लिखा जाता है: T = (4, 7, 2)। आइटम इंडेक्स से पढ़े जाते हैं पर बदले, जोड़े या हटाए नहीं जा सकते। एक आइटम वाले टपल में कॉमा चाहिए: (5,)। संक्रियाएँ: + (जोड़ना), * (दोहराना), in / not in, स्लाइसिंग और तुलना। फ़ंक्शन और मेथड: len(), tuple(), count(), index(), sorted(), min(), max(), sum()। टपल असाइनमेंट मानों को क्रम से वेरिएबलों में खोलता है (a, b = 3, 8), और एक पंक्ति में अदला-बदली भी करता है (a, b = b, a)। नेस्टेड टपल में टपल होते हैं, जो (रोल, नाम, अंक) जैसे तय रिकॉर्ड के लिए उपयोगी है।
- Python में डिक्शनरी – डिक्शनरी key: value जोड़ों का म्यूटेबल संग्रह है जो धनु कोष्ठक में लिखा जाता है: D = {'Riya': 91, 'Aman': 85}। मान key से मिलता है (D['Riya']), स्थान से नहीं; न मिलने वाली key पर KeyError। key अनोखी और इम्यूटेबल (संख्या, स्ट्रिंग, टपल) होनी चाहिए; value कुछ भी हो सकती है। D[key] = value नया जोड़ा जोड़ता है या पुराना मान बदलता है। ट्रैवर्सल for key in D से। उपयोगी फ़ंक्शन और मेथड: len(), dict(), keys(), values(), items(), get(), update(), del, clear(), fromkeys(), copy(), pop(), popitem(), setdefault(), max(), min(), sorted()। एक प्रसिद्ध प्रोग्राम स्ट्रिंग में हर अक्षर कितनी बार आया, गिनता है।
- पायथन में डिक्शनरी: कुंजी-मान जोड़े और मेथड – डिक्शनरी घुँघराले कोष्ठक में कुंजी: मान जोड़ों का परिवर्तनशील संग्रह है, जैसे {"Ravi": 85}। कुंजियाँ अद्वितीय और अपरिवर्तनशील होती हैं; मान कुछ भी हो सकता है। d[key] = value से जोड़ा जोड़ते या बदलते हैं, d[key] या d.get(key) से पढ़ते हैं, for k in d से ट्रैवर्स करते हैं, और keys(), values(), items(), update(), pop(), popitem(), clear() जैसे मेथड इस्तेमाल करते हैं।
- Python मॉड्यूल: math, random और statistics – मॉड्यूल एक Python फ़ाइल (.py) है जिसमें तैयार फ़ंक्शन, स्थिरांक और क्लास होते हैं। इसे import module_name (फिर module.function()), import module as उपनाम, या from module import name1, name2 (फिर नाम सीधे) से लाते हैं; from module import * सब लाता है (सलाह नहीं)। math मॉड्यूल: sqrt(), pow(), ceil(), floor(), fabs(), factorial(), gcd(), log(), log10(), sin(), cos(), tan() और स्थिरांक pi व e। random मॉड्यूल: random() (0 ≤ x < 1), randint(a, b) (a से b, दोनों शामिल) और randrange(start, stop, step) (stop शामिल नहीं)। statistics मॉड्यूल: mean(), median() और mode()।
3. समाज, कानून और नैतिकता
डिजिटल पदचिह्न और नेट शिष्टाचार · डेटा सुरक्षा और बौद्धिक संपदा · साइबर अपराध और साइबर सुरक्षा · ई-कचरा, आईटी अधिनियम, प्रौद्योगिकी और समाज
- डिजिटल पदचिह्न और नेट शिष्टाचार – डिजिटल पदचिह्न वह डेटा का निशान है जो हम ऑनलाइन छोड़ते हैं। सक्रिय पदचिह्न जान-बूझकर साझा होते हैं (पोस्ट, कमेंट, फ़ॉर्म); निष्क्रिय पदचिह्न हमारी जानकारी के बिना इकट्ठे होते हैं (कुकीज़, ब्राउज़िंग हिस्ट्री, लोकेशन, IP पता)। ये मिटाना कठिन है और बाद में दूसरे देख सकते हैं। हम डिजिटल समाज में रहते हैं जहाँ पढ़ाई, बैंकिंग, ख़रीदारी और सरकारी सेवाएँ ऑनलाइन हैं; इसका ज़िम्मेदार उपयोगकर्ता डिजिटल नागरिक (नेटिज़न) है। नेट शिष्टाचार: नैतिक (कॉपीराइट मानें, भरोसेमंद जानकारी), सम्मानजनक (निजता, विविधता, बुलिंग नहीं) और ज़िम्मेदार (ज़्यादा निजी बातें नहीं, ट्रोल को जवाब नहीं)। संचार शिष्टाचार: सटीक, विनम्र, विश्वसनीय; सोशल मीडिया शिष्टाचार: सोच-समझकर पासवर्ड और प्राइवेसी, अपलोड से पहले सोचें, साझा करने से पहले जाँचें।
- डेटा सुरक्षा और बौद्धिक संपदा अधिकार – बौद्धिक संपदा (IP) मन की रचना है, जैसे कहानी, गीत, प्रोग्राम, आविष्कार या लोगो। बौद्धिक संपदा अधिकार (IPR) निर्माता को उसके उपयोग पर नियंत्रण देते हैं। कॉपीराइट रचनात्मक कार्य (लेख, संगीत, कला, सॉफ़्टवेयर कोड) को बनते ही अपने-आप बचाता है; पेटेंट नए, उपयोगी आविष्कार को लगभग 20 साल बचाता है और इसके लिए आवेदन करना पड़ता है; ट्रेडमार्क ब्रांड नाम, लोगो और नारे बचाता है। साहित्यिक चोरी दूसरे का काम बिना श्रेय अपना बताना है। उल्लंघन सुरक्षित IP को बिना अनुमति इस्तेमाल करना है। सार्वजनिक लाइसेंस से निर्माता अपनी शर्तों पर साझा करते हैं: रचनात्मक कार्यों के लिए क्रिएटिव कॉमन्स (BY, SA, NC, ND), और सॉफ़्टवेयर के लिए GPL (कॉपीलेफ़्ट: बदला संस्करण खुला रहे) और Apache (उदार: नोटिस रखकर बंद उत्पाद में भी)।
- साइबर अपराध और साइबर सुरक्षा – साइबर अपराध वह अपराध है जिसमें कंप्यूटर, फ़ोन या इंटरनेट साधन या निशाना हो। आम रूप: हैकिंग (बिना अनुमति सिस्टम में घुसना; एथिकल हैकर अनुमति से सुरक्षा जाँचते हैं), ईव्सड्रॉपिंग (चुपके से बातचीत पकड़ना), फ़िशिंग (नकली ईमेल, SMS या वेबसाइट जो पासवर्ड, OTP या कार्ड की जानकारी चुराएँ), रैंसमवेयर (फ़ाइलें बंद करके पैसे माँगने वाला मालवेयर), साइबर ट्रोल (भड़काने वाले अपमानजनक संदेश) और साइबर बुलिंग (ऑनलाइन परेशान करना, धमकाना, अपमानित करना)। मालवेयर: वायरस (फ़ाइलों से फैलता है), वर्म (अपने-आप फैलता है), ट्रोजन (उपयोगी दिखकर पिछला दरवाज़ा खोलता है), स्पाइवेयर और एडवेयर (अनचाहे पॉप-अप विज्ञापन)। सुरक्षित ब्राउज़िंग: https, अपडेट, एंटीवायरस, फ़ायरवॉल, अनजान लिंक नहीं। पहचान सुरक्षा: मज़बूत अलग-अलग पासवर्ड, टू-फ़ैक्टर ऑथेंटिकेशन, OTP कभी साझा नहीं, सोच-समझकर जानकारी देना, साझा उपकरण पर लॉग आउट।
- ई-कचरा, IT अधिनियम, और तकनीक व समाज – ई-कचरा (इलेक्ट्रॉनिक कचरा) फेंके गए बिजली-इलेक्ट्रॉनिक उपकरण हैं, जैसे फ़ोन, कंप्यूटर, बैटरी, चार्जर और मॉनिटर। इनमें कीमती धातुएँ (सोना, चाँदी, तांबा) और ज़हरीले पदार्थ (सीसा, पारा, कैडमियम, ब्रोमीनयुक्त अग्निरोधी) होते हैं। फेंका या जलाया ई-कचरा मिट्टी, पानी और हवा को दूषित करता है और सेहत बिगाड़ता है। सुरक्षित निपटान: कम करें, दोबारा उपयोग करें (डेटा मिटाकर दान/बिक्री), और बाकी अधिकृत रीसाइक्लर या कंपनी की टेक-बैक योजना को दें; भारत में ई-कचरा (प्रबंधन) नियम हैं। सूचना प्रौद्योगिकी अधिनियम, 2000 ई-रिकॉर्ड और डिजिटल हस्ताक्षर को क़ानूनी मान्यता देता है और साइबर अपराध व दंड तय करता है; 2008 के संशोधन ने धारा 66 (हैकिंग जैसे अपराध), 66C (पहचान चोरी), 66D (रूप बदलकर धोखा), 67 (अश्लील सामग्री) जोड़ीं और CERT-In को मज़बूत किया। तकनीक और समाज के मुद्दों में कंप्यूटिंग में लैंगिक अंतर और दिव्यांग लोगों की ज़रूरतें शामिल हैं, जिनका हल प्रोत्साहन, रोल मॉडल, सुलभ सॉफ़्टवेयर और सहायक तकनीक है।