Volledige versie bekijken : Tellen in binair .
Fck_ 21 December 2009, 15:50 Hallo !
Even een klein vraagje. Ik ben even heel het 'Tellen in binair' aan het nakijken, en ik weet even iets niet.
Als je bijvoorbeeld 4 voorstelt in binair als: 0010 ,
en je wil dat x2 doen, dan moet je gewoon vanachter een 0 toevoegen,
Je krijgt dus: 00100.
Maar als je bijvoorbeeld 0010 x6 wil doen? Bestaat er een regel voor hoeveel nullen je dan moet toevoegen van achter?
En x5 ? of x7 fzo, daar is geen regel voor?
Is mss een domme vraag, mr ik weet het even niet :P.
Bedankt!
ultddave 21 December 2009, 16:09 Dat gaat enkel bij:
x2 x4 x8 x16 x32 x64 x128 ...
Als je het logaritme neemt van die factor. Dan weet je hoeveel nullen je moet inschuiven.
x2 => log(2) = 1
x16 => log(16) = 4
...
Maar er bestaat een 'makkelijke' methode voor de andere berekeningen.
Bij x6 moet je dit doen:
x4 + 2x
Dus:
0010 maal 4
=> log(4) = 2
Dus daarom voegen we 2 nullen toe:
001000
En dan doen we 0010 maal 2
=> log(2) = 1
Dus daarom voegen we 1 nul toe (aan het oorspronkelijke getal)
00100
En dan tel je beiden resultaten op:
001000 + 00100 = 001100 = binaire voorstelling van 12
Dit kan je ook doen door gewoon 0010 + 0010 + 0010 en dat 6 keer te doen :p. Dat is eigenlijk hetzelfde als vermenigvuldigen. Maar dat is niet echt makkelijk bij grote factoren :D.
Bij x11 moet je dit doen:
x8 + 2x +1x (8 + 2 + 1 = 11)
Dus:
0010 maal 8
=> log(8) = 3
Dus daarom voegen we 3 nullen toe:
0010000
En dan doen we 0010 maal 2
=> log(2) = 1
Dus daarom voegen we 1 nul toe (aan het oorspronkelijke getal)
00100
En dan doen we 0010 maal 1
=> log(1) = 0
Dus daarom voegen we 0 nullen toe (aan het oorspronkelijke getal)
0010
En dan tel je alle resultaten op:
0010000 + 00100 + 0010 = 0010110 = binaire voorstelling van 22
Algemeen:
Zoek elke keer de grootste binaire waarde kleiner dan de factor.
Dus als je maal 11 moet doen. Ga je kijken welk binair getal net onder 11 komt.
16 is groter dan 11, dus die niet
8 is het grootste getal, kleiner of gelijk aan 11
Dus onthouden we 8 en doen we 11 - 8 = 3 En nu doen we hetzelfde met 3
4 is groter dan 3 dus die nemen we niet
2 is kleiner of gelijk aan 3, dus die onthouden we, en we doen 3-2=1
1 is kleiner of gelijk aan 1, dus die onthouden we, en we doen 1-1=0 (klaar)
Nu heb je dus 8, 2 en 1 als binaire getallen. En daarmee kan je dus wel werken met die "bitshift" methode (nullen toevoegen). ;)
PS: Als test kan je eens 0010 x100 doen :D.
Mvg,
Dave
Fck_ 21 December 2009, 16:28 Thx ! Daar heb ik echt veel aan ^^ . Mooi .
Fck_ 21 December 2009, 18:47 héhé ,
Nu denk ik er eigenlijk pas aan , maar het logaritme van 2 is toch 0,3 fzo? Hoe kom je dan aan 1 :p ?
ultddave 21 December 2009, 20:16 Jij bedoelt de wortel misschien?
Ik heb het trouwens over de "2 log" en niet de "10 log". ;)
log 8 = 3 omdat 2^3 = 8
log 16 = 4 omdat 2^4 = 16 (2 tot de macht 4)
Ik heb die "2" voor de log weggelaten omdat het anders nogal onduidelijk gaat overkomen, dan lijkt het net alsof je alles met 2 zou vermenigvuldigen als ik bijvoorbeeld:
2log8 zou schrijven :D.
http://nl.wikipedia.org/wiki/Logaritme
Mvg,
Dave
Fck_ 21 December 2009, 21:29 Nee, khad log voor , mr de 10 log dus ;) , tis duidelijk nu. Thx !
Phil O'Sophe 21 December 2009, 22:18 Zou er natuurlijk wel een "artikeltje" over kunnen schrijven, maar
hier (http://www.emmauscollege.nl/anw/majewski.nl/VWO/bijeenkomsten/bijeenkomst5/binair.htm) vind je ook al wat ;)
Fck_ 21 December 2009, 22:58 Thx !
Ga ik ook eens helemaal doorlezen !
carl 21 December 2009, 23:14 Er is ook een fijne trick (?) waarmee je gewoon kan vermenigvuldigen/... met een algoritme (een beetje te vergelijken met de staartdeling enz) maar ik ken de precieze regels niet meer ;)
Phil O'Sophe 22 December 2009, 11:49 Ik heb nog altijd een beknopte "cursus" over het binair talstelsel (was bestemd voor de leerlingen Electronica-weekendcursus).
Kan die, indien er interesse is, op ons forum plaatsen.
Fck_ 22 December 2009, 14:26 Ik heb er wel interesse in Phil o'sophe! Als het geen te grote moeite is voor jou ..
Phil O'Sophe 22 December 2009, 21:35 Ik heb er wel interesse in Phil o'sophe! Als het geen te grote moeite is voor jou ..
Zeker geen te grote moeite WoYA !
Komt in orde; kan wel enkele dagen duren en zal misschien in "Dossiers" staan.
Effe uitkijken dus ;)
Fck_ 22 December 2009, 21:41 Okéé , dankje ! Ben benieuwd ^^ !
Phil O'Sophe 25 December 2009, 22:23 Het onderwerp komt morgen in "Dossiers" hé WoYA ! ;)
Jij (en gelijk wie) kan er dan nog altijd op reageren en/of vragen stellen.
Fck_ 25 December 2009, 22:49 Okéé , Dankje !
Phil O'Sophe 27 December 2009, 20:08 Vorige post (#16) zal eerlang verwijderd worden in dit topic en zal in een andere versie te vinden zijn in "Dossiers".
|
|