Mga Tutorial

▷ Binary, decimal, octal at hexadecimal system kung ano ito at kung paano ito gumagana

Talaan ng mga Nilalaman:

Anonim

Kung ikaw ay isang mag-aaral ng Computer Science, electronics o anumang sangay ng engineering, ang isa sa mga bagay na dapat mong malaman ay ang pagsasagawa ng mga pagbabagong sistema ng pagbilang. Sa pag-compute, ang mga systeming na ginagamit ay naiiba sa kung ano ang tradisyonal na alam natin, tulad ng aming desimal system. Ito ang dahilan kung bakit, marahil, kung ating ihandog ang ating sarili sa larangan ng parehong pag-compute, programming at katulad na teknolohiya, kakailanganin nating malaman ang pinaka ginagamit na mga sistema at kung paano malalaman kung paano mai-convert mula sa isang system patungo sa isa pa.

Indeks ng nilalaman

Paano maisagawa ang mga conversion ng system sa pag-number

Lalo na kapaki-pakinabang na malaman ang Decimal hanggang sa Binary conversion system at vice versa, dahil ito ang sistema ng pag-numero kung saan direkta ang mga sangkap ng isang computer. Ngunit kapaki-pakinabang din na malaman ang hexadecimal system, dahil ginagamit ito halimbawa upang kumatawan sa mga code ng kulay, mga susi at isang malaking bilang ng mga code mula sa aming koponan.

Mga sistema ng pag-numero

Ang isang sistema ng pag-numero ay binubuo ng representasyon ng isang hanay ng mga simbolo at mga patakaran na nagbibigay-daan sa amin upang mabuo ang mga numero na may bisa. Sa madaling salita, binubuo ito ng paggamit ng isang serye ng mga nakatali na mga simbolo kung saan posible na mabuo ang iba pang mga bilang na walang halaga.

Nang hindi napakalayo sa mga tuntunin ng matematika ng mga kahulugan, ang mga sistemang ginagamit ng mga tao at machine ay ang mga sumusunod:

Sistema ng desimal

Ito ay isang positional system numbering kung saan ang dami ay kinakatawan ng arithmetic base ng bilang ng sampung.

Bilang ang base ay numero ng sampu, magkakaroon tayo ng kakayahang bumuo ng lahat ng mga numero gamit ang sampung numero na ang alam nating lahat. 0, 1, 2 3, 4, 5, 6, 7, 8 at 9. Ang mga bilang na ito ay gagamitin upang kumatawan sa posisyon ng mga kapangyarihan ng 10 sa pagbuo ng anumang numero.

Kaya, maaari naming kumatawan sa isang numero sa sumusunod na paraan sa sistemang ito ng pag-numero:

Nakita namin na ang isang numero ng panghihinuha ay ang kabuuan ng bawat halaga ng base 10 na nakataas sa posisyon-1 na sinakop ng bawat term. Tandaan natin ito para sa mga pag-convert sa iba pang mga system numbering.

Binary System

Ang binary system ay isang systeming numbering kung saan ginagamit ang arithmetic base 2. Ang system na ito ay ang ginagamit ng mga computer at digital system sa loob upang maisagawa ang ganap na lahat ng mga proseso.

Ang sistemang ito ng pag-numero ay kinakatawan lamang ng dalawang mga numero, 0 at 1, na ang dahilan kung bakit ito ay batay sa 2 (dalawang numero).

Sistema ng Octal

Tulad ng mga naunang paliwanag, maaari na nating isipin kung ano ito tungkol sa sistema ng octal. Ang sistema ng Octal ay ang sistema ng pag-numero kung saan ginamit ang arithmetic base 8, samakatuwid nga, magkakaroon kami ng 8 iba't ibang mga numero upang kumatawan sa lahat ng mga numero. Ang mga ito ay: 0, 1, 2, 3, 4, 5, 6 at 7.

Hexadecimal system

Kasunod ng mga naunang kahulugan, ang sistemang perpekto ng numero ay isang sistema na may posisyon na nakabatay sa bilang na 16. Sa puntong ito tatanungin natin ang ating sarili, paano tayo makakakuha ng 16 magkakaibang mga numero, kung halimbawa 10 ay ang pagsasama ng dalawang numero iba?

Well, napaka-simple, naimbento namin ang mga ito, hindi sa amin, ngunit ang mga nag-imbento ng system na pinag-uusapan. Ang mga bilang na mayroon tayo dito ay: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E at F. gumagawa ito ng isang kabuuang 16 iba't ibang mga term. Kung naitakda mo na ang code ng numero ng isang kulay mayroon itong ganitong uri ng numero, at ito ang dahilan kung bakit makikita mo kung gaano ang puti, halimbawa, ay kinakatawan bilang ang halaga ng FFFFFF. Makikita natin sa ibang pagkakataon kung ano ang ibig sabihin nito.

