Mga computerInformation technology

Representasyon ng mga numero sa isang computer. Representasyon ng integers at tunay na mga numero sa ang computer memory

Sinuman na kailanman naisip sa aking buhay na upang maging ang "pros" o system administrator, o lamang i-link ang pulutong na may computer na teknolohiya, kaalaman tungkol sa kung paano ang mga representasyon ng mga numero sa ang computer memory, ay ganap na kinakailangan. Pagkatapos ng lahat, batay sa mababang antas ng programming wika tulad ng Assembler. Samakatuwid, ngayon isaalang-alang namin ang mga representasyon ng mga numero sa ang computer at paglalagay sa kanila sa mga cell memory.

notasyon

Kung binabasa mo ang artikulong ito, ikaw ay malamang na malaman ang tungkol dito, ngunit ito ay nagkakahalaga ng paulit-ulit. Ang lahat ng data sa isang personal computer ay naka-imbak sa binary number system. Ang ibig sabihin nito na ang anumang mga numero na inyong dapat isumite ang naaangkop na form, na binubuo ng mga zero at mga.

Upang maglipat ng mga kinaugalian na para sa amin decimal na numero sa isang form naiintindihan computer, dapat mong gamitin ang algorithm ng inilarawan sa ibaba. Mayroon ding mga pinasadyang mga calculators.

Kaya, upang ilagay ang mga numero sa binary system, kailangan mo upang kunin ang aming napiling halaga at hahatiin sa 2. Pagkatapos nito, makuha namin ang resulta at ang natitira (0 o 1). Result 2 muling hatiin at kabisaduhin nalalabi. Ang pamamaraan na ito ay dapat na paulit-ulit hangga't ang resulta din ay magiging 0 o 1. Pagkatapos isulat ang pangwakas na halaga at ang labi sa reverse pagkakasunud-sunod, ayon sa aming tinanggap ang mga ito.

Iyon ay eksakto kung ano ang nangyayari sa computer na representasyon ng mga numero. Anumang bilang na naka-imbak sa binary form, at pagkatapos ay gawin ang mga memory cell.

memorya

Tulad ng dapat alam mo na kung ang minimum na impormasyon yunit ay 1 bit. Tulad ng nakita natin, ang representasyon ng mga numero sa ang computer ay tumatagal ng lugar sa binary na format. Sa gayon, ang bawat bit ng memory ay inookupahan ng isang halaga ng - 1 o 0.

Para sa imbakan ng mga malalaking mga numero na ginamit cell. Ang bawat unit ay naglalaman ng 8 bits ng impormasyon. Samakatuwid, maaari naming tapusin na ang minimum na halaga sa bawat memory segment ay maaaring 1 o maging isang walong-byte binary numero.

buo

Sa wakas namin nakuha sa direktang paglalagay ng mga data sa isang computer. Tulad ng nabanggit, ang unang bagay na ang processor ay isinasalin ang impormasyon sa isang binary na format, at lamang pagkatapos ay allocates ang memorya.

Sisimulan naming may ang pinakasimpleng opsyon, na kung saan ay ang representasyon ng integers sa computer. PC memorya ay ilalaan para sa proseso ay ridiculously maliit na bilang ng mga cell - isa lang. Samakatuwid, ang isang maximum ng isang slot ay maaaring maging isang halaga mula 0 hanggang 11111111. ni isalin ang maximum na bilang ng mga entry sa karaniwang anyo Hayaan.
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 × 08-01 Pebrero = 255 .

Ngayon nakita namin na sa isang memory cell ay maaaring nakaposisyon mula 0 hanggang 255. Gayunpaman, ito ay nalalapat lamang sa mga di-negatibong integer. Kung ang computer ay kailangan upang i-record ng isang negatibong halaga, tatakbo ang lahat nang isang maliit na naiiba.

negatibong numero

