Ubuntu Suomen keskustelualueet

Muut alueet => Yleistä keskustelua => Aiheen aloitti: Hertsi - 21.12.10 - klo:15.07

Otsikko: binääriluvusta kymmenjärjestelmään
Kirjoitti: Hertsi - 21.12.10 - klo:15.07
Eli koulutyöhön tarvitsisin Excel taulukon (openoffice.org siis minulla) jossa syötän soluun jonkun binääriluvun ja taulukko osaa laskea sen kymmenjärjestelmän luvun. sitten pitäisi saada toinen taulukko jossa sama toimisi toisinpäin. Uskoisin että joku on tälläisen tehnyt/tietää miten sellaisen saa tehtyä. olisin kiitollinen avusta.
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: anttimr - 21.12.10 - klo:15.18
OO.o Calcissa on funktio BASE, jolla voi muuttaa kymmenjärjestelmän luvun toiseen lukujärjestelmään. Esimerkiksi BASE(255;2) palauttaa merkkijonon "11111111".
 
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: Hertsi - 22.12.10 - klo:00.20
pystyisitkö ollenkaan selventämään? ei ole nämä funktiot mikään vahvin puoleni :)
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: anttimr - 22.12.10 - klo:00.29
No. Jos solussa A1 on luku 255 niin johonkin toiseen soluun kirjoitettu kaava

Koodia: [Valitse]
=BASE(A1;2)
antaa tulokseksi "11111111". Sanotaan selvennykseksi, että se puolipisteen jälkeinen 2 tarkoittaa lukujärjestelmän, johon muunnetaan, kantalukua. Näistä funktioista on kyllä hyvät ohjeet Calcissa ja netissä.
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: Hertsi - 22.12.10 - klo:23.58
Hyyvä, nyt pelaa. Olisikos vielä toinen funktio millä sama onnistuisi toisinpäin? eli siis binääristä kymmenjärjestelmään.
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: Tha-Fox - 23.12.10 - klo:01.01
Villi veikkaus on, että jos solussa A1 on binäärinä "11111111", niin toiseen soluun saat sen kymmenkantaisena kirjoittamalla kaavaksi:

Koodia: [Valitse]
=BASE(A1;10)
Eli vaihdat vain tuon lukujärjestelmän kantaluvun funktiosta.
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: Sunar - 23.12.10 - klo:11.06
Eipä toimi noin, BASE muuntaa lukuja kymmenjärjestelmästä johonkin muuhun, joten tuo ei tee luvulle mitään. Binääristä kymmenjärjestelmään pääsee funktiolla BIN2DEC(binääriluku). Tämä toimii korkeintaan 10-bittisille luvuille.
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: Bulletproof1978 - 23.12.10 - klo:11.12
Eipä toimi noin, BASE muuntaa lukuja kymmenjärjestelmästä johonkin muuhun, joten tuo ei tee luvulle mitään. Binääristä kymmenjärjestelmään pääsee funktiolla BIN2DEC(binääriluku). Tämä toimii korkeintaan 10-bittisille luvuille.

 8) juuri näin.
Koodia: [Valitse]
=BIN2DEC(A1)
Lähde:
OpenOhfise wiki (http://wiki.services.openoffice.org/wiki/Documentation/How_Tos/Calc:_BIN2DEC_function)
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: mrl586 - 23.12.10 - klo:16.35
Jos luvussa on yli 10 bittiä, mitä funktiota silloin käytetään?
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: olle - 23.12.10 - klo:17.17
Jos luvussa on yli 10 bittiä, mitä funktiota silloin käytetään?

Järkeä ?

Ehkäpä se oli alkuperäisen koulutehtävän tarkoitus ?  ;)
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: peran - 23.12.10 - klo:17.43
Jos luvussa on yli 10 bittiä, mitä funktiota silloin käytetään?

Saattaa pystyä käyttämään samaa funktiota:
Jaa stringi 10 bitin ryhmiin ja kerro 1024:llä aina seuraava ryhmä.

Edit - siis esim. jos tarttee laskea 100110011010101010, niin otat oikealta puolelta 10 viimeistä merkkiä:Bin2dec("1010101010")+1024*Bin2dec("10011001") jne.;

Jokin raja on kuitenkin kokonaislukujenkin käsittelyssä, joten menee käsipelillä ihan ok. Tietenkin toi jakaminen kannattaa suorittaa merkkijonojen käsittelyfunkkareilla. Kai niitä löytyy Calc:stakin.

Edit - Siitä tulee varsin ikävän näköistä varsinkin, jos binäärilukujen koot vaihtelee...
Esim...
A2='1111011011011011011101110
B2=(RIGHT(A2;9))
C2=MID(A2;LEN(A2)-18;9)
D2=LEFT(A2;LEN(A2)-9*2)
E2=BIN2DEC(B2)+BIN2DEC(C2)*512+BIN2DEC(D2)*512*512