Pagbabago sa pagitan ng binary at decimal system

Dahil ito ang pinaka-pangunahing at madaling maunawaan, magsisimula kami sa pamamagitan ng pag-convert sa pagitan ng dalawang mga sistema ng pag-numero.

I-convert ang numero mula sa binary hanggang decimal

Tulad ng nakita namin sa unang seksyon, kumakatawan kami ng isang numero ng bilang bilang bilang ng kabuuan ng mga halaga na pinarami ng kapangyarihan ng 10 hanggang sa posisyon-1 nasasakop nito. Kung ilalapat namin ito sa anumang bilang ng binary, kasama ang kaukulang base nito, magkakaroon kami ng mga sumusunod:

1 0 0 1 1

0

1 · 2 5 1 · 2 4 1 · 2 3 1 · 2 2 1 · 2 1

1 · 2 0

Ngunit syempre, kung ginawa natin ang pamamaraan tulad ng sa perpektong sistema, makakakuha tayo ng mga halaga maliban sa 0 at 1, na kung saan ay maaari lamang nating kumatawan sa sistemang ito sa pag-numero.

Ngunit tiyak na ito ay magiging kapaki-pakinabang upang maisagawa ang conversion sa sistemang desimal. Kinakalkula natin ang resulta ng bawat halaga sa kahon nito:

1 0 0 1 1

0

1 · 2 5 = 32

1 · 2 4 = 0 1 · 2 3 = 0 1 · 2 2 = 4 1 · 2 1 = 2

1 · 2 0 = 0

Buweno, kung gagawin namin ang kabuuan ng mga halagang ito na nagreresulta mula sa bawat cell, makuha namin ang katumbas na halaga ng halaga ng binary halaga.

Ang decimal na halaga ng 100110 ay 38

Kailangan lang nating dumami ang digit (0 o 1) sa pamamagitan ng base nito (2) itinaas sa posisyon-1 nasasakop nito sa pigura. Nagdagdag kami ng mga halaga at magkakaroon kami ng numero sa desimal.

Kung hindi ka kumbinsido, isasagawa namin ngayon ang kabaligtaran na proseso:

I-convert ang numero ng perpekto sa binary

Kung bago tayo gumawa ng isang pagpaparami ng mga numero at isang kabuuan upang matukoy ang halaga sa desimal, ngayon kung ano ang dapat nating gawin ay hatiin ang numero ng desimal ng batayan ng system na nais nating i-convert ito, sa kasong ito 2.

Isasagawa namin ang pamamaraang ito hanggang sa hindi na posible na magsagawa ng anumang karagdagang paghahati. Tingnan natin ang halimbawa kung paano ito gagawin.

Bilang

38 19 9 4 2 1
Dibisyon

÷ 2 = 19

÷ 2 = 9 ÷ 2 = 4 ÷ 2 = 2 ÷ 2 = 1

-

Pahinga 0 1 1 0 0

1

Ito ang resulta ng paggawa ng sunud-sunod na mga dibisyon. Maaaring natanto mo na kung paano ito gumagana. Kung kukuha tayo ngayon ng mga natitirang bahagi ng bawat dibisyon, at baligtarin ang posisyon nito, makakakuha tayo ng binary na halaga ng numero ng desimal. Iyon ay, nagsimula mula sa kung saan natapos namin ang dibisyon nang paatras:

Kaya mayroon kaming mga sumusunod na resulta: 100110

Tulad ng nakikita natin, pinamamahalaang namin ang eksaktong parehong bilang tulad ng sa simula ng seksyon.

Ang conversion number fractional perpekto sa binary

Tulad ng alam natin, hindi lamang ang buong mga numero ng desimal, ngunit maaari rin tayong makahanap ng mga tunay na numero (praksiyon). At bilang isang sistema ng pag-numero, dapat na mag-convert ng isang numero mula sa desimal system sa binary system. Nakikita namin kung paano ito gagawin. Alamin natin ang bilang na 38, 375 bilang halimbawa

Ang dapat nating gawin ay hiwalay sa bawat bahagi. Alam na natin kung paano makalkula ang bahagi ng integer, kaya diretso kami sa direksyong bahagi.

Ang pamamaraan ay magiging mga sumusunod: dapat nating gawin ang perpektong bahagi at palakihin ito sa base ng system, iyon ay, 2. Ang resulta ng pagdami ay dapat nating dumami muli hanggang sa makakuha tayo ng isang praksyonal na bahagi ng 0. Kung kapag gumagawa ng pagpaparami ng isang factional na numero ay lilitaw na may isang bahagi ng integer, kakailanganin lamang nating dalhin ang bahagi para sa susunod na pagpaparami. Tingnan natin ang halimbawa upang maunawaan ito nang mas mahusay.

