Пераўтварыце дзесятковы лік у двайковы фармат IEEE 754

Аўтар: John Pratt
Дата Стварэння: 15 Люты 2021
Дата Абнаўлення: 28 Чэрвень 2024
Anonim
Пераўтварыце дзесятковы лік у двайковы фармат IEEE 754 - Парады
Пераўтварыце дзесятковы лік у двайковы фармат IEEE 754 - Парады

Задаволены

У адрозненне ад людзей, камп'ютэры не выкарыстоўваюць дзесятковую сістэму злічэння. Яны выкарыстоўваюць двайковую або двайковую сістэму злічэння з дзвюма магчымымі лічбамі, 0 і 1. Такім чынам, лічбы ў IEEE 754 (стандарт IEEE для прадстаўлення двайковых лікаў з плаваючай кропкай) пішуцца па-рознаму, чым у традыцыйнай дзесятковай сістэме, якую мы маем выкарыстоўвацца для. У гэтым артыкуле вы даведаецеся, як запісаць лік у адзіночнай альбо двайной дакладнасці ў адпаведнасці з IEEE 754. Для гэтага метаду вам трэба ведаць, як пераўтварыць лічбы ў двайковую форму. Калі вы не ведаеце, як гэта зрабіць, вы можаце даведацца пра гэта, вывучыўшы артыкул Пераўтварэнне двайковай у дзесятковую.

