KompyutaTeknolojia ya habari

Uwakilishi wa idadi katika kompyuta. Uwakilishi kati ya nambari na nambari ya kweli katika kumbukumbu ya kompyuta

Mtu yeyote ambaye amewahi mawazo katika maisha yangu kwamba kwa kuwa "faida" au msimamizi wa mfumo, au tu kuunganisha kura kwa teknolojia ya kompyuta, elimu juu ya jinsi ya uwakilishi wa idadi katika kumbukumbu ya kompyuta, ni muhimu kabisa. Baada ya yote, kulingana na kiwango cha chini cha lugha hii ya programu kama vile Assembler. Kwa hiyo, leo tunaona uwakilishi wa idadi katika kompyuta na kuweka katika seli kumbukumbu.

nukuu

Kama wewe ni kusoma makala hii, pengine tayari kujua kuhusu hilo, lakini ni thamani ya kurudia. Data yote katika kompyuta binafsi ni kuhifadhiwa katika binary mfumo idadi. Hii ina maana kwamba idadi yoyote lazima kuwasilisha fomu sahihi, ambayo inaundwa na zeros na ndio.

Ili kuhamisha mazoea kwa ajili yetu namba decimal ya fomu kueleweka kompyuta, ni lazima kutumia algorithm hapo chini. Pia kuna calculators maalum.

Hivyo, ili kuweka idadi katika mfumo binary, unahitaji kuchukua thamani yetu waliochaguliwa na kuigawanya na 2 Baada ya hapo, sisi kupata matokeo na salio (0 au 1). Matokeo 2 tena kugawa na kukariri mabaki. Utaratibu huu lazima mara kwa mara kwa muda mrefu kutokana na pia na 0 au 1. Kisha kuandika thamani ya mwisho na mabaki ili reverse, kama tumepokea yao.

Hiyo ni nini hasa kinatokea katika uwakilishi kompyuta ya namba. Idadi yoyote kuhifadhiwa katika miundo, na kisha kuchukua kumbukumbu kiini.

kumbukumbu

Kama ni lazima tayari kujua kiwango cha chini maelezo kitengo ni 1 kidogo. Kama tulivyoona, uwakilishi wa idadi katika kompyuta unafanyika katika muundo binary. Hivyo, kila kidogo ya kumbukumbu huchukuliwa na thamani moja ya - 1 au 0.

Kwa ajili ya kuhifadhi ya idadi kubwa kutumika kiini. Kila kitengo lina 8 bits wa habari. Kwa hiyo, tunaweza kusema kwamba thamani ya chini katika kila sehemu ya kumbukumbu inaweza kuwa 1 au eight-Byte binary idadi.

nzima

Hatimaye tulipata uwekaji wa moja kwa moja ya data katika kompyuta. Kama ilivyoelezwa, muda si processor tafsiri ya habari katika format binary, na kisha tu kutenga kumbukumbu.

Tutaweza kuanza na chaguo rahisi, ambayo ni ya uwakilishi kati ya nambari katika kompyuta. PC kumbukumbu zilizotengwa kwa ajili ya mchakato ni ridiculously ndogo idadi ya seli - moja tu. Hivyo, kiwango cha juu cha yanayopangwa mtu anaweza kuwa thamani kuanzia 0 hadi 11111111. Hebu kutafsiri idadi ya juu ya entries katika mfumo wa kawaida.
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 × Februari 08-01 = 255 .

Sasa tunaona kwamba katika seli moja ya kumbukumbu inaweza kuwa nafasi nzuri kuanzia 0 hadi 255. Hata hivyo, hii inatumika tu kwa integer zisizo hasi. Ikiwa kompyuta unahitaji kurekodi thamani hasi, kila kitu huenda tofauti kidogo.

namba hasi

Sasa hebu angalia jinsi uwakilishi wa idadi katika kompyuta, kama ni hasi. Kwa kuandika thamani ambayo ni chini ya sifuri, kupewa seli za kumbukumbu mbili, au 16 bits wa habari. Hivyo 15 kwenda chini ya idadi yenyewe, na kwanza (kushoto kabisa) bit yameandikwa kwa alama sambamba.

Kama takwimu ni hasi, ni kumbukumbu, "1", kama chanya, basi "0". Kwa urahisi wa kukariri, unaweza kuchora mfano zifuatazo: kama ishara ni, kisha kuweka 1 kama si, basi hakuna (0).

iliyobaki 15 bits wa habari ni kupewa namba. Vile vile kwa kesi ya awali, unaweza kuweka kiwango cha juu ya vipande kumi na tano ndani yao. Ikumbukwe kwamba kuingia kwa idadi hasi na chanya ni tofauti kutoka kwa kila mmoja.

Ili kukidhi 2 seli za kumbukumbu ni mkubwa kuliko sifuri au sawa na, kinachojulikana code moja kwa moja. Operesheni hii ni kazi kwa namna sawa na ilivyoelezwa hapo juu, na kiwango cha juu A = 32766, wakati wa kutumia nukuu ya desimali. Je, unataka tu kuona kwamba katika kesi hii, "0" inamaanisha chanya.

mifano

Uwakilishi kati ya nambari katika kompyuta kumbukumbu si kazi ngumu. Pamoja na kwamba kidogo ngumu zaidi linapokuja suala la thamani hasi. Kurekodi idadi ya ambayo ni chini ya sifuri, kwa kutumia kanuni ya ziada.

