JavaRush /Java Blog /Random-TK /Kompýuter ýadyndaky hakyky sanlar. Düşündiriş
Marianna
Dereje
Москва

Kompýuter ýadyndaky hakyky sanlar. Düşündiriş

Toparda çap edildi
Günüňiz haýyrly bolsun! Ilkinji gözlegiň “Hakyky sanlar bilen işlemegiň nuanslary” leksiýasyny (2-nji bölüm. Floüzýän nokatlaryň gurluşy) we mowzuk boýunça goşmaça leksiýalary öwreneniňizde, köpler bu mowzukda köp soraglara duş gelen bolmaly. Ilki bilen özüme zerur jogaplary bermäge synanyşdym, indi bolsa yzygiderli logiki tertipde doly düşünmegiňiz üçin size hödürleýärin. 1. Onluk we ikilik san ulgamlary. 1.1 Onluk san ulgamy iň köp ýaýran ulgamlaryň biridir, mekdepde, uniwersitetde, durmuşda kompýuter däl matematiki hasaplamalar üçin ulanýan ulgamymyz. 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 (arapça) - jemi 10 san ulanýar . Sanlar üçin rim belligi hem bar, ýöne häzirki wagtda ulanylmaýar. Onluk ulgamynda hasaplamak birliklerde, onlarça, ýüzlerçe, müňlerçe, on müňlerçe, ýüzlerçe müňler, millionlar we ş.m. - başgaça aýdylanda, bularyň hemmesi sanyň sanlary. San belgisi, san ýazgysyndaky sanyň ýagdaýy (ýeri) . Tebigy sanlaryň iň pes belgisi (we iň az ähmiýeti ) birlik sanlarydyr (iň sagda). Näme üçin ol iň ujypsyz? Sebäbi sanyň birlik belgisini taşlamak bilen sanyň özi minimal üýtgär (mysal üçin, 345 we 340 sanlar). Ondan soň ikinji san onlarça san we ş.m. Bularyň hemmesi näme many berýär? Geliň, onluk ulgamdaky islendik bitewi sanlary alalyň we sanlara böleliň . 3297 = 3 * 1000 + 2 * 100 + 9 * 10 + 7 Şeýlelik bilen, 3297 belgisinde dördünji belginiň 3 birligi (ýagny 3 müň), üçünji belginiň 2 birligi (2 ýüz), 9 ikinji sanly birlikler (9 onlarça) we birinji belginiň 7 birligi . Başgaça aýdylanda, bu san üç müň iki ýüz togsan ýedi bolup, degişlilikde pozisiýalydyr . Bölekleýin (hakyky) sanlaryň sanlary barada näme aýdyp bilersiňiz ? Bölekleýin sanlaryň sanlaryna (olaryň bölek bölegi) diýilýär: onunjy, ýüzden, müňden, on müňden we ş.m. San onluk nokatdan näçe uzak bolsa (sanyň ähli böleginden), şonça-da az ähmiýete eýe bolar (ony taşlasaň, sanyň gymmaty az üýtgär). Mysal üçin, onluk hökmünde görkezilen islendik fraksiýa belgisini alalyň: 25.076 = 2 * 10 + 5 + 0 * 0.1 + 7 * 0.01 + 6 * 0,001 Şeýlelik bilen, 25.076 fraksiýa belgisiniň 2 onlarça, 5 birlik, 0 ondan bir böleginiň bardygyny görýäris. , 7 ýüz we 6 müň Onluk ulgamy 10 ýerden 10 san we köpeltmek ulanýar - şonuň üçin "onluk" ady . 1.2 Ikilik san ulgamy, häzirki zaman kompýuterleriň we beýleki hasaplaýyş elektron enjamlarynyň hemmesinde diýen ýaly ulanylýan san ulgamy. Sanlary ýazga almak üçin diňe iki san ulanýar - 0 we 1. San haýsy ulgam ulgamynda ýazylandygyny bulaşdyrmazlyk üçin, sagyň aşaky böleginde görkeziji berilýär (bu san ulgamynyň esasydyr ) mysal: 1000₁₀ 1000₂ Bu ýerde birinji san onluk ulgamda tanyş müň , iň aşaky bölegi ikilik ulgamynyň wekilçiligindäki san we onluk ulgamda deňdir ... 8 ! Onluk ulgamy ýaly, ikilik ulgamy hem sanlary sanlara bölýär . Ikilik belgidäki her san birneme (ýa-da san ) diýilýär. (Kimdir biri gyzyklanýan bolsa, dört bit bir çüýrük (ýa-da tetrad), 8 bit baýt , 16 bit bir söz , 32 bit goşa söz ). Bitler (sanlar) noldan başlap (onluk ulgamdan tapawutlylykda) sagdan çepe sanlanýar . Iň az ähmiýetli, iň az ähmiýetli, sag bitiň yzygiderliligi 0 bolýar . Ondan soň birinji bit, ikinjisi we ş.m. gelýär , näçe uly bolsa , şonça-da möhümdir ( düşünýän onluk ulgamymyz bilen deňeşdirilende - 1455 belgisinden aýyrsaňyz, 1450 belgisi bilen galarsyňyz - ilkibaşdaky bilen deňdir diýen ýaly. Theöne ýüzlerçe adamy aýyrsaňyz, 1050 belgisi bilen galarsyňyz, bu başlangyç bahasyndan has uzakda, sebäbi ýüzlerçe ýer birlikleriň ýerleşişinden has möhümdir (ýokary tertipli). ). Mysal. YET okamaň :))) Kompýuter ýadyndaky hakyky sanlar.  ÖSÜŞ ÜÇIN !!!  - 2 Aşakda, bu fraksiýa ikilik sanyň bitleri gyzyl reňkde sanalýar - jemi bu san 18 bit (san) bar. Öňe seretseň, fraksiýa sanlarynyň kompýuter ýadynda düýbünden başgaça saklanýandygyny belläsim gelýär - bu barada soňrak ara alnyp maslahatlaşylar. Şol wagt, geliň, sanlary bir san ulgamyndan beýlekisine öwürmegi öwreneliň. 2. Bitewi we fraksiýalary onluk ulgamdan ikilik ulgamyna we tersine öwürmek. 2.1 Onlukdan ikile öwürmek. 2.1.1 Bitewi sanlar. Bitewi onluk sanlary ikilik san ulgamyna öwürmek üçin bu belgini 2-ä bölmeli, bölümiň galan bölegini ýazmaly (bu san hatda deň ýa-da üýtgeşikdigine baglylykda hemişe 0 ýa-da 1 deňdir) we bölünişiň netijesini ýene 2-ä bölüň, bölümiň galan bölegini (0 ýa-da 1) ýazyň we netijäni ikinji bölümden ýene 2-ä bölüň. Bölümiň netijesi deň bolýança şu ýoly dowam etdiriň. Ondan soň, hemişe 1-e deň bolan iň soňky bölüniş netijesinden başlap, ýüze çykan nollaryň hemmesini ters tertipde ýazýarys . Möhüm bellik. HER INTEGER-iň yzygiderli bölünmeginiň ahyrky netijesi elmydama bir (1) bolar! Netije 1-den uly bolsa, netijäni alýançak bu netijäni 2-e bölmegi dowam etdirýäris. 2-ä bölmegiň netijesi bolsa diňe bir ýagdaýda nol (0) bolup biler - bu nolyň özi 2-e bölünmegi. Mysal. Geliň, 145 belgisini onluk ulgamdan ikili görnüşe öwüreliň. 145/2 = 72 (galan 1 ) 72/2 = 36 (galan 0 ) 36/2 = 18 (galan 0 ) 18/2 = 9 (galan 0 ) 9/2 = 4 (galan 1 ) 4/2 = 2 (galan 0 ) 2/2 = 1 (galan 0 ) Indi ikilik belgimizi ters tertipde "ýygnaýarys" . 10010001 belgisini alýarys. Boldy! Gyzykly nuans 1. Geliň, 1-nji belgini onluk ulgamdan ikile öwüreliň. Ikilik ulgamynda bu san hem 1 hökmünde ýazylar. Galyberse-de, 1-e deň bolmaly 2-e bölünmegiň soňky netijesi eýýäm 1-nji belgä deňdir. 1₁₀ = 1₂ Gyzykly nuans 2. Geliň onluk ulgamdan ikile çenli 0 sany . Ikilik ulgamynda bu san hem 0 0₁₀ = 0₂ 2.1.2 Bölek sanlar hökmünde ýazylar . Bölekleýin sanlary ikili nädip öwürmeli? Onluk fraksiýany ikilik san ulgamyna öwürmek üçin: a) 2.1.1-nji bölümde öwrenilen algoritm boýunça fraksiýanyň ähli bölegini ikilik ulgamyna öwürmeli b) fraksiýanyň fraksiýa bölegini 2-e köpeltmeli , ýazmaly netijäniň netijesi onluk nokatdan öň . köpeltmek netijesiniň bir bölegi 0-a ýa-da talap edilýän onluk ýerleriň sanyna (zerur takyklyk ) (2-e köpeltmegiň sanyna deň) deň bolýar. Soňra hakyky (fraksiýa) sanyň bitewi we bölek böleklerini bölýän nokatdan soň ýazylan nollaryň we ORDER-de ýazylan yzygiderliligi ýazmaly . Mysal 1. Geliň, 2.25 (2 nokat 25 ýüzden) sanlary onluk ulgamdan ikilik ulgamyna öwüreliň. Ikilik ulgamynda fraksiýa 10.01 deň bolar . Muny nädip aldyk? San bitewi bölekden durýar (bir nokada çenli) - bu 2 we bölek bölek - bu 0,25. 1) Bölümiň terjimesi: 2/2 = 1 (galan 0 ) Bölüm 10 bolar . 2) Bölekleýin bölegiň terjimesi. 0,25 * 2 = 0 .5 (0) 0,5 * 2 = 1 .0 (1) Bölekleýin bölek yzygiderli köpelmek netijesinde 0-a deň boldy. Köpeltmegi bes edýäris. Indi sargytda fraksiýa bölegini “ýygnaýarys” - ikilik ulgamynda 0.01 alýarys . 3) Bitewi we fraksiýa böleklerini goşuň - onluk fraksiýanyň 2.25 ikilik fraksiýasyna 10.01 deň boljakdygyny alarys . Mysal 2. Geliň, 0.116 belgisini onluk ulgamdan ikilik ulgamyna öwüreliň. 0.116 * 2 = 0.232 (0) 0.232 * 2 = 0.464 (0) 0.464 * 2 = 0.928 (0) 0.928 * 2 = 1.856 (1) // bu netijäniň bitewi bölegini taşlaň 0.856 * 2 = 1 .712 (1 ) // bu netijäniň ähli bölegini taşlaň 0.712 * 2 = 1 .424 (1) // bu netijäniň ähli bölegini taşlaň 0.424 * 2 = 0 .848 (0) Görşümiz ýaly köpeltmek dowam edýär , netijäniň fraksiýa bölegi 0-a deň bolmaz. Soňra onluk fraksiýamyzy nokatdan soň (fraksiýa böleginde) 7 onluk ýeriň (bitiň) takyklygy bilen ikili görnüşe öwürmek kararyna gelýäris. Ujypsyz bitler hakda öwrenen zatlarymyzy ýada salalyň - bit (bit) tutuş bölekden näçe uzak bolsa, ony äsgermezlik etmek aňsat bolar (leksiýanyň 1-nji bölüminde düşündiriş, ýatdan çykardy). Nokatdan soň 7 bit takyklygy bilen ikilik fraksiýasyny 0.0001110 alýarys . 2.2 Ikilikden onluga öwürmek. 2.2.1 Bitewi sanlar. Tutuşlygyna terjime etmekikilik san ulgamyndan onluga çenli san, bu sanlary sanlara (bitlere) bölmek we her sanlary (bitleri) 2 san bilen belli bir polo positiveitel derejä köpeltmek zerurdyr (bu dereje sagdan çepe iň az ähmiýete eýe bolup başlaýar) (sag tarap) we 0-dan başlaýar ). Başga sözler bilen aýdylanda, ikisiniň güýji berlen bitiň sanyna deňdir (ýöne bu ýazylmadyk düzgün diňe bitewi sanlary üýtgeden ýagdaýynda ulanylyp bilner , sebäbi fraksiýa sanlary üçin bitleriň sanlary terjime edilýän fraksiýa böleginde başlaýar. onluk ulgamyna başgaça ). Ondan soň emele gelen önümleri goşmaly . Mysal. 110011 ikilik belgisini onluk san ulgamyna öwüreliň . 110011₂ = 1 * 2⁵ + 1 * 2⁴ + 0 * 2³ + 0 * 2² + 1 * 2¹ + 1 * 2º = 32 +16 +0 + 0 + 2 + 1 = 51₁₀ Netijede, 51-nji belgini alarys ikilik ulgamy. Maglumat üçin aşakda 2 belginiň ilkinji güýçleriniň tablisasy bar . YET okamaň :))) Kompýuter ýadyndaky hakyky sanlar.  ÖSÜŞ ÜÇIN !!!  - 5 !! Sanlaryň nol güýjüniň hemişe 1. 2.2.2 Bölek sanlardygyny ýadyňyzdan çykarmaň . Ikitaraplaýyn fraksiýa (hakyky) sanlary onluga öwürmek üçin aşakdakylary etmeli: a) 2.2.1-nji bölümdäki algoritm boýunça bitewi bölegini onluga öwürmeli ; b) fraksiýa bölegini aşakdaky ýaly terjime ediň . Bölekleýin bölegi belli bir otrisatel güýje ( nokatdan soň birinji san güýji (fraksiýanyň ähli böleginden soň) -1-e deň boljak sanlaryň önümleriniň jemi hökmünde görkezmeli . nokatdan soň ikinji san üçin -2 we ş.m. deň bolar.) Netijede bu mukdar onluk ulgamdaky sanyň bölekleýin bölegi bolar. Mysal. 10111.01 belgisini ikilik ulgamyna öwüreliň . 10111.01₂ = (1 * 2⁴ + 0 * 2³ + 0 * 2² + 1 * 2¹ + 1 * 2º). (0 * 2ˉ¹ + 1 * 2ˉ²) = (16 + 0 + 4 + 2 + 1). (0 + 0.25) = 23.25₁₀ Netijede, onluk san ulgamynda 23.25 belgini alarys. 2-iň ilkinji negatiw güýçleriniň tablisasy aşakda berilýär. 2.2.3 Sanlary ikilikden onluga öwürmegiň umumy formulasy. Sanlary ikilikden onluga (bitewi we bölek bölekleri) öwürmek üçin umumy formula bereliň. bu ýerde A ikilik san ulgamynda san; San ulgamynyň binýady 2 (her bit güýji 2-e köpeldýär); nYET okamaň :))) Kompýuter ýadyndaky hakyky sanlar.  ÖSÜŞ ÜÇIN !!!  - 7 YET okamaň :))) Kompýuter ýadyndaky hakyky sanlar.  ÖSÜŞ ÜÇIN !!!  - 4- bitewi sanlaryň sany (bitler) ; m - bu fraksiýa sanlaryň (bitleriň) sany . Bölünýän nokatdan bitewi bölegiň birinji bölegi gyzyl reňkde görkezilýär. Elmydama nol güýje 2 bilen köpeldilýär. Ondan öň indiki bölek (çepde) birinji güýje 2 we köpeldilýär we ş.m. Bölünýän nokatdan fraksiýa böleginiň birinji bölegi ýaşyl reňkde görkezilýär. Elmydama minusyň birinji güýjüne 2 bilen köpeldilýär. Sag tarapdaky indiki bit minus ikinji güýje we ş.m. 2-e köpeldilýär. 3. Ylmy bellik: iki ulgamda-da kadalaşdyrylan bellik. Mantissa, eksponent, eksponent derejesi. 3.1 San ýazmagyň ekspensial görnüşi. Ozal pozisiýa sanlaryny san bilen ýazga almagyň jikme-jik shemasyny öwrenýärdik . Geliň, 0.0000000000000000000016 belgisini alalyň . Adaty görnüşde gaty uzyn ýazgy bar . Eksponensial görnüşde bolsa şeýle bolar: 1.6 * 10ˉ²¹ Onda sanyň ekspensial görnüşi näme we sanlary bu görnüşde nädip görkezmeli? San üçin ylmy bellik, hakyky sanlaryň mantissa we eksponent hökmünde görkezilmegi . Örän uly we gaty az sanlary görkezmek, şeýle hem ýazgylaryny birleşdirmek üçin amatly. N = M * pⁿ bu ýerde N ýazyljak san, M sanyň mantisasy , p esasy (berlen sanyň san ulgamynyň bazasyna deňdir), n (bitewi) tertip (dereje ) , polo positiveitel we otrisatel bolup biler), n-iň güýjüne häsiýetli sanlar (eksponent, ýagny güýç (tertip) ýokarlandyrylan esas). Möhüm nuans. Eger onluk sanyň bitewi bölegi 0-dan tapawutly bolsa , onda görkezijiniň tertibi (derejesi) polo beitel bolar , eger bitewi bölek 0-a deň bolsa , eksponentiň derejesi negatiw bolar . 3.2 writingazuw sanlarynyň adaty we kadalaşdyrylan görnüşi. Sanyň adaty görnüşi, mantisanyň (alamaty hasaba almazdan) ýarym aralykda ýerleşýän görnüşidir, ýagny 0 <= M <1. Bu ýazuw görnüşi a kemçilik : käbir sanlar düşnüksiz ýazylýar (mysal üçin, 0.0001 0.000001 * 10², 0.00001⋅10¹, 0.0001⋅10º, 0.001⋅10ˉ¹ we ş.m.) ýazylyp bilner. Şonuň üçin ýazga geçirmegiň başga bir görnüşi giňden ýaýrandyr (esasanam kompýuter biliminde) - kadalaşdyonluk belginiň mantisasy 1 (öz içine alýan) -dan 10 (eksklýuziw) -e çenli bahalary alýar, ýagny 1 <= M <10 (şuňa meňzeşlikde ikilik sanyň mantisasy 1-den 2-e çenli bahalary alýar ). Başga sözler bilen aýdylanda, onluk ulgamdaky mantissa 1,0 (öz içine alýan) -dan 10 (eksklýuziw) -e çenli fraksiýa san bolmaly . mantisanyň bitewi bölegi bir san bolmaly we fraksiýa bölegi matematiki taýdan çäkli däl. Adatylaşdyrylan görnüşiň artykmaçlygy , şeýlelik bilen, islendik san (0-dan başga) özboluşly görnüşde ýazylýar. Adetmezçiligi , bu görnüşde 0-ny görkezmek mümkin däl, şonuň üçin sanlaryň kompýuter biliminde görkezilmegi 0 belgisi üçin ýörite belgi (bit) üpjün edýär. 3.3 Onluk sanlary ekspensial kadalaşdyrylan görnüşde ýazmagyň mysallary. Mysallara seredeliň . Mysal 1. Geliň, onluk sany 1015000 (bir million on bäş müň) ekspensial kadalaşdyrylan görnüşde ýazalyň. Bu san üçin san ulgamy onlukdyr, şonuň üçin esas 10 bolar . Mantisany saýlalyň . Munuň üçin sanlary fraksiýa hökmünde göz öňüne getiriň, bölek bölegi nola deň bolar (san bitewi bolany üçin): 1000000.0. Sanyň bitewi bölegi 0 -dan uly bolsa, bitewi bölekde diňe bir san galýança nokady başlangyç ýagdaýynyň çep tarapyna geçiriň (bitewi bölegiň içinde) . Ondan soň bir döwür goýduk. Ujypsyz nollary taşlaýarys (sanyň soňunda). 1.015- e deň bolan sanyň mantisasyny alýarys . Geliň, sanyň esasynyň derejesini (tertibini) kesgitläliň. Bitewi we fraksiýa böleklerini bölýän nokadymyz çep tarapda näçe pozisiýa eýeledi? Alty wezipe üçin Bu sargyt 6 bolar diýmekdir . Bu ýagdaýda tertip polo isiteldir (sanyň bitewi bölegindäki nokady 0-a deň däl). Adatylaşdyrylan görnüşdäki soňky ýazgy: 1.015 * 10⁶ . Bu belgini şu görnüşde ýazyp bileris: 1.015E6 (bu ýerde E6 onluk sanyň görkezijisi , ýagny 10-dan 6-njy güýje çenli). Geliň, özümizi synap göreliň . San üçin ekspensial bellik, sanyň (mantissa) we başga bir sanyň (eksponent) önüminden başga zat däl. 1.015-i 10⁶ köpeltseňiz näme bolar? 1.015 * 10⁶ = 1.015 * 1000000 = 1015000 . Dogry. Bu çemeleşme (kadalaşdyrylan) birmeňzeş ýazgy döretmäge kömek edýär ýokarda görkezilişi ýaly ekspensial görnüşdäki sanlar. Mysal 2. Geliň, onluk hakyky belgini 0.0098 adaty görnüşde ýazalyň. Sanyň esasyny belläliň - 10- a deňdir (onluk san ulgamy). Geliň, sanyň mantisasyny saýlalyň - bu 9,8- e deňdir (sanyň bitewi bölegi nola deňdir, bu nokady birinji möhüm sana süýşürýäris (1-den 9-a çenli aralykda) .Sanyň tertibini kesgitleýäris - nokady üç pozisiýa bilen süýşürdik, bu tertip 3. Pozitiwmi otrisatelmi ýa-da otrisatelmi? Nokaty sag tarapa geçirenimizden (sanyň bölekleýin böleginde), sargyt (güýç) negatiw bolar . Adatylaşdyrylan görnüşdäki sanyň iň soňky ýazgysy 9,8 * 10ˉ³ ýa-da 9.8E-3 . Geliň ýene bir gezek barlap göreliň. 9.8-i 10ˉ³ köpeldiň. 9.8 * 10ˉ³ = 9.8 * 0.001 = 0.0098 . Dogry. Mysal 3. Geliň, onluk hakyky san 3.56- ny kadalaşdyrylan görnüşde ýazalyň. Sanyň esasyny saýlaň - 10- a deňdir (onluk san ulgamy). Sanyň mantisasyny saýlaň - bu ... 3.56 (bitewi san) sanyň bir bölegi bir san, 0-a deň däl. Bu nokadyň hiç ýere süýşürilmeginiň zerur däldigini, sanyň özi mantissa boljakdygyny aňladýar.) Geliň, bazanyň tertibini belläliň: mantissa haýsy san boýunça bolmaly? , sanyň özi bilen deňdir, üýtgemez ýaly köpeldilermi? Bir birlik üçin. Bu buýrugyň nola deň boljakdygyny aňladýar. Adatylaşdyrylan görnüşdäki sanyň soňky ýazgysy 3.56 * 10º ýa-da 3.56E0. 4. Hakyky sanlary kompýuteriň ýadynda saklamak: ýüzüň we iki gezek. 4.1 Görnüşleri ýüzýär we goşa bolýar. Geliň, leksiýamyzyň esasy bölümine geçeliň. Öň bilşimiz ýaly, Java-da hakyky sanlaryň iki görnüşi bar: ýüzmek we goşa . Float görnüşi kompýuter ýadynda 32 bit tutýar we diapazonda baha alyp biler [3.4E-38; 3.4E + 38) (başgaça aýdylanda, 3,4 * 10ˉ³⁸ (şol sanda) bilen 3,4 * 10³⁸ aralygynda (muňa girmeýär). Möhüm nuans 1. loüzýän sanlar polo positiveitel ýa-da otrisatel bolup biler. Aboveokardaky bu aralyk, ýüzýän aralyga girizilen sanlaryň modullaryny görkezmek üçin hödürlenýär. Möhüm nuans 2. 10³⁸ takmynan 2¹²⁷ deňdir, 10 approximately takmynan 2ˉ¹²⁷ deňdir . Şeýlelik bilen, ýüzýän sanlaryň mutlak bahalarynyň aralygyny [3.4 * 2ˉ¹²⁷; 3.4 * 2¹²⁷). Jübüt görnüş kompýuter ýadyndan iki esse köp alýar -64 bit we onluk bahalary kabul edip biler [-1.7E + 308; Degişlilikde 1.7E + 308) . 4.2 Ikilik sanlaryň ekspensial kadalaşdyrylan görnüşi. Sanlaryň ikilik görnüşinde kompýuteriň ýadynda saklanýandygyny bilýäris. Şeýlelik bilen, 1560.256 belgisini (ýüzýän görnüş) alalyň we ikilik ulgamyna pozisiýa görnüşinde öwüreliň: 11000011000.01000001100 . Kompýuteriň ýadynda şeýle saklanar diýip pikir edip bilersiňiz. Emma bu dogry däl! Kompýuter ýadynda ýüzýän we goşa görnüşler ( hakyky ýüzýän nokatlar görnüşleri ) ekspensial kadalaşdyrylan görnüşde saklanýar , ýöne güýjüň esasy 10-a derek 2 bolýar. Bu, ýokarda aýdylyşy ýaly, ähli maglumatlaryň içindäki bolmagy bilen baglanyşyklydyr kompýuter ikilik görnüşinde (bit) şekillendirilýär. Belli bir mukdarda kompýuter ýady bölünýär. Geliň, polo positiveitel sanlary kadalaşdyrylan ekspensial görnüşde görkezeliň: 1.52 * 10¹ . Geljekde, şol bir algoritmi ulanyp, ikilik "ekiz" 1111.00110011001 -ni ekspensial kadalaşdyrylan bellikde görkezeliň : 1) Esasy 2 2 deň bolar ) mantissa 1.11100110011001 3) dereje polo beitel we 3-e deň bolar (nokat 3 bit çepe geçirilýär) onluk ulgamda. Ikilik ulgamyna öwüreliň: 11 . Şonuň üçin ikilik ekspensial kadalaşdyrylan görnüşde 1.11100110011001 * 2¹¹ bolar . 4.3 floüzýän belginiň ekspensial kadalaşdyrylan ikilik görnüşini kompýuteriň ýadynda saklamak. Şeýlelik bilen, hakyky san kompýuter ýadynda ekspensial kadalaşdyrylan ikilik görnüşinde saklanjakdygyna göz ýetirdik . Memoryatda nähili görüner? Floüzýän görnüşini alalyň . Kompýuter her ýüzýän belgisi üçin 32 bit bölýär . Olar aşakdaky ýaly paýlanýar . Bu şekil kompýuterde 32 bitli ýüzýän nomer üçin bölünen ýady shematiki görnüşde görkezýär. YET okamaň :))) Kompýuter ýadyndaky hakyky sanlar.  ÖSÜŞ ÜÇIN !!!  - 5 Bit belgisi gyzyl reňkde görkezilýär . Greenaşyl, belginiň belgisini saklamak üçin bölünen ýadyň bir bölegini (1 bit) görkezýär. Sary, sanyň ekspensial görnüşiniň (8 bit) üýtgän güýjüni (tertibini) saklamak üçin bölünen ýadyň bir bölegini görkezýär. Göksanlaryň kadalaşdyrylan mantisasyny gümürtik birliksiz (23 bit) saklamak üçin bölünen ýadyň bir bölegini aňladýar. Geliň, has içgin seredeliň. 1) Biraz gol çekiň. Iň ähmiýetli (ilki çepden) bit, elmydama belginiň belgisini saklamak üçin bölünýär (san negatiw bolsa 1, san pozitiw bolsa 0). Kadadan çykma nol san bolup biler - programmirlemekde nol hem negatiw, hem polo positiveitel bolup biler . 2) Ondan soň 2-nji bazasy bilen eksponentiň derejesiniň (tertibi) geler . Munuň üçin 8 bit bölünýär. Floüzýän sanlaryň eksponent derejesi , bilşimiz ýaly, otrisatel bolup biler (bitewi bölegi 0 bolan sanlar üçin, 3.3-nji bölüme serediň) we polo positiveitel (bitewi bölegi noldan tapawutly sanlar üçin) we 2ˉ¹²⁷2¹²⁷ aralygynda bolup biler . Teoriýa boýunça, belgi bitinde bolşy ýaly, eksponentiň alamatyny kesgitlemek üçin bir bölek bölmeli. Emma bu dogry däl. Eksponentiň belgisini kesgitlemek üçin birneme ýitirmezlik üçin ýüzýän sanlar ýarym baýt +127 (0111 1111) görkezijisine ofset goşýar . Şeýlelik bilen, kompýuter 2ˉ¹²⁷-den 2¹²⁷ aralygyndaky güýçleriň ýerine 0-dan +254-e çenli bir topar güýç saklaýar - ähli güýç bahalary polo areitel , bellikde goşmaça baýt sarp etmegiň zerurlygy ýok. Görnüşi ýaly, eksponentiň bahasy mümkin bolan gymmata görä ýarym üýtgedilýär . Diýmek, eksponentiň hakyky bahasyny almak üçin, bu ofsetini ýatda saklanýan bahadan aýyrmaly . Memoryatda saklanýan eksponentiň bahasy ofsetden (+127) az bolsa, eksponent negatiwdir: bu mantykly. Mysal. Negativearamaz dereje -18 çalşygyny ýerine ýetireliň . Oňa +127 ofset goşýarys, +108 derejesiniň bahasyny alýarys (hasaplamada 0 derejesini ýatdan çykarmaň). Derejäni ikilik görnüşine öwüreliň: 1101100 Emma dereje üçin 8 bit ýat bölünip berilýär we bu ýerde 7 bitli san alarys. Boş, işlenmedik ýokary sanly (bit) ýerine kompýuter 0 goşýar. Netijede, bu dereje 01101100 görnüşinde kompýuteriň ýadynda saklanar . Göreliň: +108 <+127, bu derejäniň aslynda negatiwdigini aňladýar. Aşakdaky gyzykly tablisa serediň: Ikilik we onluk ulgamlarda ýüzýän sanlaryň kadalaşdyrylan görnüşleriniň güýjüniň mümkin bolan ähli bahalaryny görkezýär. Görşümiz ýaly, ikilik ulgamynda +127 tutuş baýtyň ýarysyna deňdir (8 bit). 3) Galan 23 bit mantissa üçin saklanýar YET okamaň :))) Kompýuter ýadyndaky hakyky sanlar.  ÖSÜŞ ÜÇIN !!!  - on bir. Aöne kadalaşdyrylan ikili mantissa üçin iň ähmiýetli bit (kadalaşdyrylan mantisanyň bitewi bölegi) elmydama 1-e deňdir ( aç-açan diýilýär ), sebäbi mantisanyň sany 1 <= M <2 (we leksiýanyň 2.1.1-nji bölümini ýada salyň). Onlyeke-täk kadadan çykma 0-njy san. Bölünen 23 bitde birligi ýazmagyň we ýadyňy ýitirmegiň manysy ýok, şonuň üçin mantisanyň galan bölegi (bölek bölegi) bölünen 23 bitde ýazylýar. Görnüşi ýaly, ýüzýän sanyň ep-esli böleginiň uzynlygy 24 bolup, şolardan az bölegi saklanýar. Möhüm nuans. Onluk fraksiýa sanlaryny ikilik sanlara öwürenimizde, ikilik ulgamyndaky fraksiýa bölegi köplenç ullakan bolup çykýandygyny ýadymyzdan çykarmaň. Floüzýän belgini saklamak üçin diňe 32 bit bar. Bu ýagdaýda ikilik fraksiýasynyň iň pes, iň az sanlary (bu leksiýanyň 2.1.2-nji bölümini ýadyňyzdan çykarmaň) bölünen ýada goşulmaz we kompýuter olary äsgermezlik eder . Sanyň takyklygy ýitiriler , ýöne görýärsiňiz, bu gaty az. Başgaça aýdylanda, fraksiýa ýüzüşleriniň takyklygy 6-7 onluk ýerdir . 4.4 Sanyň iki esse ekspensial kadalaşdyrylan ikilik görnüşini kompýuteriň ýadynda saklamak. Iki görnüşli hakyky sanlar, käbir aýratynlyklardan başga, kompýuter ýadynda ýüzýän sanlar bilen deň derejede saklanýar . Iki belgili kompýuter ýadynda 64 bit bar. Olar aşakdaky ýaly paýlanýar (çepden saga hem tertipde): 1) Birneme gol çekiň (4.3-nji bölüme serediň). Bu bitiň sanynyň 63 boljakdygyna düşünýäris . 2) dereje (sargyt) Saklamak üçin goşa san 11 bit bölünýär . Dereje çalşygy hem amala aşyrylýar , ýöne goşa sanlar üçin +1023 deň bolar . 3) Mantissa (möhüm bölegi). Saklamak üçin goşa san 52 bit (san) bölünýär . Mundan başga-da, mantisanyň takyk bitewi bölegi ýatda saklanmaýar . Bölekleýin jübütleriň takyklygynyň takmynan 16 onluk ýerdigini hem bellemelidiris . 4.5 Kompýuter ýadynda onluk ulgamyň hakyky sanyny görkezmegiň mysallary. Leksiýamyzyň soňky nokady, mowzuga düşünmegi berkitmek üçin onluk san ulgamynyň bölek sanlaryny kompýuter ýadynda saklamak görnüşine öwürmegiň mysaly bolar. Mysal 1. San alyň -4üzmek görnüşi. Geliň, bu leksiýada açan zatlarymyzy ýada salmak bilen, ikilik san ulgamynda ekspensial kadalaşdyrylan görnüşde hödürläliň. 1) Sanyň bitewi bölegini ikilik görnüşine öwüriň : 4/2 = 2 ( 0-njy bölümiň galan bölegi ) 2/2 = 1 ( 0- njy bölümiň galan bölegi ) Bitewi bölek ikilik ulgamynda 100 -e deň bolar . 2) Sanyň fraksiýa bölegini ikilik görnüşine öwüriň . 0,25 * 2 = 0,5 ( 0 ) 0,5 * 2 = 1.0 ( 1 ) Bölekleýin bölek ikilik ulgamynda 0.01 deň bolar . 3) Şeýlelik bilen -4.25₁₀ = -100.01₂ . 4) Geliň -100.01₂ belgisini ikilik san ulgamynda ekspensial kadalaşdyrylan görnüşe öwüreliň (güýjüň esasy 2 bolar diýmekdir). -100.01₂ = -1.0001 * 2² Derejäniň bahasyny onluk formatdan ikili görnüşe öwüreliň . 2/2 = 1 (galan 0 ) Dereje 10₂. Ikilik ekspensial kadalaşdyrylan görnüşdäki -4.25₁₀ belginiň -1.0001 * 2¹º deň boljakdygyny alýarys, kompýuteriň ýadynda nähili görünjekdigini ýazalyň . Bellik biti 1 bolar (negatiw san). Eksponentiň ofset 2 + 127 = 129₁₀ = 10000001₂ deňdir, gytaklaýyn birini mantisadan aýyrýarys, 0001000000000000000000000 alýarys ( işlenmedik pes tertipli bitleri nol bilen doldurýarys ). Aşakdaky setir. 1 10000001 00010000000000000000000 - ine -4,25 belgisi kompýuteriň ýadynda şeýle saklanýar. Mysal 2. floüzýän belgini 0.75₁₀ kompýuter ýadynda ikilik saklaýyş görnüşine öwüriň . Netije 0 01111110 100000000000000000000000 bolmaly . Üns bereniňiz üçin sag boluň.
Teswirler
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION