Kezdőoldal » Számítástechnika » Programozás » Ha van egy pozitív számom,...

Ha van egy pozitív számom, akkor azt el tudom shiftelni jobbra úgy, hogy negatív számot kapjak?

Figyelt kérdés

nov. 29. 17:29
 1/5 anonim ***** válasza:
13%

Nem.

A shift az csak oszt vagy szoroz, a művelet irányától függően.

Ha a szám úgy shiftelődik, hogy az MSB-je 1 lesz, akkor sem lesz belőle negatív (kettes komplemens), hiszen pozitív számként van nyilvántartva.

nov. 29. 17:43
Hasznos számodra ez a válasz?
 2/5 anonim ***** válasza:
0%
Cpp-ben mondjuk van rá lehetőséged.
nov. 29. 17:46
Hasznos számodra ez a válasz?
 3/5 A kérdező kommentje:
C++-ról van szó
nov. 29. 18:28
 4/5 anonim ***** válasza:
0%

Mivel shiftelsz?


>> vagy >>> ?

nov. 29. 18:54
Hasznos számodra ez a válasz?
 5/5 anonim ***** válasza:
36%

Adott egy szám, mondjuk egy integer. Legyen az értéke tizenöt (15).


Ez, 8 bites előjel nélküli integer tipusként is, bináris formában így néz ki: 00001111


Ha ezt megszorozzuk minusz eggyel, akkor meg (már előjeles integerként) így fog kinézni: 10001111


Ezt (előjeles integerként) visszaolvasva minusz tizenötöt (-15) fogsz kapni.


Viszont, ha ezt a memóriatartalmat (10001111) nem előjeles, hanem előjel nélküli integerként olvassa vissza a programod, akkor már nem -15, hanem 143 lesz.


Az előjelet a balról legelső bit reprezentálja. Ha az 1 akkor negatív, ha 0, akkor meg pozitív a tárolt számérték.


00001111 ( 15)

10001111 (-15)


Ezért nem jó oktatásra a C meg a C++


Meg kell ismerni a különféle változó- és adat-tipusokat, azok értelmét, jelentőségét, ábrázolás- és tárolásmódját, stb. Ez a legelső lépés.

nov. 29. 19:10
Hasznos számodra ez a válasz?

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!