Kupata hiyo, mashine inazalisha idadi ya shughuli msaidizi.

  1. Kumbukumbu ya kwanza modulus ya idadi hasi nukuu binary. Hiyo ni, kompyuta anakumbuka kama huu lakini mazuri.
  2. Kisha, kumbukumbu inverting kila kidogo. Kwa ajili hiyo, vitengo wote ni kuchukuliwa na zeros na kinyume chake.
  3. Sisi kuongeza "1" kwa matokeo. Hii itakuwa posta ya ziada.

Hapa ni mfano wazi. Tuseme tuna idadi ya X = - 131. Kwanza, kupata modulus | X | = 131 ni basi waongofu katika mfumo binary na rekodi ya seli 16. Sisi kupata X = 0000000010000011. Baada inverting X = 1111111101111100. Kuongeza dharura "1" na kupata kinyume code X = 1111111101111101. Kwa kurekodi 16-bit kiini kumbukumbu idadi ya chini ya X = - (2 15) = - 32767.

anatamani

Kama unavyoona, uwakilishi wa idadi halisi katika kompyuta ni kwamba ni vigumu. Hata hivyo, mjadala wa aina mbalimbali inaweza kuwa kutosha kwa ajili ya shughuli za zaidi. Kwa hiyo, ili kukidhi idadi kubwa ya kompyuta kutenga kumbukumbu kiini 4, au 32 bits.

mchakato wa kurekodi haina tofauti na ile iliyotolewa hapo juu. Hivyo sisi tu kutoa mbalimbali ya idadi ambayo yanaweza kuhifadhiwa katika aina hii.

X max = 2,147,483,647.

X min = - 2147483648.

Data maadili katika hali nyingi ya kutosha kurekodi na kufanya kazi tarehe data.

Uwakilishi wa idadi halisi katika kompyuta ina faida zake na hasara. Kwa upande mmoja, njia hii inafanya kuwa rahisi kutekeleza shughuli kati ya thamani integer, ambayo kwa kiasi kikubwa kasi processor. Kwa upande mwingine, aina hii haitoshi kutatua matatizo zaidi katika uchumi, fizikia, hesabu na sayansi nyingine. Hivyo sasa tunaangalia njia nyingine kwa sverhvelichin.

yaliyo hatua

Hili ni jambo la mwisho unahitaji kujua kuhusu uwakilishi wa idadi katika kompyuta. Kwa kuwa kuna tatizo kuamua nafasi ya comma ndani yao, ili kuwezesha idadi hiyo katika kompyuta kutumiwa na aina kielelezo wakati wa kuandika namba sehemu.

Idadi yoyote inaweza kuwakilishwa katika zifuatazo aina X n p = m *. Ambapo m - ni idadi ya mantissa, s - radix na n - idadi utaratibu.

Kusanifisha kurekodi yaliyo namba uhakika kutumika hali zifuatazo, kulingana na ambayo mantissa Moduli lazima iwe kubwa kuliko au sawa na 1 / n na chini ya 1.

Hebu simu 666.66 ni kutolewa. Hebu kutoa kwa aina kielelezo. Katika x = 0.66666 * 10 Machi. P = 10 na n = 3.

Kwenye hifadhi ya maadili yaliyo hatua kwa kawaida zilizotengwa 4 au 8 ka (biti 32 au 64). Katika kesi ya kwanza inaitwa idadi ya single-usahihi, wakati ya pili - usahihi mara mbili.

Ya ka 4 zilizotengwa kwa ajili ya uhifadhi wa namba, 1 (8 bits) aliyopewa chini ya data utaratibu na ishara zake, na 3 ka (24 bits) kwa ajili ya kuhifadhi mantissa kuondoka alama yake na kwa kanuni sawa na maadili ya namba kamili. Tunajua, tunaweza kufanya baadhi ya hesabu nyepesi.

thamani ya upeo wa n = 2 1111111 127 = 10. Kulingana na hayo, tunaweza kupata kiwango cha juu cha idadi ambayo yanaweza kuhifadhiwa katika kumbukumbu ya kompyuta. X = 2127. Sasa tunaweza mahesabu ya kiwango cha juu ya uwezekano mantissa. Itakuwa sawa na Februari 23-01 ≥ 2 23 = 2 (10 × 2-3) ≥ 1000 2.3 = 10 (3 × 2-3) ≥ 10 7. Matokeo yake, sisi kupata takriban thamani.

Sasa, kama sisi kuchanganya mbili za hesabu, sisi kupata thamani ambayo yanaweza kuhifadhiwa bila kupoteza ka 4 ya kumbukumbu. Itakuwa sawa na X = 1.701411 * 10 38. ya tarakimu iliyobaki hutupwa, kwa sababu inaruhusu kuwa na usahihi wa njia ya kurekodi.

usahihi mara mbili

Kwa kuwa mahesabu yote kuwa walijenga na kuelezea katika aya ya awali, hapa sisi kukuambia kila baada ya muda mfupi sana. Kwa nambari mbili usahihi ni kawaida zilizotengwa bits 11 kwa utaratibu na ishara zake, na bits 53 kwa mantissa.

1111111111 n = 2 1023 = 10.

M = 2 52 -1 = 2 (10 * 5.2) = 1000 5.2 = 10 15.6 . Mviringo na kupata upeo wa idadi = 2 X 1023 hadi "m".

Ni matumaini yetu kuhusu uwakilishi kati ya nambari na nambari ya kweli katika kompyuta, tumetoa, ni muhimu kwako katika mafunzo na kuwa na kidogo wazi zaidi ya kile ni kawaida yaliyoandikwa katika vitabu vya kiada.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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