Mírové operace. Programování na C a C ++

bitové operace - je operace použitá k provedení manipulace bitových vzorů nebo binární čísla, které zahrnují práci s jednotlivými bity. Jedná se o rychlou jednoduchou operaci přímo podporovanou procesorem, používanou pro ovládání hodnot pro porovnávání a výpočty.

Základem pro výpočet

digitální binárního systému používá pouze dvě číslice - 0 a 1. Počítače jsou binární, což znamená, že ukládání dat a provádění výpočtů, které používají pouze nul a jedniček.



I když binární číslo, může být použit pro podání True

(true) nebo ne

(lež) v logice pro uložení velkého počtu a provádět složité funkce lze použít více binární čísla Ve skutečnosti může být libovolné číslo zastoupeno v binárním formátu.

Použití

Bitové operátory se používají v následujících oblastech:
  • komunikační sestavy, kde jednotlivé bity v záhlaví přiložen k datům nesou důležité informace.
  • , vložený software pro ovládání různých funkcí na čipu a zobrazení hardwaru stavu tím, že řídí jednotlivé bity hardwarových registrů vložené mikroprocesory.
  • Low-level software pro aplikace, jako jsou ovladače, kryptografického softwaru, softwaru pro dekódování videa, distributoři paměti, software pro kompresi a grafika.
  • Pohodlnéprovádění velkých množin celých čísel při hledání a optimalizaci.
  • Pivotní operace prováděné s příznaky bitů, které mohou zahrnovat instanci typu přenosu pro ukládání jakékoliv kombinace hodnot definovaných v seznamu výčtečů.
  • Mírové operace - jak to funguje?

    Na rozdíl od běžných logických operátorů (např. +, -, *), které pracují s bajty nebo skupinami bajtů, bitové operátory mohou zkontrolovat nebo instalovat jednotlivé bity v bajtech. Beat operace nikdy nevyvolávají přeplněnost v paměťových buňkách, protože výsledek získaný po operaci je v rozsahu možných hodnot pro číselný typ.


    Operátory beatů používaných v jazykové skupině C (C #, C a C ++):
  • NEBO (|) - výsledek platí, pokud je jeden z operandů pravdivý.
  • AND (& amp;) - výsledek je pravdivý pouze tehdy, jsou-li oba operandy pravdivé. Může být použit pro konfiguraci masky pro ověření hodnot určitých bitů.
  • XOR (^) - výsledek je pravdivý pouze tehdy, když je jeden z jeho operandů pravdivý. Používá se hlavně k přepínání určitých bitů. Pomáhá také nahradit dvě proměnné bez použití třetího.
  • NOT (~) je bitový doplněk nebo inverze. Poskytuje bitovou přílohu operandu změnou jeho hodnoty tak, aby všechny nuly byly převedeny na jeden a všechny jednotky byly převedeny na nulu.
  • (pravý posun) a (levý posun) - operátor, který posune bity do počtu pozic daných druhýmoperand v pravém nebo levém směru. Operátory Shift se používají k zarovnávání bitů.
  • Příklad práce

    Bitové operátory jsou symboly představující akce, které musí být provedeny pro jednotlivé bity. Bitová operace působí na dvuhbytovыh vzorech stejné délky, polohy jednotlivých bitů: logické operace A (& Co.), každý bit výsledky pár v 1 (true) v případě, že první a druhý bit je 1. V opačném případě, výsledkem je nulový. Mezi jinými aplikacemi lze AND použít ke kontrole jednotlivých bitů v bitmapě, aby zjistili, zda jsou nepravdivé nebo pravdivé. Podívejme se blíže na příklad: IsOdd = (ValueToTest & amp; 1)! = 0. Logická operace OR (|) pro každý pár bitů vede k 1, pokud je první nebo druhý bit 1. V opačném případě je výsledek nula. Logická operace XOR (~) pro každý pár bitů vede k 1, pokud jsou dva bity rozdílné a 0, pokud jsou stejné. Logický operátor NOT represented as ^. Levý shift (), shift vpravo) a nula vyplnit správný posun (& gt;) je někdy označována jako bitové operátory a posun provozovatelé se nazývají bity.

    priorit

    Pořadí priority (od nejvyšší k nejnižší) binární operátory při programování v C:
  • , ne;
  • Posun vlevo vlevo);
  • ;
  • XOR;
  • NEBO.
  • Tyto operandy se používají ve většině programovacích jazyků. Například při psaní kódu javascript jsou bitové operace shodné s výše uvedenými. To je způsobeno základními matematickými základyprogramový kód je založen. Zejména bitové operace v Javě jsou zase zcela totožné s javascript.

    Beat a programování v jazycích C a dalších

    Bit je nejmenší měrná jednotka používaná pro kvantifikaci počítačových dat. Obsahuje jednu binární hodnotu 0 nebo 1.
    Ačkoli jeden bit může určit logickou hodnotu True

    nebo False

    , je zřídka používán jako samostatná jednotka. Proto jsou v bitové kopii počítače často seskupovány do 8bitových clusterů, které se nazývají bajty. Vzhledem k tomu, že byte obsahuje osm bitů, z nichž každá má dvě možné hodnoty, binární operace v jazyce C (programovací jazyk) mohou mít jeden byte 28 nebo 256 různých hodnot.

    Pojmy "bity" a "bajty" jsou často zaměňovány a dokonce se používají jako zaměnitelné, protože se ozývají stejně a oba jsou zmenšeny písmenem "B". Při správném zápisu se však bity zmenší na malé písmeno "b" a bajty se zmenší na velká písmena - "B". Je důležité, aby tyto dva výrazy nebyly zaměňovány, jelikož jakékoli měření v bajtech obsahuje osmnásobek počtu bitů. Například malý textový soubor o velikosti 4 KB obsahuje 4000 bajtů nebo 32 000 bitů.
    Soubory, úložná zařízení a kapacita paměti se obvykle měří v bajtech a rychlost dat se měří v bitech. Například paměťová karta SSD může mít kapacitu 240 GB, zatímco zavazadlový prostor může být přenášen při rychlosti 10 Mb /s. Kromě toho se bity také používají k popisu architektury procesoru, jako je 32bitový nebo 64bitový procesor.

    Operace míru v Pascalu

    Příležitostná úroveň operací v pascalu zahrnuje práci s jednotlivými bity, které jsou nejmenšími daty v počítači. Přestože počítače jsou schopny manipulovat s bity, obvykle ukládají data a provádějí instrukce v bitových více hodnotách, které se nazývají bajty. Většina programovacích jazyků, včetně bitových operací v Delphi, spravuje skupiny 816 nebo 32 bitů.

    Popis procesu

    Bitový operátor je symbol představující akci, která pracuje s daty na úrovni bitů, nikoli bajtů nebo velkých datových jednotek, což se nejčastěji vyskytuje.
    Většina konvenčních operátorů pracuje s jedním nebo více bajty, které ve většině systémů obsahují osm bitů. Protože poskytují větší přesnost a vyžadují méně zdrojů, operátoři bitových toků mohou tento kód rychleji a efektivněji. Příklady bitových operací zahrnují:
  • šifrování;
  • komprese;
  • plán;
  • připojení k portům /zásuvkám;
  • programování vestavěných systémů;
  • stroje s konečným stavem.
  • Ruční operátor pracuje s binárním znázorněním čísla a nikoliv s jeho hodnotou. Operand se považuje za sadu bitů a ne za jedno číslo. Bitové operátory jsou podobné ve většině jazyků, které je podporují - C, Java, javascript, Python a Visual Basic.

    Proč je důležité jej používat?

    Při programování hardwarových registrů ve vestavěných systémech jsou naprosto nezbytné operace s vrcholem. Každý procesor má jeden nebo více registrů (obvykle specifická adresa paměti), které řídí, zda jsou povoleny, nebopřerušení nebo vypnutí. Chcete-li povolit přerušení spuštění běžného procesu, musíte nastavit bit oprávnění pro tento typ přerušení a nejdůležitější je, neměňte žádný z ostatních bitů v registru.
    Při spuštění přerušení obvykle nastavuje bit v registru stavu, takže jeden servisní postup může určit přesnou příčinu přerušení. Testování jednotlivých bitů umožňuje rychle dekódovat zdroj přerušení.
    V mnoha vestavěných systémech může být celková dostupná paměť RAM 64128 nebo 256 bajtů. V tomto prostředí se obvykle používá jeden bajt pro ukládání více datových prvků a booleovských příznaků a pro jejich nastavení a čtení je pak pomocí operací bitů.

    Související publikace