Logický typ údajov v informatike

Typy údajov v informatike sú početné. Sú rozdelené na referenčné typy a typy hodnôt. Typy hodnôt zvyčajne pracujú rýchlejšie, pretože sú uložené v zásobníku a spravované priamo. Ide o numerické premenné a logické typy údajov. Referencie ukladajú do stohu odkaz na hromadu a v hromadách už existuje implementácia typu. Referenčné typy údajov sú reťazcové premenné, dynamické alebo globálne premenné, vložené alebo vlastné triedy.

2. novembra 1815 muž narodený v Anglicku, ktorý sa stal slávnym matematikom a logikom George Bulom. Je pomenovaný podľa jedného z typov dát v programovaní - Boolean, logický typ dát.
Boolean dátového typu je "primitívny" typ. Je bežné, že všade, bol používaný ako programovací jazyk Algol 60 (1960), Fortran, Pascal, C ++, je k dispozícii vo všetkých moderných programovacích jazykov. Booleovská premenná je pozoruhodná tým, že má iba dve hodnoty: TRUE (true, 1) alebo FALSE (false, 0). Obvykle predávané prostredníctvom číselný dátový typ, Navyše má programovacích jazykov umožní ich použitie v aritmetike, pre číselnú vedúcich k zadaniu založené na pravidlách pretypovania pre konkrétny programovací jazyk.


Nízka úroveň

Booleovský typ údajov je zmysluplný typ. RAM premenné typu bool sú uložené v zásobníku, tj obehu a uvádzanie tejto premennej je veľmi rýchly. Je ľahké sa domnievať, že pre taký jednoduchý dosť typu 1 bitu (0 alebo 1), ale v skutočnosti z dôvodu rysov procesorov architektúrypod logickým typom údajov je vyhradená minimálna adresovateľná pamäťová bunka - bajt, a ak presnejšie, potom slovo stroj. Toto uľahčuje pamäť procesora a operácie. Napríklad: 00000000 - falošné alebo 00000001 alebo 00010001 100000 - pravda, ale pri vykonávaní logickú hodnotu premennej priradenie TRUE v strojovom kóde 00000001. vždy zaznamenanú hodnotu

, logický dátový typ. Logické operácie

