Vad är 2-komplement? (Binära tal)

Här diskuteras programmering och utveckling
Användarvisningsbild
ellanbellan
Inlägg: 37
Blev medlem: 01 jul 2009, 16:47
OS: Ubuntu

Vad är 2-komplement? (Binära tal)

Inlägg av ellanbellan »

Har försökt söka på internet om detta.

Först skulle man göra om 5 och 7 till binära tal. Det var enkelt, det är väl 5: 101 medan 7: 111. Sen spårade det.

"Använd 2-komplement för att beräkna 7-5". WTF? Detta har vi fått utslängt på oss utan nånsomhelst genomgång. "Allt finns på internet". Jovars.

Därför frågar jag er... jag vill liksom, förstå, och inte bara hitta något kryptiskt svar på internet jag änd inte fattar. Help plz!
Användarvisningsbild
Osprey
Inlägg: 6310
Blev medlem: 06 apr 2008, 00:09
OS: Ubuntu
Ort: Göteborg/Mölndal/Falkenberg
Kontakt:

Re: Vad är 2-komplement? (Binära tal)

Inlägg av Osprey »

Om jag minns det rätt så är 2-komplement precis samma som 1-komplement, förutom att man adderar 1. Dvs, minus blir som plus men med en extra..... :)
Agera genom att ta och behålla initiativet, ta de risker detta kräver...
http://www.enargo.com/it/
OpenVMS Shark - i Linux finns inte SYS$CMKRNL...
Användarvisningsbild
Osprey
Inlägg: 6310
Blev medlem: 06 apr 2008, 00:09
OS: Ubuntu
Ort: Göteborg/Mölndal/Falkenberg
Kontakt:

Re: Vad är 2-komplement? (Binära tal)

Inlägg av Osprey »

ellanbellan skrev:"Använd 2-komplement för att beräkna 7-5". WTF? Detta har vi fått utslängt på oss utan nånsomhelst genomgång. "Allt finns på internet". Jovars.
Den/han/hon/det är förmodligen ute efter att du ska göra en addition av 7 och en tvåkomplementerad (alltså negativ) 5:a.......
Agera genom att ta och behålla initiativet, ta de risker detta kräver...
http://www.enargo.com/it/
OpenVMS Shark - i Linux finns inte SYS$CMKRNL...
Användarvisningsbild
ellanbellan
Inlägg: 37
Blev medlem: 01 jul 2009, 16:47
OS: Ubuntu

Re: Vad är 2-komplement? (Binära tal)

Inlägg av ellanbellan »

Hej, och tack!

Något jag fastnat för nu är vad är egentligen 32 bitars? Jag trodde det var 6 st binära tal, dvs det största talet man kan få av 32 bitars är 63 (1+ 2+4+8+16+32 = 63). Men när man säger 32 bitars, menar man då egentligen något annat? 32 stycken 1:or och 0:or?! Anledningen är för jag var inne på ascii-tabellen där det stor att där använder man sig av 7 bitars och så står det i parantesen (Alltså 7st 1or och nollor). What?!
Emil.s
Inlägg: 6633
Blev medlem: 12 dec 2006, 23:20
OS: Ubuntu
Ort: /Dalarna/Hedemora/
Kontakt:

Re: Vad är 2-komplement? (Binära tal)

Inlägg av Emil.s »

ellanbellan skrev:Hej, och tack!

Något jag fastnat för nu är vad är egentligen 32 bitars? Jag trodde det var 6 st binära tal, dvs det största talet man kan få av 32 bitars är 63 (1+ 2+4+8+16+32 = 63). Men när man säger 32 bitars, menar man då egentligen något annat? 32 stycken 1:or och 0:or?!
Japp, 32st 1/0.
T.ex så är den 32-bitars IPv4 adressen 192.168.10.2 (decimalt) "11000000.10101000.00001010.00000010" binärt, medans IPv6-adressen "2001:16d8:ff13:dead:217:f2ff:fec3:ae19" (hexadecimalt) blir "0010000000000001000101101101100011111111000100111101111010101101001000010111111100101111111111111110110000111010111000011001" binärt. :)
Home sweet ~/ = http://sandnabba.se
Användarvisningsbild
ellanbellan
Inlägg: 37
Blev medlem: 01 jul 2009, 16:47
OS: Ubuntu

Re: Vad är 2-komplement? (Binära tal)

Inlägg av ellanbellan »

Hur räknar man ut det? Jag behöver veta det största talet som kan representeras av en 32 bitars, men har inga kalkylatorer. Jag satt med 1+2+4+8 ett tag men kände att det bara blir fel när det blir större siffror.
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Vad är 2-komplement? (Binära tal)

Inlägg av Konservburk »

ellanbellan skrev:Hur räknar man ut det? Jag behöver veta det största talet som kan representeras av en 32 bitars, men har inga kalkylatorer. Jag satt med 1+2+4+8 ett tag men kände att det bara blir fel när det blir större siffror.
Det är mycket lättare att ta reda på det minsta talet som är för stort för 32 bitar och sedan dra ifrån 1.
Användarvisningsbild
ellanbellan
Inlägg: 37
Blev medlem: 01 jul 2009, 16:47
OS: Ubuntu

Re: Vad är 2-komplement? (Binära tal)

Inlägg av ellanbellan »

Och hur tar man reda på vad som är för stort för det då? Eller hur gör man det? Känns som jag får halvsvar nu... jag behöver helsvar. Nu frågar jag mer av nyfikenhet då jag lämnat in alla uppgifter. Vill dock inte känna mig som en idiot.
Inhuman Soul
Inlägg: 339
Blev medlem: 25 mar 2008, 21:01
OS: Ubuntu
Utgåva: 16.04 Xenial Xerus LTS
Ort: Linköping

Re: Vad är 2-komplement? (Binära tal)

Inlägg av Inhuman Soul »

Om du har 32 bitar så kan de anta 2^32 olika värden. Om det minsta talet är 0 så är alltså det största talet 2^32 - 1.
Användarvisningsbild
ellanbellan
Inlägg: 37
Blev medlem: 01 jul 2009, 16:47
OS: Ubuntu

Re: Vad är 2-komplement? (Binära tal)

Inlägg av ellanbellan »

Ah, vad smart!

Jag har tyvärr ingen miniräknare som kan göra upphöjt till, men teoretiskt förstår jag. =)
Bowmore
Inlägg: 6212
Blev medlem: 28 mar 2007, 23:01
OS: Ubuntu
Ort: Stockholm

Re: Vad är 2-komplement? (Binära tal)

Inlägg av Bowmore »

ellanbellan skrev:Ah, vad smart!

Jag har tyvärr ingen miniräknare som kan göra upphöjt till, men teoretiskt förstår jag. =)
Jo, det har du ;)

I Ubuntu väljer du Program > Tillbehör > Miniräknare. I den väljer du sen Visa > Vetenskapligt.

Vill du räkna med binärt, oktalt, hexadecimalt talsystem så väljer du istället Visa > Programmering där du kan markera binärt talsystem, knappa in 32 st ettor och sen markera decimalt för att se vad det blir den vägen.
Skriv svar

Återgå till "Programmering och webbdesign"