Nasobení, dělení ve ve dvojkový....soustavě
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
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)
(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
----------------------
. . . . . . . .
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

"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
' ----------------------
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)
(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
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)
(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?
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 9 hostů