Крок

  1. Выбірайце адзінарную або двайную дакладнасць. Пры напісанні нумара з адной або двайной дакладнасцю крокі да паспяховага пераўтварэння будуць аднолькавымі для абодвух. Адзінае змяненне адбываецца пры пераўтварэнні паказчыка і мантысы.
    • Спачатку трэба зразумець, што азначае адзінкавая дакладнасць. У прадстаўленні з плаваючай коскай любая лічба (0 або 1) лічыцца "бітам". Такім чынам, адна дакладнасць мае ў агульнай складанасці 32 біта, падзеленыя на тры розныя прадметы. Гэтыя прадметы складаюцца з знака (1 біт), паказчыка (8 біт) і мантысы альбо дробу (23 біта).
    • З іншага боку, двайная дакладнасць мае тую ж самую ўстаноўку і тыя ж тры часткі, што і адзінкавая дакладнасць - розніца толькі ў тым, што гэта будзе большая і больш дакладная лічба. У гэтым выпадку знак будзе мець 1 біт, паказчык 11 біт, а мантыса 52 біты.
    • У гэтым прыкладзе мы збіраемся пераўтварыць лік 85.125 у адзіную дакладнасць у адпаведнасці з IEEE 754.
  2. Раздзяліце лік да і пасля коскі. Вазьміце лік, якое вы хочаце пераўтварыць, і падзяліце яго так, каб у вас засталіся цэлы лік і дзесятковы лік. У гэтым прыкладзе мы прымаем лік 85 125. Вы можаце падзяліць гэта на цэлае лік 85 і дзесятковае 0,125.
  3. Пераўтварыце цэлы лік у двайковы лік. Гэта становіцца 85 з 85.125, які стане 1010101 пры пераўтварэнні ў двайковы.
  4. Пераўтварыце дзесятковую частку ў двайковы лік. Гэта 0,125 з 85,125, што становіцца 0,001 у двайковым фармаце.
  5. Аб'яднайце дзве часткі ліку, якія былі пераўтвораны ў двайковыя лікі. Лік 85 з'яўляецца двайковым, напрыклад 1010101, а дзесятковая частка 0,125 - двайковым 0,001. Калі вы аб'яднаеце іх з дзесятковай коскай, у выніку атрымаеце 1010101.001.
  6. Пераўтварыце двайковы лік у двайковы навуковы запіс. Вы можаце пераўтварыць лік у двайковае навуковае абазначэнне, перамясціўшы дзесятковую кропку ўлева, пакуль яна не стане справа ад першага біта. Гэтыя лічбы нармаваны, што азначае, што вядучы біт заўсёды будзе 1. Што тычыцца паказчыка, колькі разоў перасоўваць дзесятковы паказчык з'яўляецца паказчыкам у двайковым навуковым абазначэнні.
    • Памятаеце, што пры перамяшчэнні дзесятковай лічбы ўлева ствараецца дадатны паказчык ступені, а пры перамяшчэнні дзесятковай улева - адмоўны паказчык.
    • У нашым прыкладзе вам трэба перамясціць дзесятковы знак шэсць разоў, каб атрымаць яго справа ад першага біта. Атрыманы фармат тады становіцца 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Вызначце знак лічбы і адлюструйце яе ў двайковым фармаце. Цяпер вы вызначыце, зыходны лік станоўчы ці адмоўны. Калі лік дадатны, запішыце гэты біт як 0, а калі адмоўны - як 1. Паколькі зыходны лік станоўчы, станоўчы 85.125, запішыце гэты біт як 0. Гэта першы біт з 32 агульных бітаў у вашай адзінай дакладнасці рэндэрынг у адпаведнасці з IEEE 754.
    • Вызначыце паказчык ступені на аснове дакладнасці. Існуе фіксаваны зрушэнне як для адзіночнай, так і для двайной дакладнасці. Схіл экспанента для адной дакладнасці ёсць 127, што азначае, што мы павінны дадаць знойдзены раней двайковы паказчык. Такім чынам, паказчык ступені, які вы збіраецеся выкарыстоўваць, ёсць 127 + 6 = 133.
      • Як вынікае з назвы, двайная дакладнасць з'яўляецца больш дакладнай і можа ўтрымліваць вялікія лічбы. Значыць, ухіл выказніка 1023. Тут прымяняюцца тыя ж крокі, якія выкарыстоўваюцца для адзінкавай дакладнасці, таму паказчык ступені, які вы можаце выкарыстоўваць для вызначэння двайной дакладнасці, складае 1029.
    • Пераўтварыце паказчык у двайковы. Пасля таго, як вы вызначыце свой канчатковы паказчык, вам трэба пераўтварыць яго ў двайковы, каб ён мог быць выкарыстаны ў пераўтварэнні IEEE 754. У гэтым прыкладзе вы можаце пераўтварыць 133, знойдзеныя на апошнім этапе, у 10000101.
    • Вызначце мантысу. Мантыскі аспект, альбо трэцяя частка пераўтварэння IEEE 754, з'яўляецца астатняй часткай пасля дзесятковай лічбы навуковых двайковых запісаў. Вы проста апусціце 1 спераду і скапіруеце дзесятковую частку ліку, якое памножыць на два. Ніякага бінарнага пераўтварэння не патрабуецца! У гэтым прыкладзе мантыса становіцца 010101001 з 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Нарэшце, злучыце тры часткі ў адзін лік.
      • І, нарэшце, вы аб'яднаеце ўсё, што мы вылічылі да гэтага часу ў вашай канверсіі. Лік спачатку пачнецца з 0 або 1, які вы вызначылі на этапе 7 на аснове знака. У прыкладзе вы пачынаеце з 0.
      • Тады ў вас ёсць паказчык ступені, які вы вызначылі на кроку 9. У прыкладзе паказчык ступені - 10000101.
      • Затым ідзе мантыса, трэцяя і апошняя частка пераўтварэння. Вы зрабілі гэта раней, калі ўзялі дзесятковую частку двайковага пераўтварэння. У гэтым прыкладзе мантыса - 010101001.
      • Нарэшце, вы аб'яднаеце ўсе гэтыя лічбы паміж сабой. Парадак знака-экспанента-мантыса. Пасля злучэння гэтых трох двайковых лікаў запоўніце астатнюю частку мантысы нулямі.
      • Напрыклад, пераўтварэнне 85.125 у бінарны фармат IEEE 754 - рашэнне 0 10000101 01010100100000000000000.