Just nu i M3-nätverket
Jump to content

2-komplement


tomashag
 Share

Recommended Posts

Finns det någon vänlig själ som kan fylla i de saknade värdena? Jag har för länge sedan glömt bort hur man räknar med 2-komplement.

 

 

101785179_Skrmklipp.PNG.641ccd14e6119b126f3c63dc11a7a61c.PNG

 

 

 

 

Link to comment
Share on other sites

Hej tomashag
Förstår inte riktigt vad du menar med glömt hur man räknar med 2-komplement.
Det jag ser direkt i dina tabeller är att tabell 1 börjar på 31 decimalt och går ned till 0 (binärt).
Den 2:a tabellen börjar på 63 decimalt och går ner till 32 (binärt. 6 bitar)
Tabell 2 är 2-komplement till tabell 1.
Den 1:a tabellen börjar på 011111 och slutar på 000000 binärt.
Här ett försök att hjälpa med det jag tror att du vill.
Börja med att omvandla 011111 till decimalt.
Skriv i ruta A1 "011111". I Ruta B1 Skriver du "=BIN.TILL.DEC(A1)".
Talet omvandlas till decimalt 31. De binära värdena går nedåt mot 0.
Skriv därför i cell B2   "=B1-1"  Du får 30 i ruta B2. Markera ruta B2 och dragkopiera
nedåt tills du når 0 decimalt (rad 32).
I ruta A2 skriver du  =DEC.TILL.BIN(B2;6)  Du får det binära talet för 30 i ruta A2 (6 tecken).
Markera cell A2 och dragkopiera nedåt till rad 32.
Där är din 1:a tabell i kolumn A binärt för talen 31->0.
Enligt den matte jag lärde mig i skolan är 2-komplementet till ett positivt tal dess
motsvarighet det negativa talet, t.ex.  talet +10, dess 2-komplement är -10.
Ny tabell för 2-komplementen till 1-31 d.v.s -1 tll - 31.
Skriv i cell D1 "-1".  I cell D2  "=D1-1".   Markera Cell D2 och dragkopiera nedåt till rad 32.
I cell C1 skriv  "=HÖGER(DEC.TILL.BIN(D1);6)". Höger 6 p.g.a att vi bara jobbar med 6 tecken.
DEC.TILL.BIN levelerar normalt 10 tecken. 
Dragkopiera formeln i C1 nedåt till rad 32.
I kolumn C finns nu 2-komplementen till talen 1 till 32. vilket ju är 63- 32 enligt tabell 2.
Här jobbade vi med 6 bitar binärt, max värde är 111111 = 63 decimalt.
Ett annat sätt att få 2-komplementet till positiva tal är:
Ta t.ex +19 = 010011 binärt, Inventera alla tecken och lägg till 1
010011 -->101100 +1 --> 101101 --> 45 decimalt vilket stämmer 19+45=64
eller testa med att omvandla 45 till binärt.
64 är den 7:e biten i det binära systemett.
OBS i Excel!
Om tal < -512 eller om tal > 511 returnerar DEC.TILL.BIN felvärdet #OGILTIGT!.

Nu kan du själv fylla i dina tabeller, läsa lite om binära systemet och 2-komplement.
Hoppas att det var detta du ville ha.
En fråga, vad skall du använda tabellerna till ???

Lars G

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share



×
×
  • Create New...