Nasobení, dělení ve ve dvojkový....soustavě

Místo pro témata a příspěvky spadající MIMO počítačovou problematiku (tedy např. sport, zdraví, vtipy, škola...).

Moderátoři: Mods_junior, Mods_senior

icka123
nováček
Příspěvky: 9
Registrován: srpen 11
Pohlaví: Žena
Stav:
Offline

Nasobení, dělení ve ve dvojkový....soustavě

Příspěvekod icka123 » 13 zář 2011 18:30

Zdravím, nevíte někdo jak se tohle počítá, popř. by se hodily výsledky
1) 110101101

* 1110

2) 101111

- 101

3) 10101001

+1101

//Ltb:smazany 2 dalsi duplicitni temata

Reklama
Tholus
Level 5.5
Level 5.5
Příspěvky: 3081
Registrován: prosinec 07
Pohlaví: Muž
Stav:
Offline

Re: Nasobení, dělení ve ve dvojkový....soustavě

Příspěvekod Tholus » 13 zář 2011 18:36


Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7398
Registrován: prosinec 10
Pohlaví: Muž
Stav:
Offline

Re: Nasobení, dělení ve ve dvojkový....soustavě

Příspěvekod faraon » 13 zář 2011 18:43

První domácí úkol z výpočetky a hned chceš aby ho za tebe někdo udělal? :-D

Sčítání je jednoduché, navíc je to nejzákladnější operace potřebná ke všemu dalšímu:

Kód: Vybrat vše

0    0    1    1
0    1    0    1
-    -    -    -
0    1    1   10


Odčítání se dá jednoduše převést na sčítání, násobení na opakované sčítání dvounásobků, a dělení na opakované odčítání dvounásobků. Ukaž trochu snahy aspoň s tím sčítáním a zbytek zvládneme společně ;-)
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)

icka123
nováček
Příspěvky: 9
Registrován: srpen 11
Pohlaví: Žena
Stav:
Offline

Re: Nasobení, dělení ve ve dvojkový....soustavě

Příspěvekod icka123 » 13 zář 2011 18:54

nechápu :)

--- Doplnění předchozího příspěvku (13 Zář 2011 20:11) ---

top

Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7398
Registrován: prosinec 10
Pohlaví: Muž
Stav:
Offline

Re: Nasobení, dělení ve ve dvojkový....soustavě

Příspěvekod faraon » 13 zář 2011 20:12

Na tom není nic k nechápání, je to úplně stejné jako v desítkové soustavě, jen s tím rozdílem že k přenosu do vyššího řádu nedochází při překročení devítky, ale už při překročení jedničky. Proto si počítače vystačí jen se dvěma číslicemi 8)

Takže si vezmi čtverečkovaný papír a napiš si pod sebe tohle:

Kód: Vybrat vše

0  1  1  0  1  1  0  0
0  0  1  0  1  1  1  0
----------------------
.  .  .  .  .  .  .  .

Musíš dodržet sloupce, a ideální je když obě čísla mají stejný počet číslic, takže je zleva doplníš nulami.

Předpokládám že znáš dvojkovou soustavu, takže víš že nejnižší číslice - jednička - je vpravo (tak jak to v Indii před nějakými pěti tisíci lety vymysleli) a odtamtud také budeš sčítání začínat:

Kód: Vybrat vše

0  1  1  0  1  1  0  0
0  0  1  0  1  1  1  0
----------------------
.  .  .  .  .  .  .  0

0 + 0 = 0, to bylo pro začátek dost jednoduché.

Kód: Vybrat vše

0  1  1  0  1  1  0  0
0  0  1  0  1  1  1  0
----------------------
.  .  .  .  .  .  1  0

0 + 1 = 1, v tom bych také neviděl problém. Teď začne ta zajímavější část, přenos:

Kód: Vybrat vše

0  1  1  0  1  1  0  0
0  0  1  0  1  1  1  0
----------------------
.  .  .  .  . 10  1  0

1 + 1 = 2, což se ve dvojkové soustavě píše 10. Jenže zůstat tam může jen jedna číslice, ta více vpravo, takže tu jedničku musíme posunout o řád výš (tak jako jedničku z desítky v desítkové soustavě, vzpomeň si co ses učila v první třídě):

Kód: Vybrat vše

0  1  1  0  1  1  0  0
0  0  1  0  1  1  1  0
------------1---------
.  .  .  .  .  0  1  0

A tam si jí přičteme v příslušném sloupci:

Kód: Vybrat vše

