Nasobení, dělení ve ve dvojkový....soustavě
Moderátoři: Mods_senior, Mods_junior
Nasobení, dělení ve ve dvojkový....soustavě
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
1) 110101101
* 1110
2) 101111
- 101
3) 10101001
+1101
//Ltb:smazany 2 dalsi duplicitni temata
Re: Nasobení, dělení ve ve dvojkový....soustavě
První domácí úkol z výpočetky a hned chceš aby ho za tebe někdo udělal? 
Sčítání je jednoduché, navíc je to nejzákladnější operace potřebná ke všemu dalšímu:
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ě 
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
"Král Lávra má dlouhé oslí uši, král je ušatec!
(pravil K. H. Borovský o cenzuře internetu)
(pravil K. H. Borovský o cenzuře internetu)
Re: Nasobení, dělení ve ve dvojkový....soustavě
nechápu :)
--- Doplnění předchozího příspěvku (13 Zář 2011 20:11) ---
top
--- Doplnění předchozího příspěvku (13 Zář 2011 20:11) ---
top
Re: Nasobení, dělení ve ve dvojkový....soustavě
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
Takže si vezmi čtverečkovaný papír a napiš si pod sebe tohle:
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:
0 + 0 = 0, to bylo pro začátek dost jednoduché.
0 + 1 = 1, v tom bych také neviděl problém. Teď začne ta zajímavější část, přenos:
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ě):
A tam si jí přičteme v příslušném sloupci:
1 + 1 + 1 = 3, ve dvojkové soustavě psáno 11. Zase nadbytečná jednička, zase přenos:
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.
0 + 0 + 1 = 1, a ta tam také je. Nic se nepřenáší, můžeme pokračovat:
1 + 1 = 2 neboli 10, to už známe. Stejně jako přenos do vyššího řádu:
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:
1 + 0 + 1 = 2 tedy 10 ve dvojkové soustavě, takže se zase bude přenášet jednička:
A nakonec sečteme poslední, nejvyšší řád, kde pro případ přenosu byly od samého začátku nachystané dvě nuly:
0 + 0 + 1 = 1, takže výsledek i s kontrolou v desítkové soustavě bude vypadat takhle:
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 
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
----------------------
. . . . . . . .
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
Kód: Vybrat vše
0 1 1 0 1 1 0 0
0 0 1 0 1 1 1 0
----------------------
. . . . . . 1 0
Kód: Vybrat vše
0 1 1 0 1 1 0 0
0 0 1 0 1 1 1 0
----------------------
. . . . . 10 1 0
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
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
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
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
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
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
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
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
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
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
"Král Lávra má dlouhé oslí uši, král je ušatec!
(pravil K. H. Borovský o cenzuře internetu)
(pravil K. H. Borovský o cenzuře internetu)
Re: Nasobení, dělení ve ve dvojkový....soustavě
takže ta 3) je takhle?
10101001
00001101
-----------
10110110
Odstraněna duplicitní informace. Pic
10101001
00001101
-----------
10110110
Odstraněna duplicitní informace. Pic
Re: Nasobení, dělení ve ve dvojkový....soustavě
Výborně, vypadá to že sčítání jsi zvládla
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)
(pravil K. H. Borovský o cenzuře internetu)
Re: Nasobení, dělení ve ve dvojkový....soustavě
Brá, čekám pomoc :)
--- Doplnění předchozího příspěvku (13 Zář 2011 21:18) ---
A ta 1) 1011101110110 ?
--- Doplnění předchozího příspěvku (13 Zář 2011 21:18) ---
A ta 1) 1011101110110 ?
Re: Nasobení, dělení ve ve dvojkový....soustavě
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:
Postup je jasný, 00101110 musíme převést na záporné číslo. Takhle:
A teď můžeme v klidu sčítat, to už umíš:
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í
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
' ----------------------
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
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
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)
(pravil K. H. Borovský o cenzuře internetu)
Re: Nasobení, dělení ve ve dvojkový....soustavě
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?
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?
Re: Nasobení, dělení ve ve dvojkový....soustavě
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í 
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:
A k mezivýsledku přičteš tu jedničku, jako dodatečný převod na dvojkový doplněk:
Tenhle postup je jednodušší a dá se dělat bez počítání toho záporného čísla někde bokem.
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
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
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)
(pravil K. H. Borovský o cenzuře internetu)
Re: Nasobení, dělení ve ve dvojkový....soustavě
Takže zatím takhle?
101111
-111010
---------
1000001
A k tomuhle přičíst 1?
101111
-111010
---------
1000001
A k tomuhle přičíst 1?


