www.amapro.cz & David Bazala [Programování]

Otevře webové stránky AmaPro


Otevře hlavní stránku společnosti AmaPro
Internetové stránky určené pro studenty středních a vysokých odborných škol.


amapro.cz/odkazy Projekt eliminuje vyhledávání klíčových slov na komerčních stránkách a v e-schopech.



Nový projekt AmaPro

 

bool

 

Je standardní příkaz Céčka, který se píše před názvem nové proměnné a říká překladači, aby alokoval v paměti místo pro uložení jedné informace typu bool. Bool je speciální logická proměnné, která může nabývat pouze dvou stavů. PRAVDA-NEPRAVDA, jinak řečeno true-false nebo přímo logicky 1-0. Z této skutečnosti vyplívá, že pro uložení takové informace nám stačí pouze 1 bit. Záleží na překladači, zda spojí více (max 8) proměnných typu bool a bude je alokovat na jedné adrese (Byte). Zpravidla je bool alokován jako int, tedy zabírá jeden bajt, který je využit jen z jedné osminy. Pro false ukládá 0 a pro true ukládá 1.

 

Formát deklarace proměnné

 

bool stav;

 

Nastavuje proměnnou typu bool s jedinečným názvem stav pro programátora a překladač.

 

Co je důležité:

 

Překladač registruje název stav, který musí být jedinečný. Prezentuje pouze false nebo true.

Překladač bude aplikovat matematické vyjádření jako false=0, ostatní true;

Překladač pracuje s obsahem adresy prezentující bool, jako s int.

POZNÁMKA: překladač není správný pojem, neboť při spuštění kompilovaného programu je mimo hru

 

Specifika bool

 

Bool je z logického hlediska dvoustavový, jako pravda a nepravda. Jeho fyzické uchování se provádí na jedné adrese, která může představovat  256 rozdílných stavů. S výhodou lze této skutečnosti využít pro přenos doplňujících informací, jako např. číslo chyby při erroru apod. Logicky se hodnota rozdělí na nulovou a nenulové, kde platí jako false a true +např. 33.

Zvláštním případem je pak vytvoření (ne příliš vhodně řečeného) bitového řetězce či pole jako stavy[]. Jedná se opět jen o klasické pole prvků int, které respektují binární logiku jako nulové a nenulové hodnoty obsahů adres.

 

bool stav1;                              //alokuje 1 bit ale neinicializuje

bool stav2=false;         //alokuje 1 bit a inicializuje na 0

bool stavy[]={1,0,0,1,0,1};     //alokuje 6 bitů a inicializuje

cout<<stav1<<endl;                //náhodný stav (1 nebo 0)

cout<<stav2<<endl;                //vypíše 0, jako false

cout<<stavy[0]<<"_";              //1_

cout<<stavy[1]<<"_";              //0_

cout<<stavy[2]<<"_";              //0_

cout<<stavy[3]<<"_";              //1_

cout<<stavy[4]<<"_";              //0_

cout<<stavy[5]<<endl;            //1

getchar();                                 //čekání na entr

return 0;                                  //opuštění konzolové aplikace

 

Program deklaruje tři logické proměnné stav. PC ovšem alokuje tři adresy. Stav1 je pouze alokován, ale není přímo určen stav. PC určil nějakou adresu, která má z předchozích operací libovolnou hodnotu. S velkou pravděpodobností asi nenulovou. Cout by nám tak mohl vypsat true jako 1. Stav2 alokuje paměť a ještě je modifikuje na false. Fasle je jedinečná nulová hodnota, proto je na danou adresu zapsána hodnota 0. Ta je potom i vypsána pomocí cout. Proměnná stavy vytváří pole či řetězec logických stavů, ke kterým lze přistupovat pomocí indexů. Do cout vstupuje bool jako obsah adresy, který je nulový či nenuloví. Cout ví, že pro nulovou hodnotu obsahu adresy má generovat znak „0“ , pro vše ostatní znak „1“.

 

 



Abecední seznam všech článků Vyhledání pojmů ve článcích




CSS html vlasnosti
Přehled CSS vlastností pro tvorbu webu
datove_zdroje/stranky/css
JavaScript - ukázky
Příklady užití některých často používaných efektů na stránky.
katalogy/javascript
Mikropočítače
Seznámení s obecnou problematikou počítačů a mikropočítačů.
programovani/mikropocitace
Číslicové počítače
Základní aritmetické operace, logické operace a vztahy mezi nimi.
programovani/cislicove_pocitace
Databáze obrázků
Malé a velké obrázky, podlkady, tlačítka, okrasné čáry a pod.
datove_zdroje/obrazky
OnLine televize
Seznam světových on line televizních vysílání
internet/katalog_internetove_televize
Weby o programování
Odkazy na velké servery o programování a vývoji SW
odkazy/programovani
Mikroprocesory IV.
Varianty návrhu číslicových řídících systémů realizovaných jako sekvenční obvody.
programovani/procesory_4
Odkazník o programování
Rejstřík klíčových slov pro programování ve vyhledávačích.
programovani/programovani.php
Otevře stránky Fulltextové vyhledávání na celém serveru
Digitalizované odborné knihy
Velká encyklopedie pojmů a zkratek
Česko - anglicko - německý technický slovník
Klasický katalog firem, služeb a stránek
OnLine překladač  vět a textů (nepoužívá Google)
Stránky pro chvíle oddechu od studia, relaxace
Katalog českých firem dle technologií
Internetový odkazník
Otevře hlavní stranu pro oddíl programování




 Wikipedie   Seznam stránek   Kapitoly témat   Významné servery   Klíčová slova 








Otevře hlavní stranu společnosti AmaPro

Všechna práva vyhrazena. Určeno jen pro osobní využití. Bez předchozího písemného souhlasu správce www.amapro.cz je zakázána jakákoli další publikace, přetištění nebo distribuce jakéhokoli materiálu nebo části materiálu zveřejněného na www.amapro.cz a to včetně šíření prostřednictvím elektronické pošty. Články, jejichž přímým autorem není amapro.cz lze publikovat pouze se souhlasem jejich majitelů či administrátoru příslušného webu.