Bilang

0.375 0.75 0.50
Pagpaparami * 2 = 0.75 * 2 = 1.50

* 2 = 1.00

Buong bahagi 0 1

1

Tulad ng nakikita natin, kinukuha namin ang perpektong bahagi at pinarami itong muli hanggang sa maabot namin ang 1.00 kung saan ang magiging resulta ay palaging 0.

Ang resulta ng 38, 375 sa binary ay pagkatapos ay 100 110, 011

Ngunit ano ang mangyayari kapag hindi tayo makakaabot sa isang resulta ng 1.00 sa proseso? Tingnan natin ang halimbawa na may 38, 45

Bilang

0.45 0.90 0.80 0.60 0.20 0.40 0.80
Pagpaparami * 2 = 0.90 * 2 = 1.80 * 2 = 1.60 * 2 = 1.20 * 2 = 0.40 * 2 = 0.80 * 2 = 1.60
Buong bahagi 0 1 1 1 0 0

1

Tulad ng nakikita natin , mula sa 0.80 ang proseso ay nagiging pana-panahon, iyon ay, hindi namin tatapusin ang pamamaraan dahil ang mga numero mula 0.8 hanggang 0.4 ay palaging lilitaw. Kung gayon ang aming resulta ay magiging isang pagtatantya ng numero ng desimal, mas malayo kami pupunta, mas higit na kawastuhan ang makukuha namin.

Kaya: 38.45 = 100 110, 01110011001 1001

Tingnan natin kung paano gawin ang reverse process

Ang conversion ng fractional binary number hanggang sa desimal

Ang prosesong ito ay isasagawa sa parehong paraan tulad ng normal na pagbabago sa base, maliban na mula sa kuwit ang mga kapangyarihan ay magiging negatibo. Kunin natin ang bahagi ng integer ng nakaraang binary number:

0 1 1 1 0 0

1

...
0 · 2 -1 = 0 1 · 2 -2 = 0.25 1 · 2 -3 = 0.125 1 · 2 -4 = 0.0625 1 · 2 -5 = 0 1 · 2 -6 = 0 1 · 2 -7 = 0.0078125

Kung idagdag namin ang mga resulta ay makukuha namin:

0.25 + 0.125 + 0.0625 + 0.0078125 = 0.4453

Kung nagpatuloy kami sa pagsasagawa ng mga operasyon ay mas malapit kami at mas malapit sa eksaktong halaga ng 38.45

Pagbabago sa pagitan ng octal system at binary system

Ngayon magpapatuloy kami upang makita kung paano maisagawa ang conversion sa pagitan ng dalawang mga sistema na hindi perpektong, para dito kukunin namin ang sistema ng octal at ang binary system at gagawin namin ang parehong pamamaraan tulad ng sa mga nakaraang mga seksyon.

I-convert ang numero mula sa binary hanggang octal

Ang pagbabagong loob sa pagitan ng parehong mga sistema ng pag-numero ay napaka-simple sapagkat ang batayan ng sistema ng octal ay kapareho ng sa binary system ngunit itinaas sa kapangyarihan ng 3, 2 3 = 8. Kaya batay sa ito, kung ano ang gagawin namin ay ang pangkat ng mga binhing termino sa mga grupo ng tatlong nagsisimula mula sa kanan papunta sa kaliwa at direktang mag-convert sa isang numero ng desimal. Tingnan natin ang halimbawa na may bilang na 100110:

1 0 0 1 1 0
100 110
0 · 2 2 = 4 0 · 2 1 = 0 1 · 2 0 = 0 1 · 2 2 = 4 1 · 2 1 = 2 0 · 2 0 = 0
4 6

Pinagsasama namin ang bawat tatlong numero at ginagawa ang pagbabalik-loob sa decimal. Ang magiging resulta ay ang 100110 = 46

Ngunit paano kung wala tayong perpektong mga pangkat ng 3? Halimbawa 1001101, mayroon kaming dalawang pangkat ng 3 at isa sa 1, tingnan natin kung paano magpatuloy:

0 0 1 0 0 1 1 0 1
001 100 110
0 · 2 2 = 0 0 · 2 1 = 0 1 · 2 0 = 1 0 · 2 2 = 0 0 · 2 1 = 0 1 · 2 0 = 1 1 · 2 2 = 4 1 · 2 1 = 0 1 · 2 0 = 1
1 1 5

Kasunod ng pamamaraan, kinukuha namin ang mga pangkat mula sa kanan ng termino at pagdating namin sa dulo ay pinupunan namin ng maraming mga zero kung kinakailangan. Sa kasong ito, kailangan namin ng dalawa upang makumpleto ang huling pangkat. Kaya 1001101 = 115

