KompjûtersYnformaasje technology

Fertsjintwurdiging fan nûmers yn 'e komputer. Fertsjintwurdiging fan inteken en echte nûmers yn komputer ûnthâld

Wa't hat ea tocht yn myn libben dat te wurden de "pros" of systeembehearder, of gewoan te keppeljen it lot mei computer technology, kennis oer hoe't de fertsjintwurdiging fan nûmers yn 'e kompjûter ûnthâld, is perfoarst nedich. Nei alle gedachten is dit de basis fan lingte fan programmearmooglikheden lykas Assembler. Dêrom sille wy hjoeddedei de fertsjintwurdiging fan nûmers yn 'e komputer beskôgje en harren pleatsing yn spesjale sellen.

Nûmer systeem

As jo dit artikel lêze, dan, wierskynlik, wite jo al oer dizze, mar it wurd wurd werklik. Alle data yn in persoanlike kompjûter wurde opslein yn de binêr getal systeem. Dit betsjut dat elk nûmer yn in passende foarm presintearre wurde, dat is besteande út nullen en ien.

Om it gewoane foar us desimaal nûmers te ferkeapjen nei in soarte, in fergelykbere kompjûter, moatte jo it algoritme hjirûnder beskreaun brûke. Der binne ek spesjalisearre kalkulators.

Dus, om in nûmer yn in binêre nûmer te oersjen, moatte jo de wearde dy't wy troch ús selektearre hawwe, nimme en it diele troch 2. Neitiid krije wy it resultaat en de rest (0 of 1). Resultaat ferdielde 2 werom en tinke op 'e residinsje. Dizze proseduere moat werhelle wurde oant it resultaat ek 0 of 1 is. Skriuw dan de definitive wearde en de residuen yn 'e omkarring, lykas wy se krigen.

Dit is hoe't de getallen yn 'e kompjûter fertsjintwurdige binne. Elke nûmer is skreaun yn binêre foarm, en beset dan in memory location.

Mem

As jo al witte moatte, is it minimale yndieling fan 1 ynformaasje. As wy al sjoen hawwe, is de fertsjinning fan nûmers yn 'e kompjûter yn binêre formaat. Sa wurde elke bit fan ûnthâld beset troch ien wearde - 1 of 0.

Foar opslach fan grutte oantallen brûkt sel. Elke soksoarte ienheid befettet oant 8 bit ynformaasje. Dêrom kinne wy konkludearje dat de minimale wearde yn elk segmint fan memory kin 1 byte wêze of in acht-stelich binêre nûmer wêze.

Folslein

Uteinlik krigen wy de direkte pleatsing fan gegevens yn 'e komputer. As it al sei, wurdt it earste proses de ynformaasje yn binêre formaat oersetten, en allinich pleatst it yn 't ûnthâld.

Wy begjinne mei de ienfâldige ferzje, dy't de fertsjintwurdiging fan inallen is yn 'e kompjûter. PC-spesjaliteit jout dit proses oan ridlik lyts tal selden - mar ien. Sa kin it maksimum yn ien slot wêze fan 0 oant 11111111. Lit it maksimum oantal yn 'e gewoane foarm fan it rekord oersetten.
X = 1 × 2 7 + 1 × 2 6 + 1 × 2 5 + 1 × 2 4 + 1 × 2 3 + 1 × 2 2 + 1 × 2 1 + 1 × 2 0 = 1 × 2 8 - 1 = 255 .

No sjogge wy dat yn ien ûnthâldzelle in wearde fan 0 oant 255 lizze kin, mar jildt allinich foar net-negative intekeningen. As de kompjûter in negatyf wearde nedich hat, sil alles alles wat oars gean.

Negatyf nûmers

Litte wy sjen hoe't de nûmers yn 'e kompjûter fertsjintwurdige binne, as se negatyf binne. Om in wearde te lizzen dat minder as nul is, wurde twa spesjale sellen of 16 bit of ynformaasje opjûn. Yn dat gefal giet it 15 ûnder it nûmer sels, en it earste (ekstreem links) bit wurdt ûnder it oergeunstige teken jûn.

As de sifer negatyf is, dan wurdt "1" skreaun, as positive, dan "0". Foar ienfâldigens fan 'e herinnerings kinne wy in analogy tekenje: as der in teken is, set dan 1, as it net is, dan neat (0).

De oerbliuwende 15 bits fan ynformaasje wurde in nûmer oanwiisd. Sawol mei it foarige gefal kinne se maksimaal fyftjin ienheden sette. It moat bepaald wurde dat de opname fan negative en positive nûmers sterk ferskille fan elkoar.

Om in wearde yn de 2 spesjale sellen grutter te meitsjen as nul of lykweardich is, wurdt de saneamde direkte koade brûkt. Dizze wiziging is op deselde wize lykas hjirboppe beskreaun, en de maksimum A = 32766, by it brûken fan desimale notaasje. Jo wolle gewoan opnimme dat yn dit gefal "0" ferwiist nei de positive.

Foarbylden

Fertsjintwurdige yntegers yn komputer ûnthâld is net sa'n heule opdracht. Hoewol it wat wat komplikte is, as it in negative betsjutting is. Om in nûmer te skriuwen dat minder dan nul is, wurdt in ekstra koade brûkt.

