Kezdőoldal » Számítástechnika » Egyéb kérdések » Hogyan vonok ki egy kissebb...

Hogyan vonok ki egy kissebb számbol egy nagyobbat bináris számrendszerben?

Figyelt kérdés

Mondjuk: 15-37?


Én ugy csinálltam, hogy átalakitottam mind2-t és hát elvégeztem a műveletet.

Eredményűl 101010-et kaptam.



2016. okt. 21. 20:00
1 2
 1/11 anonim ***** válasza:

0 − 0 = 0

0 − 1 = −1

1 − 0 = 1

1 − 1 = 0

2016. okt. 21. 20:02
Hasznos számodra ez a válasz?
 2/11 A kérdező kommentje:

Ugyanazt az eredményt kaptam csak negativ.

Azaz: -101010

2016. okt. 21. 20:20
 3/11 anonim ***** válasza:

negatív eredménynél nem érvényes

15-37= -22 "-10110"

2016. okt. 21. 22:03
Hasznos számodra ez a válasz?
 4/11 A kérdező kommentje:

Akkor most nem értem.


Az én esetembetn, hogyan működik a számolási folyamat?

2016. okt. 22. 10:49
 5/11 dq ***** válasza:

1) simán, ahogy ki szoktál/szokás vonni, mûködik

2) az is jó algoritmus, ha a nagyobból vonod ki a kisebbet, majd negálod


Azért kaptál rossz eredményt, mert nem jól hajtottad végre az algoritmust, és nem azért, mert hibás. Ugyanúgy, ahogy decimális számrendszerben a végén bejön a mínuszjel, ugyanígy itt is oda kell raknod amikor arra kerül a sor.

2016. okt. 22. 11:07
Hasznos számodra ez a válasz?
 6/11 A kérdező kommentje:

De azzal én 101010-et kapot, de akkor ebben az esetben ha bejön a - jel, akkor pedig: -101010-et.

Levezetve:


A 15 binárisan: 1111

A 37 binárisan: 100101


A 100101 kettes komplemense (amikor megforditjuk a 0-át 1-re az 1-et pedig 0-ra, valami hozzáadunk 1-et) 011011!


Majd az igy kapott számot össze kell adni a kissebitendővel.

Azaz: 011011

+ 1111

Ami: 101010


Bocsi ha tévedek, de én ezt igy értelmezem.

2016. okt. 22. 11:26
 7/11 anonim ***** válasza:

Mint ahogy írták a nagyobból vonod a kisebbet és negálod.

A 15 binárisan: 1111

A 37 binárisan: 100101

100101

- 1111

--------

10110

--------

-10110

2016. okt. 22. 12:27
Hasznos számodra ez a válasz?
 8/11 A kérdező kommentje:

Világos.

Csak még annyi, hogy a negálás az nem egyenlő az invertálással?


Azaz én negálás alatt azt csináltam volna, hogy a kapott 10110 eredmény nulláit és egyeseit felcserélem: 01001.

De az irtak alapján téves az elképzelésem róla.

2016. okt. 22. 14:03
 9/11 dq ***** válasza:

Add össze a számodat, meg a szerinted vett negáltját/inverzét, és nézd meg, hogy 0-át kapsz-e.


Fontos még, hogy a kettes komplemens-vétel NEM a sztenderd bináris számábrázolás mûvelete, hanem speciálisan a számítástechnikában használják és kezelik így a negatív számokat.

Talán próbáld újra kitûzni a kérdést "matematika" helyett "programozás" címkével, ha arra kell neked.


Az elõbbiben a -1 2-es számrendszerbeli alakja "-1", míg a gép n biten valahogy tök máshogy (talán 1111111?) tárolja.

2016. okt. 22. 14:41
Hasznos számodra ez a válasz?
 10/11 A kérdező kommentje:
Rendben, akkor kiirom oda. :)
2016. okt. 22. 15:42
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!