Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Programování - Práce s bity binárního čísla

Dobrý den,
chci napsat program (Delphi, C), který dokáže měnit bity proměnné typu celé číslo. Důvodem je nahrazení pole dvoustavových hodnot.

//Pseudo-program č.1:
var
   Hodnoty: PoleDvoustavovýchHodnot;
begin
   Hodnoty[TretiOdKonce] := true;
end;

//Pseudo-program č.2:
var
   Hodnoty: Cele32BitoveCislo;
begin
   Hodnoty[TretiNejnizsiBit] := true;
end;

Myslím si, že by druhý "program" proběhl rychleji. Pokud je můj názor chybný, tak mě prosím opravte. Proměnná první by vypadala {..., false, false, true, false, false}, druhou proměnnou by vyjadřovalo číslo 4 (desítkově). Podle mě by mělo být druhé provedení pro procesor přirozenější.
Děkuji, Telever

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Netuším o akej rýchlosti to meleleš: 0-2 ms ??? O čo Ti vlastne ide? Prečo a z akého dôvodu chceš r… nový
pme 12.01.2013 20:28
pme
Jde o prohledávání neorientovaného grafu. Něco ve smyslu: "Je dána šachovnice 15x15 políček. Najdi v… nový
Telever 12.01.2013 20:41
Telever
Pokud nemáš zásadní problémy s množstvím použité paměti, tak úplně stačí když budeš pracovat s byty… poslední
Wikan 12.01.2013 20:45
Wikan

Netuším o akej rýchlosti to meleleš: 0-2 ms ???

O čo Ti vlastne ide? Prečo a z akého dôvodu chceš robiť niečo "pro procesor přirozenější."
V DELPHI sa o všetko postará prekladač a optimalizuje Tvoj kód.

Vážne som nepochopil či chceš nastavovať stavy: true/false, alebo 0/1...

Pozri sa na typ TBits (unit Classes):

var
  flags : TBits;        
begin
  flags := TBits.Create;
  flags.Size := 5;
  flags[0] := true;
  flags[1] := true;
  flags[4] := true;
...

Jde o prohledávání neorientovaného grafu. Něco ve smyslu: "Je dána šachovnice 15x15 políček. Najdi všechny cesty, kterými je možné se dostat z levého horního rohu do pravého dolního." Snažím se pracovat s co nejjednoduššími typy. Jsem však začátečník a budu rád za každý názor.

Zpět do poradny Odpovědět na původní otázku Nahoru