0  1  1  0  1  1  0  0
0  0  1  0  1  1  1  0
------------1---------
.  .  .  . 11  0  1  0

1 + 1 + 1 = 3, ve dvojkové soustavě psáno 11. Zase nadbytečná jednička, zase přenos:

Kód: Vybrat vše

0  1  1  0  1  1  0  0
0  0  1  0  1  1  1  0
---------1--1---------
.  .  .  .  1  0  1  0

A teď tu nadbytečnou vyšší jedničku (s hodnotou dvě ve dvojkové soustavě, podobně jako v desítkové soustavě by měla hodnotu deset) zase sečteme v příslušném sloupci i s jeho dalším obsahem.

Kód: Vybrat vše

0  1  1  0  1  1  0  0
0  0  1  0  1  1  1  0
---------1--1---------
.  .  .  1  1  0  1  0

0 + 0 + 1 = 1, a ta tam také je. Nic se nepřenáší, můžeme pokračovat:

Kód: Vybrat vše

0  1  1  0  1  1  0  0
0  0  1  0  1  1  1  0
---------1--1---------
.  . 10  1  1  0  1  0

1 + 1 = 2 neboli 10, to už známe. Stejně jako přenos do vyššího řádu:

Kód: Vybrat vše

0  1  1  0  1  1  0  0
0  0  1  0  1  1  1  0
---1-----1--1---------
.  .  0  1  1  0  1  0

V podstatě je to pořád stejná opakující se činnost, můžou nastat jen čtyři možnosti toho co se stane. Sečteme další sloupec:

Kód: Vybrat vše

0  1  1  0  1  1  0  0
0  0  1  0  1  1  1  0
---1-----1--1---------
. 10  0  1  1  0  1  0

1 + 0 + 1 = 2 tedy 10 ve dvojkové soustavě, takže se zase bude přenášet jednička:

Kód: Vybrat vše

0  1  1  0  1  1  0  0
0  0  1  0  1  1  1  0
1--1-----1--1---------
.  0  0  1  1  0  1  0

A nakonec sečteme poslední, nejvyšší řád, kde pro případ přenosu byly od samého začátku nachystané dvě nuly:

Kód: Vybrat vše

0  1  1  0  1  1  0  0
0  0  1  0  1  1  1  0
1--1-----1--1---------
1  0  0  1  1  0  1  0

0 + 0 + 1 = 1, takže výsledek i s kontrolou v desítkové soustavě bude vypadat takhle:

Kód: Vybrat vše

0  1  1  0  1  1  0  0 = 108
0  0  1  0  1  1  1  0 = 046
----------------------------
1  0  0  1  1  0  1  0 = 154


Tohle by zvládl i středně inteligentní šimpanz, je to opakování několika úplně jednoduchých činností pořád dokola, tedy přesně to co jde počítačům ze všeho nejlépe :lol:
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)

icka123
nováček
Příspěvky: 9
Registrován: srpen 11
Pohlaví: Žena
Stav:
Offline

Re: Nasobení, dělení ve ve dvojkový....soustavě

Příspěvekod icka123 » 13 zář 2011 20:36

takže ta 3) je takhle?
10101001

00001101
-----------
10110110

Odstraněna duplicitní informace. Pic

Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7398
Registrován: prosinec 10
Pohlaví: Muž
Stav:
Offline

Re: Nasobení, dělení ve ve dvojkový....soustavě

Příspěvekod faraon » 13 zář 2011 20:43

Výborně, vypadá to že sčítání jsi zvládla :idea: Takže se vrhneme na odčítání?
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)

icka123
nováček
Příspěvky: 9
Registrován: srpen 11
Pohlaví: Žena
Stav:
Offline

Re: Nasobení, dělení ve ve dvojkový....soustavě

Příspěvekod icka123 » 13 zář 2011 20:46

Brá, čekám pomoc :)

--- Doplnění předchozího příspěvku (13 Zář 2011 21:18) ---

A ta 1) 1011101110110 ?

Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7398
Registrován: prosinec 10
Pohlaví: Muž
Stav:
Offline

Re: Nasobení, dělení ve ve dvojkový....soustavě

Příspěvekod faraon » 13 zář 2011 21:32

Takže asi nejjednodušší způsob jak odečíst nějaké číslo je přičíst ho jako záporné. Kdysi, v době mechanických počítaček, z nichž některé neměly funkci pro odečítání, se pro to používal takzvaný devítkový doplněk, přičtením jedničky převáděný na desítkový. My teď počítáme ve dvojkové soustavě, takže si vystačíme s jedničkovým a dvojkovým doplňkem.

