КампутарыІнфармацыйныя тэхналогіі

Прадстаўленне лікаў у кампутары. Прадстаўленне цэлых і рэчыўных лікаў у памяці кампутара

Любому, хто хоць раз задумваўся ў жыцці аб тым, каб стаць "айцішнікаў" ці сістэмным адміністратарам, ды і проста звязаць лёс з вылічальнай тэхнікай, веданне аб тым, як адбываецца прадстаўленне лікаў у памяці кампутара, абсалютна неабходна. Бо менавіта на гэтым грунтуюцца мовы праграмавання нізкага ўзроўню, такія як Assembler. Таму сёння мы разгледзім прадстаўленне лікаў у кампутары і іх размяшчэнне ў вочках памяці.

сістэма злічэння

Калі вы чытаеце дадзены артыкул, то, хутчэй за ўсё, ужо ведаеце пра гэта, але паўтарыць варта. Усе дадзеныя ў персанальным кампутары захоўваюцца ў двайковай сістэме злічэння. Гэта азначае, што любы лік неабходна прадставіць у адпаведнай форме, гэта значыць складаюцца з нулёў і адзінак.

Каб перавесці звыклыя для нас дзесятковыя колькасці да выгляду, зразумеламу кампутара, трэба скарыстацца апісаным ніжэй алгарытмам. Існуюць і спецыялізаваныя калькулятары.

Такім чынам, для таго каб перавесці лік ў двойкавую сістэму злічэння, трэба ўзяць абранае намі значэнне і падзяліць яго на 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 біт інфармацыі адводзяцца пад лік. Аналагічна папярэдняму нагоды, у іх можна змясціць максімум пятнаццаць адзінак. Варта адзначыць, што запіс адмоўных і станоўчых лікаў істотна адрозніваецца адзін ад аднаго.

Для таго каб размясціць у 2 вочках памяці значэнне больш за нуль або роўнае яму, выкарыстоўваецца так званы прамы код. Дадзеная аперацыя вырабляецца гэтак жа, як і было апісана, а максімальнае А = 32766, калі выкарыстоўваць дзесятковую сістэму злічэння. Адразу хочацца адзначыць, што ў дадзеным выпадку "0" ставіцца да станоўчых.

прыклады

Прадстаўленне цэлых лікаў у памяці кампутара не з'яўляецца такой ужо цяжкай задачай. Хоць яна трохі ўскладняецца, калі гаворка ідзе аб адмоўным значэнні. Для запісу колькасці, якое менш за нуль, выкарыстоўваецца дадатковы код.

Каб яго атрымаць, машына вырабляе шэраг дапаможных аперацый.

  1. Спачатку запісваецца модуль адмоўнага ліку ў двайковым злічэння. Гэта значыць кампутар запамінае аналагічнае, але станоўчае значэнне.
  2. Затым праводзіцца інвертавання кожнага біта памяці. Для гэтага ўсе адзінкі замяняюцца нулямі і наадварот.
  3. Прыбаўляем "1" да атрыманага выніку. Гэта і будзе дадатковы код.

Прывядзём наглядны прыклад. Няхай у нас ёсць лік Х = - 131. Спачатку атрымліваем яго модуль | Х | = 131. Затым перакладаем ў двойкавую сістэму і запісваем у 16 вочак. Атрымаем Х = 0000000010000011. Пасля інвертавання Х = 1111111101111100. Дадаем да яго "1" і атрымліваем зваротны код Х = 1111111101111101. Для запісу ў 16-бітную вочка памяці мінімальным лікам з'яўляецца Х = - (2 15) = - 32767.

доўгія цэлыя

Як бачыце, прадстаўленне рэчыўных лікаў у кампутары не так ужо і складана. Аднак разгледжанага дыяпазону можа не хапаць для большасці аперацый. Таму, для таго каб размясціць вялікія ліку, кампутар вылучае з памяці 4 ячэйкі, або 32 біта.

Працэс запісу абсалютна не адрозніваецца ад пададзенага вышэй. Так што мы проста прывядзем дыяпазон лікаў, якія могуць захоўвацца ў дадзеным тыпе.

Х мах = 2 147 483 647.

Х min = - 2147483648.

Дадзеных значэнняў у большасці выпадкаў дастаткова для таго, каб запісваць і праводзіць аперацыі з дадзенымі.

Прадстаўленне рэчыўных лікаў у кампутары мае свае перавагі і недахопы. З аднаго боку, дадзеная методыка дазваляе прасцей вырабляць аперацыі паміж цэлалікавымі значэннямі, што значна паскарае працу працэсара. З іншага боку, дадзенага дыяпазону недастаткова для вырашэння большасці задач эканомікі, фізікі, арыфметыкі і іншых навук. Таму зараз мы разгледзім чарговую методыку для сверхвеличин.

плаваючая коска

Гэта апошняе, што вам неабходна ведаць пра прадстаўленне лікаў у кампутары. Паколькі пры запісе дробаў ўзнікае праблема вызначэння становішча коскі ў іх, для размяшчэння падобных лічбаў у кампутары выкарыстоўваецца экспанентны форма.

Любы лік можа быць прадстаўлена ў наступнай форме Х = m * р п. Дзе m - гэта мантисса колькасці, р - падстава сістэмы злічэння і п - парадак чысла.

Для стандартызацыі запісу лікаў з якая плавае коскі выкарыстоўваецца наступнае ўмова, згодна з якім модуль мантиссы павінен быць больш або роўны 1 / п і менш 1.

Хай нам дадзена лік 666,66. Прывядзём яго да экспаненцыяльнай форме. Атрымаецца Х = 0,66666 * 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 be.atomiyme.com. Theme powered by WordPress.