Ngayon sabihin makita kung paano ang representasyon ng mga numero sa ang computer, kung ang mga ito ay negatibo. Para sa pagsulat ng ang halaga na kung saan ay mas mababa sa zero, itinalaga ng dalawang mga cell memory, o 16 bits ng impormasyon. Kaya 15 ay pumunta sa ilalim ng numero ng kanyang sarili, at ang unang (pinakakaliwa) bit ay ibinibigay sa pamamagitan ng kaukulang marka.

Kung ang bilang ay negatibo, ito ay naitala, "1", kung positibo, pagkatapos ay "0". Para sa kadalian ng memorization, maaari kang gumuhit ng mga sumusunod na pagkakatulad: kung ang pag-sign ay, at pagkatapos ay ilagay ang 1 kung ito ay hindi, at pagkatapos ay wala (0).

Ang natitirang 15 piraso ng impormasyon ay bibigyan ng isang numero. Katulad nito sa naunang kaso, maaari kang maglagay ng isang maximum ng labinlimang mga yunit sa kanila. Dapat ito ay nabanggit na ang pagpasok ng mga negatibo at positibong numero ay makabuluhang naiiba mula sa bawat isa.

Upang mapaunlakan ang 2 memory cells ay mas mataas sa zero o katumbas ng, isang tinatawag na direct code. Ang operasyon na ito ay ginanap sa parehong paraan tulad ng inilarawan sa itaas, at ang pinakamataas na A = 32766, kapag gumagamit decimal notation. Nais lamang na tandaan na sa kasong ito, "0" ay tumutukoy sa mga positibo.

halimbawa

Representasyon ng integers sa computer memory ay hindi tulad ng isang mahirap na gawain. Kahit na ito ay isang bit mas komplikado pagdating sa isang negatibong halaga. Upang i-record ang bilang ng mga na kung saan ay mas mababa sa zero, ang paggamit ng isang karagdagang code.

Upang makakuha ng ito, ang makina ay gumagawa ng isang bilang ng mga auxiliary operasyon.

  1. Unang naitala modulus ng isang negatibong numero sa binary notation. Iyon ay, ang computer Naaalala isang katulad ngunit positibo.
  2. Pagkatapos, isang memory inverting ang bawat bit. Para sa layuning ito, ang lahat ng mga unit ay papalitan sa pamamagitan ng mga zero at vice versa.
  3. Nagdagdag kami ng isang "1" sa resulta. Ito ang magiging karagdagang code.

Narito ang isang matingkad na halimbawa. Ipagpalagay na mayroon kami ng isang bilang ng mga X = - 131. Una, makuha ang modulus | X | = 131 ay pagkatapos ay convert sa isang binary system at ng isang talaan ng 16 mga cell. makuha namin ang X = 0000000010000011. Pagkatapos inverting X = 1111111101111100. Pagdaragdag dito "1" at makuha ang kabaligtaran code X = 1111111101111101. Para sa pagtatala ng isang 16-bit memory cell ay ang minimum na bilang ng X = - (2 15) = - 32,767.

longs

Tulad ng iyong nakikita, ang mga representasyon ng mga tunay na mga numero sa isang computer ay hindi na mahirap. Gayunman, discussion ng saklaw ay maaaring hindi sapat para sa karamihan ng mga operasyon. Samakatuwid, upang mapaunlakan ang malaking bilang ng mga computer na allocates memorya cell 4, o 32 bits.

Ang pag-record proseso ay hindi naiiba mula sa na iniharap sa itaas. Kaya kami lang magbigay ng isang hanay ng mga numero na maaaring naka-imbak sa ganitong uri.

X max = 2147483647.

X min = - 2147483648.

Data halaga sa karamihan ng mga kaso na sapat upang i-record at upang magsagawa ng mga pagpapatakbo sa data.

