Ha szívesen korrepetálnál, hozd létre magántanár profilodat itt.
Ha diák vagy és korrepetálásra van szükséged, akkor regisztrálj be és írd meg itt, hogy milyen tantárgyban!
Bináris számok kivonása
sara-pinter3549
kérdése
799
Az a házi, hogy két tetszőleges számot kell kiválasztani, és így kell megcsinálni. Viszont én ezt nem nagyon értem. Valaki segítene azt a két számot megcsinálni?
Jelenleg 1 felhasználó nézi ezt a kérdést.
0
Középiskola / Informatika
Válaszok
1
Törölt{ Fortélyos }
megoldása
Bináris számok esetén fontos, hogy `color(red)(a\d\o\t\t \ b\i\t\s\z\á\m\o\n)` végezd el a számítást!
Izé minden számrendszerben fontos, hogy adott jeggyel végezd a számítást!
Vonjuk ki pl. az `10010100_2` bináris számból a `111011_2` bitet
Mivel az első szám 8 bites a másodikat is 8 bit-re kell kiegészíteni: `00111011_2`
Az kivonást visszavezetjük bináris összeadásra
Ehhez a kivonandót `00111011_2` kettes komplemens formára kell alakítani
Ez két lépésben történik
Egyes komplemens képzése
az adott számrendszer legmagasabb számjegyére kell kiegészíteni a számjegyeket a számban
Egyébként ez itt egyszerű negáció lesz
vagyis a
00111011
11000100 lesz
kettes komplemens képzése (hozzáadunk +1-et az egyes komplemenst)
11000100
00000001
11000101
képződik
Ezek után elvégezhetjük a kivonást (összeadással)
`\ \ \ \ \ \ 10010100`
`\ \ \ \ \ \ 11000101`
`1|01011001`
A keletkezett kilencedik bitet (túlcsordulás) nem kell figyelembe venni
Vagyis az eredmény: 01011001
Kb. ennyi
Érdekesség - tízes számrendszerben ugyanez
756 - 96
a kivonandót 3 helyi értékre egészítjük ki: 096
Képezzük az egyes komplemenst: 903 mivel 0+9 = 9, 0+9 = 9, 6+3 = 9
kettes komplemens +1 ⇒ 904
És a kivonás összeadással
`\ \ \ \ \ \ 756`
`\ \ \ \ \ \ 904`
`1|660`
Az eredmény 660, ha megnézzük 756 - 96 = 660