Logický typ dat v informatice

Typy dat v informatice jsou četné. Jsou rozděleny do referenčních typů a typů hodnot. Typy hodnot obvykle pracují rychleji, protože jsou uloženy v zásobníku a spravovány přímo. Jedná se o numerické proměnné a logické typy dat. Odkazy ukládají do zásobníku odkaz na hromadu a v hromadě již existuje implementace typu. Referenční typy dat jsou řetězcové proměnné, dynamické nebo globální proměnné, vložené nebo vlastní třídy.

Dne 2. listopadu 1815 se narodil muž v Anglii, který se stal známým matematikem a logikou George Bulem. Je pojmenován podle jednoho z typů dat v programování - Boolean, logický typ dat.
Datový typ boolean je "primitivní" typ. Je široce rozšířený: používá se v programovacím jazyce Algol 60 (1960), Fortran, Pascal, C ++ je k dispozici ve všech moderních programovacích jazycích. Booleovská proměnná je pozoruhodná v tom, že má pouze dvě hodnoty: TRUE (true, 1) nebo FALSE (false, 0). Obvykle je implementován prostřednictvím číselného typu dat a navíc většina programovacích jazyků umožňuje použití v aritmetických operacích, které byly předtím přeneseny do numerického typu založené na pravidlech pro přenášení typů pro určitý programovací jazyk.


Nízká úroveň

Booleovský typ dat je smysluplný typ. V paměti RAM jsou proměnné typu bool uloženy v zásobníku, tj. Obrat a umístění takové proměnné je velmi rychlé. Je snadné předpokládat, že pro realizaci takového jednoduchého typu je dost 1 bit (0 nebo 1), ale ve skutečnosti díky vlastnostem architektury procesorůpod logickým typem dat je vyhrazena minimální adresovatelná paměťová buňka - bajt, a pokud je to přesněji označeno, pak slovo stroje. To usnadňuje procesor a operační paměť. Například: 00000000 - false 00000001 nebo 00010001 nebo 100000 - true Ale když je logická hodnota nastavena na true, hodnota v kódu stroje je vždy hodnota 00000001.

Logický typ dat. Logické operace

Ve společných programovacích jazycích booleovský typ podporuje několik operací, uvažujeme následující:
  • LOGICKÝ A (A & amp; * *).
  • LOGICKÁ NEBO (NEBO | +).
  • vylučuje nebo (XOR ^).
  • ROVNOST (EQV ==).
  • Opravdu (NOT! =).
  • OPERACE SROVNÁNÍ (> 17) Booleovské typy dat Příklady Logické &
    Operátor & amp; Vrací pravdu, pokud jsou obě argumenty pravdivé.




    za použití systému;

    jmenný prostor Boolean
    {
    třída MainClass
    {
    public static void Hlavní (string [] args)
    {Console.WriteLine (true & amp; );
    Konzola.ReadLine ();
    }
    }
    }

    V tomto příkladu druhá podmínka je BLOCK, což znamená, že konzola zobrazuje nepravdivé.

    Logický OR

    Operátor || vrátí pravdu, pokud je alespoň jeden z argumentů pravdivý.

    pomocí systému; 

    jmenný prostor Boolean
    {
    třída MainClass
    {
    public static void Hlavní (string [] args
    {Console.WriteLine ;
    Konzola.ReadLine ();
    }
    }
    }

    V tomto příkladu je jedna z podmínek TRUE, proto je zobrazena pravá konzola.

    Exkluzivní NE

    Operátor ^ (nemusíte být zaměňován s erekcí v určitém stupni) vrátí pravdu, pokud je pravdivý pouze jeden z argumentů.

    pomocí systému;

    jmenný prostor Boolean
    {
    třída MainClass
    {
    public static void Main (string [Console.WriteLine (true ^ true);
    Konzola.ReadLine ();
    }
    }
    }

    V tomto příkladu jsou obě argumenty pravdivé, takže v konzole je zobrazena falešná hodnota.


    Provozovatel == vrátí pravdu, jsou-li obě podmínky stejné. Operator! = Vrací pravdu, pokud nejsou obě podmínky stejné.

    pomocí systému; 

    namespace Boolean
    {
    třída MainClass
    {
    public static void Main (string [] args)
    {
    Console.WriteLine (true! = False) ;
    Konzola.ReadLine ();
    }
    }
    }

    Konzola bude pravda, protože podmínka je splněna.

    Příklady v C # byly zváženy výše. V tomto jazyce pro operace logického typu jsou definovány dvě hodnoty - true a false. A zde je zakázáno převádět booleovské hodnoty na celá čísla, kompilátor poskytne chybu. Jak je snadné si všimnout, při odesílání booleovské proměnné třídy WriteLine Console na konzoli se zobrazí její hodnota.

    Booleovská proměnná může být také řízena příkazem if. V případě, že stav naplnění výrazy pokud - pravda proměnné, exprese může být snížena na

    , , pokud (x) {/* co udělat * /}

    Operace porovnat [103 ]

    Operátory & gt; =

    v jazyku C, je-li proměnná obsahuje 0 pak leží do Logická ekvivalent, a naopak, jakýkoliv počet se považuje za pravdivý. Pro lepší pochopení jsou zdefragment kódu:

    pokud (bool_variable) printf ("True! n"); else printf ("False! n")

    C neexistuje pojem logického datového typu namísto toho používá číselných typů, většinou číslo. Proto je logické operace jakéhokoli typu číselné operandu, která záleží, není nula je interpretován jako pravda, a výsledkem logické operace jsou celá čísla, jedna a nula, v tomto pořadí. V jazyce C ++ byl zaveden logický typ dat, ale spíše pro usnadnění provozu. Neovlivňuje použití jiných typů logických výrazů jako u C.


    V různých programovacích jazycích se mohou jemnosti booleovských operátorských proměnných mírně lišit. Boolean typ dat v Pascalu, například, má zajímavou vlastnost: můžete porovnat pravdu a lež, a leží méně pravdivé. Také hodnota BLOB odpovídá nula a hodnota TRUE je libovolnájiné číslo než nula.

    Přístup

    Logický typ dat v aplikaci Access pracuje podobně.
  • LOGICKÉ A.
  • LOGICKÁ NEBO NEBO.
  • EQUITY Eqv.
  • NEZÁVISLOSTI Ne.
  • EXCLUSIVE NEBO XOR.
  • Vystupují stejně jako v jiných populárních programovacích jazycích.

    Python

    V jazyce Python je logický typ dat deklarován jako standardní - bool. Chcete-li přenést další typy do booleovského typu, použije se funkce bool ():
  • Prázdný řetězec - BLOCK, není prázdný - TRUE.
  • Zero - BLOOD, libovolné číslo jiné než nula - TRUE.
  • Prázdné pole - BLOKU, neprázdné - TRUE.
  • Funkce je TRUE.
  • Jedná se o všechny typy dat, které mohou být v Pythonu typu boolean.

    Ruby

    Ve smyslu bloku je nula a pravda může být jakýkoli objekt. A proměnná s hodnotou 0 nebo prázdný řetězec je také považována za TRUE, což může způsobit potíže lidem, kteří se začali naučit tento jazyk. Transakce s logickými datovými typy se mohou mírně lišit v závislosti na jazyce. Proto je vždy nutné se seznámit s jemností používání datových typů v studovaném jazyce, takže není potřeba dalšího použití.

    Související publikace

    Typy dat v informatice. Zadejte celé číslo