Om it te krijen is de masine in oantal auxiliary operaasjes útfierd.

  1. Earst is it modul fan in negatyf nûmer skreaun yn binêre notaasje. Dat is, dat de kompjûter in simpele, mar positive wearde hat.
  2. Dan wurdt elke spesjale-bit ynvertjoerd. Om dit te dwaan binne alle ienheden ferfongen troch nullen en oarsom.
  3. Add "1" oan it resultaat. Dit sil in ekstra koade wêze.

Hjir is in yllustratyf foarbyld. As wy it nûmer X = -131 hawwe, krije wy earst syn module | X | = 131. Dêrnei oersetten wy it yn in binêre systeem en skriuwe dit yn 16 sellen. Wy krije X = 0000000010000011. Nei de ynverting, X = 1111111101111100. Add to it "1" en krije de omkearde koade X = 1111111101111101. Foar it opnimmen fan in 16-bit ûnthâld sel is it minimum oantal X = - (2 15) = - 32767.

Long integers

As jo sjogge, is de fertsjintwurdiging fan echte nûmers yn in kompjûter net sa dreech. Dit kin lykwols net genôch wêze foar de measte operaasjes. Dêrom hat de kompjûter omtinken foar 4 sellen, of 32 bits.

It proses fan it opnimmen is net ôfwikend fan de hjirboppe presintearre. Dêrmei jouwe wy it berik fan nûmers, dy't opslein wurde yn in beskate type.

X max = 2.147.483.647.

X min = - 2147483648.

Dizze wearden yn 'e measte gefallen binne genôch om opnommen en útfieringen mei gegevens út te fieren.

De fertsjintwurdiging fan echte nûmers yn in kompjûter hat syn foardielen en neidielen. Oan 'e iene kant makket dizze technyk makliker de operaasjes út te fieren tusken yntegerwearden, wêrtroch't de prosessor signifikant fergruttet. Oan 'e oare kant is dit berik net genôch om de measten fan' e problemen fan 'e ekonomy, fysika, arithmetyk en oare wittenskippen te heljen. Dêrom sille wy no noch in oare technyk fine foar superuniverseiten.

Floating point

Dit is it lêste wat jo witte oer de fertsjintwurdiging fan getallen yn in komputer. Sûnt it opnimmen fan fraksjes is in probleem foar it bepalen fan de posysje fan de komma yn har, wurdt in eksponentiale foarm brûkt om sokste sifers yn 'e kompjoeter te pleatsen.

Elke getal kin wurde fertsjintwurdige yn de neikommende foarm X p = m * n. Wêr't m de mantissa is fan in getal, p is de basis fan it nûmerysteem en n is de oarder fan it nûmer.

Om de opname fan floatpuntennûmers te standardisearjen is de folgjende betingst gebrûk, wêrnei't it mantissa-modul grutter as of lyk is 1 / n en minder dan 1.

Stel dat wy in tal 666,66 krije. Lit ús it bringe nei in eksponentiale foarm. Yn x = 0.66666 * 10 maart. P = 10 en n = 3.

Floating-punten wearden wurde meast bewarre yn 4 of 8 bytes (32 of 64 bit). Yn it earste gefal wurdt dit it oantal gewoane prestaasjes neamd, en yn it twadde gefal wurdt it dûbelpresintje neamd.

Fan 'e 4 bytes dy't tawiisd binne foar it opslaan fan sifers, wurde 1 (8 bits) foar gegevens oer de oarder en syn teken jûn en 3 bytes (24 bits) wurde allocearre foar it opslaan fan de mantissa en har teken neffens deselde prinsipes as foar inkelwearden. Wy witte dat wy kinne ienfâldige berekkeningen meitsje.

De maksimale wearde fan n = 2 1111111 127 = 10. Op grûn dêrfan kinne wy de maksimale grutte fan in nûmer krije dat bewarre wurde kin yn it ûnthâld fan 'e kompjûter. X = 2127. No kinne wy de maksimale mantissa's berekkenje. It sil wêze lyk oan 2 23 - 1 ≥ 2 23 = 2 (10 × 2,3) ≥ 1000 2.3 = 10 (3 × 2,3) ≥ 10 7de. As gefolch hawwe wy in ûngewoan wearde krigen.

As wy beide rekken kombinearje, krije wy in wearde dy't skreaun wurde kin sûnder ferlies fan 4 bytes fan ûnthâld. It sil wêze gelyk oan X = 1.701411 * 10 38. De oerbleaune sifers binne ôfwiksele, om't dizze precise is dat dizze metoade fan opnij kin wurde.

Dûbeld presys

Om't alle berekkeningen beskreaun en yn 'e foarige paragraaf ferklearre wurde, sille wy alles wat koarte fertelle. Foar nûmers mei dûbele presys binne meastentiids 11 bitsen foar de oarder en syn teken, al mei 53 bits foar de mantissa, oandien.

1111111111 n = 2 1023 = 10.

M = 2 52 -1 = 2 (10 * 5.2) = 1000 5.2 = 10 15.6 . Ôfrûne en krije it maksimale oantal = 2 X 1023 oant "m".

Wy hoopje dat de ynformaasje oer de fertsjintwurdiging fan inteken en echte nûmers yn 'e komputer dy't wy oanbiede is nuttich foar jo yn trening en sil op syn minst in bytsje better begryp wêze as wat normaal skreaun is yn learboeken.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 fy.atomiyme.com. Theme powered by WordPress.