I-convert ang numero ng octal sa binary

Well, ang pamamaraan ay kasing simple ng paggawa ng kabaligtaran, iyon ay, pagpunta mula sa binary hanggang desimal sa mga pangkat ng 3. Tingnan natin ito kasama ang bilang na 115

Halaga 1 1 5
Dibisyon ÷ 2 = 0 0 0 ÷ 2 = 0 0 0 ÷ 2 = 2 ÷ 2 = 1 -
Pahinga 1 0 0 1 0 0 1 0 1
Pangkat 001 001 101

Sa ganitong paraan nakikita natin na 115 = 001001101 o kung ano ang parehong 115 = 1001101

Pagbabago sa pagitan ng sistema ng octal at sistema ng desimal

Ngayon ay makikita natin kung paano maisagawa ang pamamaraan ng pagpunta mula sa sistema ng numero ng octal hanggang sa desimal at kabaligtaran. Makikita natin na ang pamamaraan ay eksaktong kapareho sa kaso ng desimal at binary system, tanging dapat nating baguhin ang base sa 8 sa halip na 2.

Isasagawa namin ang mga pamamaraan nang direkta sa mga term na may isang fractional na bahagi.

I-convert ang numero ng decimal sa octal

Ang pagsunod sa pamamaraan ng desimal-binary na pamamaraan ay isasagawa namin ito kasama ang halimbawa ng 238.32:

Buong bahagi. Hinahati namin ang base, na kung saan ay 8:

Bilang 238 29 3
Dibisyon ÷ 8 = 29 ÷ 8 = 3 -
Pahinga 6 5 3

Napakahusay na bahagi, dumarami tayo sa base, na 8:

Bilang 0.32 0.56 0.48 0.84 0.72
Pagpaparami * 8 = 2.56 * 8 = 4.48 * 8 = 3.84 * 8 = 6.72 * 8 = 5.76
Buong bahagi 2 4 3 6 5

Ang resulta na nakuha ay ang mga sumusunod: 238.32 = 356.24365…

I-convert ang numero ng octal sa decimal

Kung gayon, gawin natin ang kabaligtaran na proseso. Ipasa natin ang octal number 356, 243 hanggang decimal:

3 5 6 , 2 4 3
3 · 8 2 = 192 5 · 8 1 = 40 6 · 2 0 = 6 2 · 8 -1 = 0.25 4 · 8 -2 = 0.0625 3 · 8 -3 = 0.005893

Ang resulta ay: 192 + 40 + 6, 0.25 + 0.0625 + 0.005893 = 238.318

Pagbabago sa pagitan ng hexadecimal system at sistema ng desimal

Natapos namin sa proseso ng pagbabagong-loob sa pagitan ng hexadecimal numbering system at ang sistema ng desimal.

I-convert ang numero ng desimal sa hexadecimal

Ang pagsunod sa pamamaraan ng perpektong -binary at paraan ng decimal-octal ay isasagawa namin ito kasama ang halimbawa ng 238.32:

Buong bahagi. Hinahati namin ang base, na kung saan ay 16:

Bilang 238 14
Dibisyon ÷ 16 = 14 -
Pahinga E E

Napakahusay na bahagi, dumarami tayo sa base, na kung saan ay 16:

Bilang 0.32 0.12 0.92 0.72 0.52
Pagpaparami * 16 = 5.12 * 16 = 1.92 * 16 = 14.72 * 16 = 11.52 * 16 = 8.32
Buong bahagi 5 1 E B 8

Ang resulta na nakuha ay ang mga sumusunod: 238.32 = EE, 51EB8…

I-convert ang numero mula sa hexadecimal hanggang sa desimal

Kung gayon, gawin natin ang kabaligtaran na proseso. Ipasa natin ang hexadecimal number EE, 51E hanggang decimal:

E E , 5 1 E
E16 1 = 224 E · 16 0 = 14 5 · 16 -1 = 0.3125 1 · 16 -2 = 0.003906 E16 -3 = 0.00341

Ang resulta ay: 224 + 14, 0.3125 + 0.003906 + 0.00341 = 238.3198…

Well ito ang mga pangunahing paraan upang baguhin ang base mula sa isang systeming sa isa pa. Ang sistema ay naaangkop sa isang system sa anumang base at ang sistema ng desimal, bagaman ito ang pinaka ginagamit sa larangan ng computing.

Maaari ka ring maging interesado sa:

Kung mayroon kang anumang mga katanungan, iwanan ang mga ito sa mga komento. Susubukan naming tulungan ka.

Mga Tutorial

Pagpili ng editor

Back to top button