РачунариИнформациона технологија

Заступљеност бројева на рачунару. Заступљеност целих бројева и стварних бројева у меморији рачунара

Свако ко је икада размишљао да постане "ИТ особа" или администратор система, а једноставно повезује судбину са рачунарском технологијом, знање о томе како је представљање бројева у меморији рачунара апсолутно неопходно. На крају крајева, ово је основа ниских програмских језика, као што је Асемблер. Дакле, данас ћемо размотрити представљање бројева на рачунару и њихово постављање у меморијске ћелије.

Систем број

Ако читате овај чланак, онда, највероватније, већ знате за ово, али вриједи поновити. Сви подаци на личном рачунару чувају се у систему бинарног броја. То значи да било који број мора бити представљен у одговарајућем облику, тј. Састоји се од нула и оних.

Да преведемо децималне бројеве уобичајене за врсту, разумљив рачунар, потребно је да користите алгоритем описан испод. Постоје и специјализовани калкулатори.

Дакле, да би преведли број у систем бинарног броја, потребно је да преузмете вредност коју смо изабрали и подијелимо је 2. Након тога добијамо резултат, а остатак (0 или 1). Поново поделите резултат 2 и запамтите остатак. Ова процедура треба поновити све док резултат није ни 0 или 1. Затим напишите крајњу вредност и остатке у обрнутом редоследу, како смо их примили.

Овако су бројеви представљени на рачунару. Сваки број је написан у бинарном облику, а затим заузима меморијску локацију.

Меморија

Као што већ требате знати, минимална јединица информација је 1 бит. Као што смо већ видели, представљање бројева на рачунару је у бинарном формату. Тако ће сваки бит меморије бити заузет једним вредношћу - 1 или 0.

За складиштење великих бројева се користе ћелије. Свака таква јединица садржи до 8 бита информација. Стога можемо закључити да минимална вредност у сваком сегменту меморије може бити 1 бајт или бити осмоцифрени бинарни број.

Цела

На крају, дошли смо до директног смештаја података на рачунар. Као што је већ речено, пре свега процесор преводи информације у бинарни формат, а потом их ставља у меморију.

Почећемо са најједноставијом верзијом, која представља репрезентацију целих бројева на рачунару. ПЦ меморија додељује овај процес смешно малом броју ћелија - само један. Дакле, максимум у једном слоту може бити од 0 до 11111111. Преводимо максимални број у уобичајени облик записа.
Кс = 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 .

Сада видимо да се у једној меморијској ћелији може пронаћи вриједност од 0 до 255. Међутим, ово се односи само на негативне интегре. Ако рачунар треба да напише негативну вредност, све ће ићи мало другачије.

Негативни бројеви

Да видимо како су бројеви представљени на рачунару, ако су негативни. Да бисте поставили вредност која је мања од нуле, доделиће се две меморијске ћелије или 16 бита информација. У овом случају, 15 се налази испод броја, а први (екстремни леви) бит се даје под одговарајућим знаком.

Ако је цифра негативна, онда је "1" написана, ако је позитивна, онда "0". За једноставност памћења можемо направити аналогију: ако постоји знак, онда подесите 1, ако није, онда ништа (0).

Преосталих 15 бита информација додељено је броју. Слично претходном случају, могу ставити највише петнаест јединица. Треба напоменути да је снимање негативних и позитивних бројева знатно другачије.

Да би се вредност у две меморијске ћелије била већа од нуле или једнака, користи се такозвани директни код. Ова операција се врши на исти начин као што је описано, а максимум А = 32766, ако користимо систем децималних бројева. Само желим да укажем да се у овом случају "0" односи на позитивну.

Примери

Представљање целих бројева у компјутерској меморији није тако тежак задатак. Иако је нешто компликованије, ако је то негативно значење. Да напишете број који је мањи од нуле, користи се додатни код.

Да би га добили, машина изводи низ помоћних операција.

  1. Прво, модул негативног броја је написан у бинарној нотацији. То јест, рачунар памти сличну, али позитивну вредност.
  2. Затим, сваки меморијски бит је обрнут. Да би то учинили, све јединице се замењују нулама и обрнуто.
  3. Додајте "1" у резултат. Ово ће бити додатни код.

