Kezdőoldal » Számítástechnika » Programozás » Lehetséges az egész-előlépteté...

Lehetséges az egész-előléptetést (azaz biteltolást, C-ben << és >> operátorok) más logikai műveletekkel (és, vagy, exkluzív vagy, stb. ) kifejezni?

Figyelt kérdés
Lehetőleg az átlag gépi megvalósítást követve...

2014. jan. 12. 15:46
 1/7 A kérdező kommentje:

"Lehetőleg az átlag gépi megvalósítást követve..."

Mármint úgy értve, hogy biteltolást LOGIKAI kiteltolásként értem.

Így : [link]

2014. jan. 12. 15:51
 2/7 anonim ***** válasza:
Nem lehet. A logikai műveletek bitpárokra vonatkoznak, a biteltolás pedig bitsorozatokra.
2014. jan. 12. 19:04
Hasznos számodra ez a válasz?
 3/7 anonim ***** válasza:

Az egyik irány a kettővel való szorzás, ami tulajdonképpen az önmagával való összeadás. Az összeadás megvalósítható bitműveletekkel. Megjegyzés: párhuzamos környezetben ellenjavallt ez a módszer.

A másik irány a felezés, amit sokkal nehezebb kifejezni.

2014. jan. 12. 20:36
Hasznos számodra ez a válasz?
 4/7 A kérdező kommentje:

"Nem lehet."


De, LEHET! :D


Ugyanis végiggondoltam ismét, és elkezdtem leimplementálni, és a baloldali bitmozgatást már sikerült.


Majd ha ismét annál a gépnél leszek, amin megvan a kód - meg előtte implementáltam a másik oldali biteltolást is, akkor felteszem.

Előlegbe annyit : elég implementálni MIND A KETTŐT az 1-es jobboldali paraméterre (értsd.: x << 1 és x >> 1), utána ez ciklussal kiterjeszthető x >> a (x << a) esetén a tetszőleges (egész) paraméterre.

ÉS ez máris könnyít a dolgon :)


P.S.: rendes leszek, és nem pontozom le a kommenteket :D

2014. jan. 13. 00:23
 5/7 anonim ***** válasza:
Erre kíváncsi vagyok.
2014. jan. 13. 08:31
Hasznos számodra ez a válasz?
 6/7 anonim ***** válasza:

Nem lehet. Lehet félreértettünk valamit a kérdésedben, és nem csak az említett logikai műveleteket használod, hanem pl if-et és egyéb konstansokat is.

Nyilván az utóbbi esetben bármit meg lehet csinálni, mert minden számhoz van egy másik szám, amivel ha össze XOR-olod, akkor kijön az eredeti szám 2x-ese (vagy fele).... de ez már nem arról szól, amit kérdeztél.

2014. jan. 13. 10:53
Hasznos számodra ez a válasz?
 7/7 A kérdező kommentje:

"Lehet félreértettünk valamit a kérdésedben, és nem csak az említett logikai műveleteket használod"


Bocs, igen, neked van igazad : a kérdés nem egyértelmű! :D

BOCS!


Cserébe mindenkinek +1.

2014. jan. 13. 22:47

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!