kort och förvirrat om binära tal

Här skriver vi våran FAQ. Vill du komma med förslag, skriva själv eller rätta stavfel så gör det här. Någorlunda färdiga frågor komer att läggas i forumet FAQ.
Post Reply
OErjan
Posts: 1834
Joined: 21 April 2003, 06:43
Location: 64*N 21*E

kort och förvirrat om binära tal

Post by OErjan » 5 May 2005, 10:29

som rubriken säger "kort och förvirrat om binära tal"
heh, binärt, det kan vara bra att kunna lite grunder.

1, läs från höger till vänster
2, sifran är 0 kan du "ignorera", det betyder att den platsen är tom vad värde anbelangar (som vanligt men ändå inte alltså).
3, placeringen har betydelse

här är binära tal från 0-8
000=0
001=1
010=2
011=3
100=4
101=5
110=6
111=7
1000=8

ser ni mönstret ovan?
0000001=001=1
0000010=010=2
0000100=100=4
0001000=8

ettan flyttas ett steg åt vänster för vart steg i talserien; 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192...
altsö har var je tal en egen plats enligt ovan.
med andra ord; det är var ettan står som är viktigt.

10000000000=1024
10000000001= 1024+1 dvs 1025
10000000010= 1024+2 dvs 1026
...
...
förslag på förbättringar, tillägg?
Last edited by OErjan on 10 September 2006, 08:12, edited 1 time in total.
kanske jag är en av de sista människor som ser din gamla: bil, dator, gräsklippare...
efter mig är de så många kilo konfetti.

OErjan
Posts: 1834
Joined: 21 April 2003, 06:43
Location: 64*N 21*E

Post by OErjan » 5 May 2005, 11:44

hmm, kanske skulle lägga in lite om chmod?
chmod används för att ange filrättigheter, dvs VEM som kan läsa (r) skriva (w) köra x) en fil, och naturligtvis olika kombinationer därav.

tre grupper om tre rätigheter är vad som används mest.
ls -al /vaddenuvar ger följande filer
-rw------- 1 oe users 95 2005-05-05 00:25 .abcdef.conf
-r-xr-xr-x 1 oe users 1954 2005-05-05 00:25 abcdef

vi börjar med den första filen
den första serien med anger vad användaren (u) som äger filen (oe i detta fall) får göra r och w INTE x (bara ett- )

andra serien användare i samma grupp (g) som äger filen (users i detta fall ) de har bara --- dvs de får inte göra nånting

och alla andra (o) har också bara --- och får inte göra nånting.

för att smidigt kunna ange dessa nio fält anger man rättigheterna i sifror istället

är det tillräckligt förvirrande än?

här nedan har du rättigheterna i binära tal

000=0 ==>---
001=1==>--x
010=2==>-w-
011=3==>-wx
100=4==>r--
101=5==>r-x
110=6==>rw-
111=7 ==>rwx

som du ser betyder en 1'a ja på rättigheten en nolla nej.
vissa tycker att det är enlare att kommaihåg att
r = 4
w = 2
x = 1
Om man sedan räknar ihop dessa får man vad sifran för rättigheten man vill u g och o ska ha
t.ex.
jag vill att u ska ha r-x ==>4+0+1==>5
jag vill att g ska ha --- ==>0+0+0 ==>0
jag vill att o ska ha --- ==>0+0+0 ==>0
altså kan du sätta 500 som filens rättighet med

Code: Select all

chmod 500 ./abcdef.conf 
att de tycker det hänger som mest troligt ihop med hur binära tal fungerar
r = 4 = 100
w = 2 =010
x = 1 = 001
om du sedan tänker dig dessa som en adition av tre tresiffriga tal uppifrån och ner så får du 111 =7==>rwx
100
010
001
111

hmm, fins det inget i FAQ om rättigheter och chmod jag kan länka till? borde vara mindre förvirrat än mitt klotter.
det behöver redigeras/städas MASSOR
kanske jag är en av de sista människor som ser din gamla: bil, dator, gräsklippare...
efter mig är de så många kilo konfetti.

Lucifer888
Posts: 4111
Joined: 3 February 2003, 12:18
Location: Stockholm

Post by Lucifer888 » 5 May 2005, 11:56

Jag har skrivit lite snabbt om chmod/chgrp/chown på wiki'n:
http://wiki.linux.se/index.php/R%C3%A4ttigheter
"It's not that I hate people, I just think they're all idiots"
"Långt hår kräver mycket näring, framhålls det, och berövar hjärnan energi."

fork
Posts: 658
Joined: 26 June 2003, 22:59
Location: Vallentuna
Contact:

Post by fork » 5 May 2005, 13:05

Mer allmänna metod: Konvertera vilka tal som helst till vilket talsystem som helst;

Från tiotalsystemet till binärä tal:

t.ex. 2005 till binära tal(bas 2):

2005 = 1002x2 + 1
1002 = 501x2 + 0
501= 250x2 + 1
250 = 125x2 + 0
125 = 62x2 + 1
62 = 31x2 + 0
31 = 15x2 + 1
15 = 7x2 +1
7 = 3x2 + 1
3 = 1x2 +1
1 = 2x0 + 1

Alltså är 2005 i tiotalsystemet samma som 11111010101 i binära tal ("Restena nerifrån och upp")

2005 i hexadecimal ( bas 16)

2005 = 125x16 + 5
125 = 7x16 + 13
7 = 0x16 + 7

Alltså är 2005 samma som 7D5 i hexadecimala systemet
Talerna gå ju 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

Från binära tal till tiotalsystemet är det lite lättare. Räkna med potesser...

11111010101 = 1x(2^10) + 1x(2^9) + 1x(2^8 ) + 1x(2^7) + 1x(2^6) + 0x(2^5) + 1x(2^4) + 0x(2^3) + 1x(2^2) + 0x(2^1) + 1x(2^0) = 2005

Samma med hexadecimala tal:

7D5 = 7x(16^2) + 13x(16^1) + 5x(16^0) = 1792 + 208 + 5
= 2005
Tack och hej, leverpastej...

User avatar
Broken_Zero
Posts: 30
Joined: 28 December 2005, 23:39
Location: Jakobstad,Finland
Contact:

Post by Broken_Zero » 9 January 2006, 16:08

Borde inte den här tråden postas i FAQ-dev, eller är det något som inte är färdigt?
Red Hat 7.2 --> Fedora 3 --> Fedora 4 --> Mandriva 2006 --> Ubuntu Breezy Badger

User avatar
vanten
Posts: 490
Joined: 29 April 2005, 21:52
Location: Linköping

Re: kort och förvirrat om binära tal

Post by vanten » 10 September 2006, 00:48

OErjan wrote: 0010000=6
*host*
.: GNU/Linux :: Gentoo :: Fluxbox :.
.: BSD/Darwin :: Mac :: OS X :.

OErjan
Posts: 1834
Joined: 21 April 2003, 06:43
Location: 64*N 21*E

Post by OErjan » 10 September 2006, 08:11

sedär, dyslexin gjorde mig blind, bra att du kude rätta vanten.
kanske jag är en av de sista människor som ser din gamla: bil, dator, gräsklippare...
efter mig är de så många kilo konfetti.

Post Reply