Ево илустративног примера. Претпоставимо да имамо број Кс = -131. Прво добијемо модул | Кс | = 131. Затим га преведемо у бинарни систем и записујемо га у 16 ћелија. Добијамо Кс = 0000000010000011. Након инверзије, Кс = 1111111101111100. Додајте му "1" и добијте обрнути код Кс = 1111111101111101. За писање на 16-битну меморијску локацију, минимални број је Кс = - (2 15 ) = - 32767.

Дуги цели бројеви

Као што видите, представљање стварних бројева у рачунару није тако тешко. Међутим, овај опсег можда неће бити довољан за већину операција. Због тога, да би се прилагодили великим бројевима, рачунар издваја из меморије 4 ћелије или 32 бита.

Процес снимања се не разликује од оног који је горе приказан. Дакле, само дајемо распон бројева који се могу чувати у датом типу.

Кс мак = 2 147 483 647.

Кс мин = - 2 147 483 648.

Ове вредности су у већини случајева довољне за снимање и обављање операција с подацима.

Заступљеност стварних бројева на рачунару има своје предности и мане. С једне стране, ова техника олакшава обављање операција између целих вредности, што значајно убрзава процесор. Са друге стране, овај опсег није довољан да би решио већину проблема економије, физике, аритметике и других наука. Дакле, сада ћемо размотрити другу технику за суперуниверзале.

Плутајућа тачка

Ово је последња ствар коју требате знати о представљању бројева на рачунару. Пошто се приликом снимања фракција налази проблем у одређивању положаја зареза у њима, експоненцијални облик се користи за постављање таквих цифара у рачунар.

Сваки број се може представити у следећем облику Кс = м * п н . Где је мантиса броја, п је основа броја система, а н је редослед броја.

За стандардизацију снимања бројева са плутајућим тачкама се користи сљедећи услов, према којем модул мантиса мора бити већи или једнак 1 / н и мањи од 1.

Претпоставимо да нам је дат број 666.66. Хајде да га доведемо у експоненцијалну форму. Испоставило се да је Кс = 0,666666 * 10 3 . П = 10 и н = 3.

Вредности плутајуће тачке обично се чувају у 4 или 8 бајтова (32 или 64 бита). У првом случају то се назива број обичне тачности, ау другом случају се зове двострука прецизност.

Од 4 бајта намењених за меморисање цифара, дата је 1 (8 бита) за податке о поруџбини и његовом знаку, а 3 бајта (24 бита) се додељују за чување мантисе и његовог знака у складу с истим принципима као и за цијеле вриједности. Знајући ово, можемо направити једноставне калкулације.

Максимална вредност н = 1111111 2 = 127 10 . На основу тога можемо добити максималну величину броја који се може чувати у меморији рачунара. Кс = 2 127 . Сада можемо израчунати максималну могућу мантизу. То ће бити једнако 2 23 - 1 ≥ 2 23 = 2 (10 × 2,3) ≥ 1000 2,3 = 10 (3 × 2,3) ≥ 10 7 . Као резултат тога, добили смо приближну вриједност.

Ако сада комбинирамо оба прорачуна, добијамо вредност која се може написати без губитка 4 бајта меморије. То ће бити једнако Кс = 1.701411 * 10 38 . Преостале цифре су одбачене, јер је то прецизност која дозвољава овај начин снимања.

Двострука прецизност

Пошто су сви прорачуни описани и објашњени у претходном параграфу, овде ћемо врло кратко рећи. За бројеве са двоструком прецизношћу, обично су 11 битова додељена за ред и његов знак, као и 53 бита за мантису.

П = 1111111111 2 = 1023 10 .

М = 2 52 -1 = 2 (10 * 5.2) = 1000 5.2 = 10 15.6 . Окренемо се ка већој страни и добијемо максимални број Кс = 2 1023 у оквиру "м".

Надамо се да ће информације о представљању целих бројева и стварних бројева на рачунару који смо вам дали користне за вас у обуци и барем ће бити мало разумљивије од онога што се обично наводи у уџбеницима.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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