Jedničkový doplněk dvojkového čísla se vytvoří úplně jednoduše, tím že se nuly změní na jedničky a jedničky na nuly (tomu se také říká negace). Pouhým přičtením jedničky z něj pak vznikne dvojkový doplněk, což je záporná hodnota původního čísla! Ten pak stačí přičíst k tomu číslu, od kterého jsme měli odečítat.

Použijeme čísla z toho mého původního příkladu, zároveň si tak uděláme zkoušku:

Kód: Vybrat vše

' 1  0  0  1  1  0  1  0
- 0  0  1  0  1  1  1  0
' ----------------------

Postup je jasný, 00101110 musíme převést na záporné číslo. Takhle:

Kód: Vybrat vše

0  0  1  0  1  1  1  0 = původní číslo

1  1  0  1  0  0  0  1 = jedničkový doplněk
+                    1   přičtení jedničky
----------------------
1  1  0  1  0  0  1  0 = dvojkový doplněk a zároveň záporná hodnota původního čísla

A teď můžeme v klidu sčítat, to už umíš:

Kód: Vybrat vše

1  0  0  1  1  0  1  0 =   154
1  1  0  1  0  0  1  0 = +(-46)
----------------------
0  1  1  0  1  1  0  0 =   108

Té jedničky co nám vlevo jakoby vypadla si nemusíš všímat, potřebovali bysme jí až při skutečném počítání v registrech, kde se velká čísla musí zpracovávat po částech na pokračování. Tam je nutné vědět jestli dochází k přenosu do dalšího čísla - vyššího řádu než se do registrů procesoru vejde.

Procesoru počítače v podstatě stačí umět tyhle základní operace:
1) sčítání, jako jedinou aritmetickou operaci
2) přičtení nebo odečtení jedničky - to se dá vždy převést na sčítání
3) negace, neboli převedení na jedničkový doplněk
4) posun čísla o jeden bit vlevo nebo vpravo - to využijeme při násobení a dělení
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)

icka123
nováček
Příspěvky: 9
Registrován: srpen 11
Pohlaví: Žena
Stav:
Offline

Re: Nasobení, dělení ve ve dvojkový....soustavě

Příspěvekod icka123 » 13 zář 2011 21:41

0 0 1 0 1 1 1 0 = původní číslo

1 1 0 1 0 0 0 1 = jedničkový doplněk
+ 1 přičtení jedničky
----------------------
1 1 0 1 0 0 1 0 = dvojkový doplněk a zároveň záporná hodnota původního čísla


a když tam budu mít 2 jedničky pod sebou,tak co s tím?

Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7398
Registrován: prosinec 10
Pohlaví: Muž
Stav:
Offline

Re: Nasobení, dělení ve ve dvojkový....soustavě

Příspěvekod faraon » 13 zář 2011 21:57

Dvě jedničky pod sebou přece dávají dvojku, s přenosem do vyššího řádu. Je to úplně normální sčítání :wink:

No, vzhledem k tomu že se jedná o dvě sčítání za sebou, tak nezáleží na pořadí a můžeš je i zpřeházet!
Takže nejdřív přičteš k menšenci jedničkový doplněk menšitele:

Kód: Vybrat vše

1  0  0  1  1  0  1  0 = první číslo, menšenec
1  1  0  1  0  0  0  1 = dvojkový doplněk menšitele
----------------------
0  1  1  0  1  0  1  1 = mezivýsledek

A k mezivýsledku přičteš tu jedničku, jako dodatečný převod na dvojkový doplněk:

Kód: Vybrat vše

0  1  1  0  1  0  1  1 = mezivýsledek
0  0  0  0  0  0  0  1 = odložená jednička
----------------------
0  1  1  0  1  1  0  0 = konečný výsledek

Tenhle postup je jednodušší a dá se dělat bez počítání toho záporného čísla někde bokem.
Naposledy upravil(a) faraon dne 13 zář 2011 22:04, celkem upraveno 1 x.
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)

icka123
nováček
Příspěvky: 9
Registrován: srpen 11
Pohlaví: Žena
Stav:
Offline

Re: Nasobení, dělení ve ve dvojkový....soustavě

Příspěvekod icka123 » 13 zář 2011 22:02

Takže zatím takhle?

101111

-111010
---------
1000001
A k tomuhle přičíst 1?


Zpět na “Vše ostatní (Off topic)”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 15 hostů