Representasyon ng mga tunay na mga numero sa isang computer ay may pakinabang at disadvantages. Sa isang banda, ang paraan na ito ay ginagawang mas madali upang magsagawa ng mga pagpapatakbo sa pagitan ng mga halaga ng integer, na lubos na pinapabilis ang processor. Sa kabilang dako, hanay na ito ay hindi sapat na upang malutas ang karamihan sa mga problema sa economics, pisika, arithmetic at iba pang mga agham. Kaya ngayon tinitingnan namin ang isa pang paraan para sa sverhvelichin.

lumulutang na tuldok

Ito ay ang huling bagay na kailangan mong malaman tungkol sa mga representasyon ng mga numero sa isang computer. Dahil may problema sa pagtukoy ng posisyon ng isang kuwit sa kanila, upang mapaunlakan ang naturang mga numero sa isang computer na ginamit ng exponential form kapag sumusulat fractions.

Anumang bilang maaaring katawanin sa sumusunod na anyo X p = m * n. Saan m - ay ang bilang ng mantissa, p - radix at n - ang pagkakasunod-sunod na numero.

Upang ilagay sa pamantayan ang pag-record lumulutang point numero na ginagamit mga sumusunod na kondisyon, ayon sa kung saan ang mantissa module ay dapat na mas mababa sa o katumbas ng 1 / n at mas mababa sa 1.

Ipaalam sa amin number 666.66 ay ibinigay. Ipaalam sa amin ibigay ito sa mga exponential form. Sa x = 0.66666 * 10 Marso. P = 10 at n = 3.

Sa imbakan ng mga lumulutang na halaga ng point ay karaniwang inilalaan 4 o 8 bytes (32 bit o 64). Sa unang kaso ito ay tinatawag na ang bilang ng mga single-katumpakan, habang ang pangalawang - isang double precision.

Sa 4 bytes inilalaan para sa imbakan ng mga numero, 1 (8 bits) na ibinigay sa ibaba sa data na pamamaraan at pag-sign nito, at 3 bytes (24 bits) para sa pag-iimbak ng mantissa iwanan ang kanyang marka at sa parehong prinsipyo tulad ng para sa mga halaga ng integer. Pag-alam ito, maaari naming gawin ang ilang mga simpleng kalkulasyon.

Ang maximum na halaga ng n = 2 1111111 127 = 10. Batay sa ito, maaari naming makuha ang maximum na halaga ng mga numero na maaaring naka-imbak sa computer memorya. X = 2127. Ngayon ay maaari naming kalkulahin ang maximum na posibleng mantissa. Ito ay magiging katumbas ng 23-01 Pebrero ≥ 2 23 = 2 (10 × 2,3) ≥ 1000 2.3 = 10 (3 × 2,3) ≥ 10 ika-7. Bilang isang resulta, makuha namin ang isang tinatayang halaga.

Ngayon, kung pagsamahin namin ang parehong mga pagkalkula, makuha namin ang halaga na maaaring ma-imbak nang walang pagkawala ng 4 bytes ng memorya. Ito ay magiging katumbas ng X = 1.701411 * 10 38. Ang natitirang mga digit ay tinapon, dahil pinapayagan ka upang magkaroon ng isang katumpakan ng ang paraan ng pag-record.

double precision

Dahil ang lahat ng mga kalkulasyon ay ipininta at ipinaliwanag sa nakaraang talata, dito namin sabihin sa iyo ang lahat ng mga napaka-ilang sandali. Para sa double numero katumpakan ay karaniwang inilalaan 11 bits para sa mga order at pag-sign kanyang pati na rin ang 53 bits para sa mantissa.

1111111111 n = 2 1023 = 10.

M = 2 52 -1 = 2 (10 * 5.2) = 1000 5.2 = 10 15.6 . Rounded at makuha ang maximum na bilang = 2 x 1023 hanggang sa "m".

Umaasa kami na ang impormasyon tungkol sa mga representasyon ng integers at tunay na mga numero sa ang computer, na ibinigay namin, ito ay kapaki-pakinabang sa iyo sa pagsasanay at magiging isang maliit na bit mas malinaw kaysa sa kung ano ay karaniwang nakasulat sa mga aklat-aralin.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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