Tässä siis toi binääri on A2:ssa, ja selvyyden vuoksi binäärin pilkkominen on suoritettu eri sarakkeissa. Lisäksi ei ole tehty yleistävää ehtoa, jolla varmistettaisiin, ettei pilkkomisessa tule erroreita.
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: anttimr - 23.12.10 - klo:18.28
Jos luvussa on yli 10 bittiä, mitä funktiota silloin käytetään?

Funktiota DECIMAL.

=DECIMAL("111111111111111111111111";2)
16777215

OpenOfficen wiki on korvaamaton tietolähde näissä.
http://wiki.services.openoffice.org/wiki/Documentation/How_Tos/Calc:_DECIMAL_function
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: Bulletproof1978 - 23.12.10 - klo:20.24
Jos luvussa on yli 10 bittiä, mitä funktiota silloin käytetään?

Funktiota DECIMAL.

=DECIMAL("111111111111111111111111";2)
16777215

OpenOfficen wiki on korvaamaton tietolähde näissä.
http://wiki.services.openoffice.org/wiki/Documentation/How_Tos/Calc:_DECIMAL_function

Kiitos tästä funktiosta :) tälläistä olenkin etsinyt  ;D
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: ilkkak - 23.12.10 - klo:21.00
Jos luvussa on yli 10 bittiä, mitä funktiota silloin käytetään?

Funktiota DECIMAL.

=DECIMAL("111111111111111111111111";2)
16777215

OpenOfficen wiki on korvaamaton tietolähde näissä.
http://wiki.services.openoffice.org/wiki/Documentation/How_Tos/Calc:_DECIMAL_function

Kiitos tästä funktiosta :) tälläistä olenkin etsinyt  ;D

Läksy ja harjoitustehtävien luonne on mielestäni sellainen että apua saa kyllä kysyä, mutta tehtävä itsessään pitäisi tehdä itse.
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: tetrao - 23.12.10 - klo:22.22
Lainaus
Läksy ja harjoitustehtävien luonne on mielestäni sellainen että apua saa kyllä kysyä, mutta tehtävä itsessään pitäisi tehdä itse.

Jos nyt ollaan näsäviisaita, niin tuohon voisi todeta: Eikös tässä juurikin toimittu niin? :D
Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: Bulletproof1978 - 23.12.10 - klo:22.25
Läsky ja harjoitustehtävien luonne on mielestäni sellainen että apua saa kyllä kysyä, mutta tehtävä itsessään pitäisi tehdä itse.

Mikä tehtävä/läsky  ??? Kerro minullekkin. :o .... Olen innokas läksyjen ja tehtävien tekijä, vaikka älyni on vajavainen.  ;D

Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: ajaaskel - 24.12.10 - klo:06.22
Koulutyötä ajatellen ja erityisesti oman oppimisen kannalta tuo käyttäjän "ilkkak" mainitsema asia on kyllä tärkeä eli että oppii sen miten tietoa etsitään eikä tyydy vain kopioimaan kaverin antamaa vastausta.  Sekä oman pään että ajankäytön rajallisuudesta johtuen viisas ei ole välttämättä se joka "tietää kaiken" vaan se joka tietää miten tietoa etsitään tuloksellisesti.  En väitä etteikö Ubuntu foorumikin voisi olla sellainen paikka mutta olisi hyvä oppia etsimään ja lukemaan itse ainakin dokumentaatiota. Kun jokin asia ei kohtuullisesta yrityksestä huolimatta aukene tai selviä niin kyselee sitten apua kokeneemmilta.

Otsikko: Vs: binääriluvusta kymmenjärjestelmään
Kirjoitti: Hertsi - 24.12.10 - klo:21.43
Koulutyötä ajatellen ja erityisesti oman oppimisen kannalta tuo käyttäjän "ilkkak" mainitsema asia on kyllä tärkeä eli että oppii sen miten tietoa etsitään eikä tyydy vain kopioimaan kaverin antamaa vastausta.  Sekä oman pään että ajankäytön rajallisuudesta johtuen viisas ei ole välttämättä se joka "tietää kaiken" vaan se joka tietää miten tietoa etsitään tuloksellisesti.  En väitä etteikö Ubuntu foorumikin voisi olla sellainen paikka mutta olisi hyvä oppia etsimään ja lukemaan itse ainakin dokumentaatiota. Kun jokin asia ei kohtuullisesta yrityksestä huolimatta aukene tai selviä niin kyselee sitten apua kokeneemmilta.



Olet selvästi viisas mies. :) Olen kuitenkin tälläistä funktiota koettanut tuloksetta jo jonkin aikaa löytää joten ajattelin täällä pyytää apua. Nyt pelaa! kiitos kaikille avusta. En openoffice wikiä ollutkaan ennen käyttänyt, tätä tulen hyödyntämään tulevaisuudessa.