Poslao: 02 Sep 2014 14:47
|
offline
- crusher
- Ugledni građanin
- Pridružio: 15 Maj 2012
- Poruke: 396
|
Imam problem sa bitovima. Ne idu mi bas najbolje. Ja znam sta su bitovi i ostale stvari, ali ne znam kako da rukujem sa njima. Na primer, kako bih trebao da napravim program koji ce da izmeni redosled bitova(prvi sa poslednjim, drugi sa pretposlednjim...) unutar datog celobrojnog podatka?
Hvala unapred!
|
|
|
Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
|
|
|
Poslao: 02 Sep 2014 16:03
|
offline
- crusher
- Ugledni građanin
- Pridružio: 15 Maj 2012
- Poruke: 396
|
A zasto si prvo koristio 107, a onda posle si dobio 214? I kako bih to trebao da pretvorim u kod i da li moram da koristim shiftovanje i kako?
|
|
|
|
|
Poslao: 02 Sep 2014 16:37
|
offline
- crusher
- Ugledni građanin
- Pridružio: 15 Maj 2012
- Poruke: 396
|
Dobro, nego, da li je bolje da se koristi shiftovanje? I sad cu kad mi bude bio slobodan kompjuter da probam da resum ovaj zadatak.
|
|
|
|
Poslao: 02 Sep 2014 16:49
|
offline
- vasa.93
- Moderator foruma
- Pridružio: 17 Dec 2007
- Poruke: 14824
- Gde živiš: Niš
|
Napisano: 02 Sep 2014 16:43
Da. Množenje i deljenje nekog broja sa 2 (ili bilo kojim stepenom dvojke) se višestruko brže izvršava kada se realizuje preko šiftovanja. Pored toga, u CF uvek možeš da izvlačiš po jedan bit koji ćeš da posmatraš. No, kao što rekoh, to je na nivou asemblera (a asemblerski kod vrlo lako možeš da umetneš u C/C++ kod). Ne bih znao kako da radiš sa CF na nivou C/C++ jezika.
Dopuna: 02 Sep 2014 16:49
Da, jedino rešenje da vidiš CF iz C/C++ koda je inline asm kod...
|
|
|
|
Poslao: 02 Sep 2014 18:38
|
offline
- crusher
- Ugledni građanin
- Pridružio: 15 Maj 2012
- Poruke: 396
|
Uradio sam zadatak, bez shiftovanja, ali sa nizom. Kada sam pretvorio dekadni broj u binarni, onda sam taj binarni broj stavio u niz pa onda zamenio bitove. Kako bi moglo to da se uradi bez upotrebe nizova?
|
|
|
|
Poslao: 02 Sep 2014 19:17
|
offline
- vasa.93
- Moderator foruma
- Pridružio: 17 Dec 2007
- Poruke: 14824
- Gde živiš: Niš
|
Jesi li pogledao prvu moju poruku i potrudio se bar malo da shvatiš ono sa slike? Kao što rekoh, tamo ti piše baš sve, cela petlja koju treba da napišeš.
Do sada ti je manje više sve servirano, sada je već red da se sam malo više aktiviraš i potrudiš.
|
|
|
|
Poslao: 02 Sep 2014 19:45
|
offline
- crusher
- Ugledni građanin
- Pridružio: 15 Maj 2012
- Poruke: 396
|
Aha, znaci tako. Trebam da napravim petlju koju ce da taj binarni broj pretvori u dekadni, pa da taj dobijeni broj pomnozim sa dva i onda taj broj pretvorim u binarni, zar ne?
|
|
|
|
Poslao: 02 Sep 2014 19:56
|
offline
- vasa.93
- Moderator foruma
- Pridružio: 17 Dec 2007
- Poruke: 14824
- Gde živiš: Niš
|
Napisano: 02 Sep 2014 19:54
Ne. Brojevi (i sve ostalo) u računaru svakako jesu u binarnom obliku.
Ono sa množenjem sa 2 batali, nije to, napisao sam odmah ispod. Prati proceduru sa slike i to je to. Imaš tu napisane sve tri linije petlje...
Dopuna: 02 Sep 2014 19:56
Još da pomenem (ono isto što si ti pomenuo), radiš sve sa celobrojnim podacima. Dakle integer.
|
|
|
|