Пријава


Да ли сте заборавили лозинку?
prijatelji LUGoNSa
gnu.gif
linuxzasve.jpg
hulk.jpg
zextras_logo.png
 
Налазите се овде: Дом / Uputstva / Teorija / Binarni brojevi

Binarni brojevi

аутор: Goran Mekić Последња измена 22:08 04.11.2007.
Postoje samo dva, a tolika komplikacija...

Svi već znamo da računari rade sa nulama i jedinicama. Istorijski razalog je jednostavan. Ako u vodovima ili ima struje ili nema struje, ne postoji mesto grešci (uslovno rečeno). Naime, kada je osobina koja se meri kontinualna (recimo, visina napona), uvek je prisutna greška zbog nesavršenosti provodnika, aparata za merenje, itd. Ako je sve što vi treba da izmerite to da li struja u nekom vodu postoji ili ne, mogućnost greške je minimalna. Naravno, sistem je mogao biti zamišljen tako da postoji 10 skokovitih nivoa struje te da se ne petljamo sa binarnim brojevima, ali se tako povećava i mogućnost greške. Ono što je računar doneo sa sobom je da ljudi imaju potrebu da shvate binardne brojeve kako bi bolje razumeli rad računara. Videćete, ovo je stvarno prosto.

Za početak ćemo prebaciti decimalni broj u neki binarni. Recimo broj 26. To se radi uzastopnim deljenjem sa 2 i zapisivanjem ostataka, sve dok rezultat deljenja ne postane 0. Prvo ću objasniti zapis koji ćemo dalje koristiti. Recimo, pri celobrojnom deljenju brojeva sa 2, imamo rezultat i ostatak:

7 / 2 = 3
ostatak: 1

Umesto ovako dugačkog zapisa, koristićemo sledeći format (pri tome se podrazumeva da se deli sa 2):

7 | 3
1

Ostatak pri deljenju je desno od broja, a rezultat rezultat ispod. Sada kada znamo ovaj format, evo kako se prebacuje decimalni zapis u binarni:

26 | 0    26(dec) = 11010(bin)
13 | 1
 6 | 0
 3 | 1
 1 | 1
 0

Kao što ste primetili, binarni rezultat se čita od dole na gore. Poprilično jednostavno, zar ne? Drugi problem je kako prebaciti binarni broj u decimalni. Pre toga ću dati primer banalnog računanja u decimalnom sistemu koji oslikava ideju prebacivanja iz sistema u sistem. Recimo da imate broj 128. On se može predstaviti na sledeći način:

128 = 1*102 + 2*101 + 8*100 = 1*100 + 2*10 + 8*1

Znači, pošto je u decimalnom sistemu osnova 10 (ima 10 cifara ukupno), to je rezultat jednak razlaganju cifara broja (cifra * 10pozicija cifre pri čemu se pozicija cifre broji sa desna na levo i od 0 na više). Slična stvar važi za binarne brojeve, samo što je osnova 2. Recimo da želimo da prebacimo 11010 nazad u decimalni zapis:

11010(bin) = 1*24 + 1*23 + 0*22 + 1*21 + 0*20 = 1*16 + 1*8 + 0*4 + 1*2 + 0*1 = 16 + 8 + 2 = 26

I to je cela gimnastika koju treba da znate oko pretvaranja u i iz binarnih brojeva. I nije neka nauka, zar ne?

Дејства на документ

« април 2024 »
април
поутсрчепесуне
1234567
891011121314
15161718192021
22232425262728
2930
lugons projekti

bal2con

Kako postati haker

tor.lugons.png

slackbook.png

gentoo_handbook

machine

BARBOSSA