Search

Memory II

आज Hindi के इस C/C++ programming language tutorial को आगे बढ़ाते हुए हम Memory के बारे में थोडा और जानेंगे. पिछली बार हमने यह जाना कि computer एक बार में 1 byte(8 bits) read करता है. चूंकि हर 1 bit में 0 या 1 मेंसे कुछ store हो सकता है इसलिए 1 byte में 00000000 से लेकर 11111111 तक की कोई भी संख्या (8 अंको की binary संख्या) store हो सकती है. लिखने और पढ़ने में 00000000 और 11111111 आसान नहीं है इसलिए हम इसे decimal में convert करके पढते हैं.00000000 = 0 (in decimal)11111111 = 28-1 = 255 (in decimal)इसलिए इस 8 bit या 1 byte में 0 से 255 तक की कोई भी संख्या store हो सकती है.इसी तरह अगर हमें और ज्यादा बड़ी संख्या store करना हो तो हम 2 byte को एक साथ लेकर उसमे store करेंगे. 2 byte में 00000000 00000000 से 11111111 11111111 यानी 0 से 65535 तक कि संख्या store हो सकती है. अब हम देखते हैं कि विभिन्न datatype किस तरह से store किये जाते हैं.char:ASCII tableको देखिये इसमें हर एक अक्षर(character) के सामने एक Decimal संख्या लिखी हैं. जब हम char variable में कोई अक्षर store करते हैं तो computer उस अक्षर के सामने वाली संख्या को store कर देता है. जैसे कि अगर हम 'a' store करते हैं तो उसके सामने लिखी संख्या 97(01100001) store हो जायेगी. उस table के अनुसार किसी भी अक्षर को store करने के लिए 255 से बड़ी संख्या की जरूरत नहीं है इसलिए char को store करने के लिए 1 byte memory कि जरूरत होती है.short int: short int variable 2 byte(16 bits) में store होता है. 2 byte में 0 से 65535(216-1) तक कि संख्या store कर सकते हैं. चूंकि short int negative value भी ले सकता है इसलिए यह -32768(-215) से 32767(215-1) तक के मान ले सकता है.unsigned short int: यह भी 2 byte कि जगह लेता है परन्तु negative value नहीं ले सकता इसलिए 0 से 65535 तक के मान ले सकता है.int: यह 4 byte लेता है और negative value भी ले सकता है इसलिए -231से 231-1 तक की value ले सकता है.unsigned int: यह भी 4 byte लेता है परन्तु केवल positive value इसलिए 0 से 232-1 तक की value ले सकता है.float: इसके store करने का format complex है क्योंकि यह दशमलव value भी ले सकता है. यह 4 byte लेता है.double: यह 8 byte लेता है और दशमलव value भी लेसकता है.इसी  तरह कुछ और भी datatype होते हैं जिनके बारे में जानना अभी आवश्यक नहीं है.पिछली बार हमने देखा था कि computer, memory को एक एक byte read कर सकता है. हर byte का एक address होता है जैसे पहली byte का address 0, दूसरी byte का address 1... इस तरह से. जब computer किसी variable की value memory में कहीं किसी byte पर लिखता है तो उस byte का address भी याद रखता है. अगर कोई variable(जैसे int) एक से ज्यादा byte लेता है तो continuous store करते हुए पहली byte का address याद रखा जाता है. जैसे कि अगर int(4 bytes) 101st byte से104th byte तक store हुआ है तो इस int का address 101 हुआ.अब आप pointer के बारे में जानने के लिए ready है. अगली बार हम pointer के बारे में पढेंगे.

Share this

Related Posts

Previous
Next Post »

Thnx