V bežných programovacích jazykov podporuje viac typov logických operácií, analyzujeme nasledovné:
  • logické a (AND & amp; & amp; *).
  • LOGICKÉ ALEBO (ALEBO).
  • Vylučuje alebo (XOR ^).
  • ROVNOSŤ (EQV ==).
  • Skutočne (NOT! =).
  • OPERÁCIE POROVNANIA (& gt;

    Booleovské typy dát Príklady Logické &

    Prevádzkovateľ & amp; Vracia pravdu, ak sú oba argumenty pravdivé.




    pomocou systému;

    názvov Logická
    {
    trieda MainClass
    {
    public void Main (string [] args)
    {
    Console.WriteLine (true & Co. and false )
    Konzola.ReadLine ();
    }
    }
    }

    V tomto príklade druhá podmienka je BLOCK, čo znamená, že konzola zobrazuje falošný.

    Logický OR

    Operátor || vráti pravdu, ak je aspoň jeden z argumentov pravdivý.

    pomocou systému; 

    názvov Logická
    {
    trieda MainClass
    {
    public void Main (string [] args)
    {
    Console.WriteLine (true || false) ;
    Konzola.ReadLine ();
    }
    }
    }

    V tomto príklade je jednou z podmienok - je pravda, a preto, konzola dostane pravda.

    iba alebo

    ^ operátor (nezamieňať s výškou v stupňoch) vráti true, ak iba jeden z argumentov je pravda.

    pomocou systému;

    namespace Boolean
    {
    trieda MainClass
    {
    public static void Main (string [Konzola.WriteLine (true ^ true);
    Konzola.ReadLine ();
    }
    }
    }

    V tomto príklade oba argumenty sú pravdivé, potom konzola dostane falošný.


    & lt; script type = "text /javascript" & gt;
    var blockSettings2 = {blockId: "R-A-271049-5", renderTo "yandex_rtb_R-A-70350 - 39", async:! 0};
    , ak (document.cookie.indexOf ("abmatch =") väčšie alebo rovné 0) blockSettings2.statId = 70350;
    ! Funkcie (a, b, c, d, e) {a [c] = a [c] || [], a [c] .push (funkcia () {Ya.Context.AdvManager.render (blockSettings2)}), e = b.getElementsByTagName ("scenár") , d = b.createElement ("scenár"), d.type = "text /javascript", d.src = "//an.yandex .ru /systém /context.js "d.async = 0e.parentNode.insertBefore (d, e)} (to, this.document ,!" yandexContextAsyncCallbacks ");

    Rovnosť a nerovnosť

    == operátor vracia true, ak hladina obe podmienky. Operator! = Vráti pravdu, ak nie sú obe podmienky rovnaké.

    pomocou systému; 

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

    konzoly je pravda, pretože je splnená podmienka.

    Príklady v C # boli uvedené vyššie. V tomto jazyku pre operácie logického typu sú definované dve hodnoty - true a false. A potom zakázané previesť logickej hodnoty v celé číslo, bude kompilátor zlyhá. Tak ľahké si všimnúť, keď sa spôsob prenosu WriteLine triedy Console Booleovské premenná konzola odvodený jeho hodnotu.

    Booleovská premenná môže byť tiež riadená príkazom if. V prípade, že stav naplnenia výrazy pokiaľ - pravda premenné, expresia môže byť znížená na

    , , ak (x) {/* čo urobiť * /}

    Operácie porovnať [103 ]

    Operátori & gt; =

    v jazyku C, ak je premenná obsahuje 0 potom leží do Logická ekvivalent, a naopak, akýkoľvek počet sa považuje za pravdivý. Pre lepšie pochopenie pozri nižšieútržok kódu:

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

    C neexistuje pojem logického dátového typu namiesto toho používa číselných typov, väčšinou číslo. Preto je logické operácie akéhokoľvek typu číselné operandu, ktorá záleží, nie je nula je interpretovaný ako pravda, a výsledkom logické operácie sú celé čísla, jedna a nula, v tomto poradí. V jazyku C ++ bol zavedený logický typ údajov, ale skôr pre pohodlie prevádzky. Neovplyvňuje používanie iných typov logických výrazov ako v C.


    V rôznych programovacích jazykoch jemnosti logických operátorov premenných sa môžu mierne líšiť. Boolean typ dát v Pascale, napríklad, má zaujímavú vlastnosť: môžete porovnať pravdu a lož, a leží menej pravdivé. Rovnako hodnota BLOB zodpovedá nuly a hodnota TRUE je ľubovoľnáiné číslo ako nula.

    Prístup

    Logický typ údajov v programe Access funguje podobne.
  • LOGIC AND AND.
  • LOGICKÝ ALEBO ALEBO.
  • EQUITY Eqv.
  • NEZÁVISLOSŤ Nie.
  • EXKLUZÍVNE ALEBO XOR.
  • Vykonávajú to isté ako v iných populárnych programovacích jazykoch.

    Python

    V systéme Python sa logický typ údajov deklaruje ako štandardný - bool. Ak chcete pridať iné typy do booleovského typu, použije sa funkcia bool ():
  • Prázdny reťazec - BLOCK, nie prázdny - TRUE.
  • Zero - BLOOD, ľubovoľné číslo iné ako nula - TRUE.
  • Prázdne pole - BLOK, neprázdny - TRUE.
  • Funkcia je TRUE.
  • Jedná sa o všetky typy údajov, ktoré môžu byť v systéme Python typu boolean.

    Ruby

    V zmysle BLOCK je nula a pravda môže byť akýkoľvek objekt. A premenná s hodnotou 0 alebo prázdny reťazec sa tiež považuje za TRUE a to môže spôsobiť ťažkosti pre ľudí, ktorí sa začiatočníci učia tento jazyk. Transakcie s logickými typmi údajov sa môžu mierne líšiť v závislosti od jazyka. Preto je vždy potrebné sa zoznámiť s jemnosťou používania dátových typov v študovanom jazyku, takže nie je ťažké ďalej používať.

    Súvisiace publikácie