nisfarm.ru

"Co se stalo na stohu," že se to vrátilo: abstraktní základ reality

Možná, že v budoucnu výpočetní podnikání zapomenout jedniček a nul, a procesory nebudou fungovat v bytech a slov, ale zatím vše je reprezentován binární svět a žít podle jeho pravidel. Jaký je stack a kde je aplikován - s největší pravděpodobností bude zcela jasné. Dokonce i na počátku svého vzhledu byl první procesor registrován a logika jeho práce potřebovala paměť. V důsledku implementace jednoduchých nápadů se stoh "co to je" de facto stal "tak nezbytným".

Funkce, procesor, binární logika

Procesor spravuje paměť a implementuje logiku cyklického spuštění kódu. Program je jedna nebo řada funkcí, které představují sekvenci operací: vyberte něco, udělejte to, vložte něco tam. Operační systém je také zodpovědnějším kódem: je pověřen prováděním a sledováním dalších programů.

Funkce (nezávislý prvek algoritmu) je vlastně pouze sekvence binárních operací. Program se liší od funkce v tom, že se sám implementuje a koordinuje další části kódu.

Tento algoritmus je navržen tak, aby se vyvíjel jako posloupnost samostatných nezávislých prvků. Každý z nich provádí vlastní (obvykle pouze jednu) funkci - je to praktické pro ladění, graficky, prakticky. Takové programování umožňuje zjednodušit vývojový proces, vytvářet knihovny algoritmů a používat je v jiných projektech.

Přenos a zpětná správa

Program zavolá funkci a po předání dat očekává výsledek. Takže provedení další části kódu je iniciováno zvnějšku, takže návrat kontroly musí být proveden na další operaci po volání. Tento mechanismus zajišťuje pořadí provádění kódu a dosažení výsledku programu jako celku.




Kód je načten do paměti a spuštěn postupně. Chcete-li volat funkci (další část kódu), použije se zásobník. Co to je? Paměť (a ukazatel na ni), který se liší od obvyklého, že každý další prvek je umístěn nad předchozím. Proto proto, abychom dostali všechny níže, musíte vzít a vyřešit vše, co je nad ním. Ukazatel vždy ukazuje na aktuální pozici v zásobníku.

Stack, co to je

Zpáteční adresa je zpočátku v zásobníku - adresa další operace po volání. Poté jsou zde umístěna všechna data nezbytná pro vyvolanou funkci. Volaná funkce vybírá data, zpracovává je, generuje výsledek a vrátí kontrolu posledního prvku zásobníku. Příkaz: "stack it" přenese ukazatel na předchozí a zvolený "to" jde do zpracování.

Registry AX, BX, CX, DX, EX se staly nějakými symboly éry počátku informační éry, ale SP a SS jsou jeho hlavním talismanem. Jak se zásobník používá při programování? Příklady minulosti se nestanou architektonickými památkami počátku doby. Hromada se dostala do binárního světa spolu se slovy "funkce" a "rekurze" a zmizela do obecné logiky vývoje programovací praxe.

Podáváte data, abyste se rozhodli, co máte dělat

Stohovací mechanismus umožňuje vícenásobné volání různých částí kódu, včetně rekurze: samotné volání funkce. Existují přirozená omezení: velikost paměti pro zásobník a kód musí být dostatečná. Pokud je program správný, pak jeho provedení bude stabilní, přenos / návrat kontroly - přesný.

Jaký je zásobník a kde se používá?

Stoh je vyplněn, protože desky spadnou do hromady, která je poslána sloužit ke stolu. Osud talířů, tedy jejich plnění, se rozhoduje na místě, kde se přenáší. Podle logiky interakce příkaz "stack what it is" dává předem dohodnutý daný mezi tím, kdo volal a ten, kterého povolal. Po dokončení procesu je důležité vrátit kontrolu na adresu vedle odesílání zásobníku do tabulky.

Velmi jednoduchá a efektivní logika. Co se děje na stole, jak se rozhoduje - funkce funkce, jak se bude zabývat přijatými daty - její obavy, na které tabulce bude posílat svůj stoh dat - její obava, hlavní věc je to, že vedení se vždy po návratu vrátí k další operaci. Funkce se může volat pouze tehdy, pokud umožňuje rekurzi a rekurze je možná pouze v případě, že jsou data vložena do zásobníku.

Základní abstrakce

Když se obyčejné a praktické stává základem virtuální perspektivy, lze se důvodně spoléhat na objektivitu a dlouhou životnost tohoto druhu. Stack cymbálů dal život zásobníku a zásobník poskytl práci procesorů, operačních systémů, programů, funkcí a rozsahu vysokých technologií obecně.

Použijte zásobník v příkladech programování

Klasický případ, kdy se jednoduchá stala základem, ale vzácným případem, kdy lze odhadnout bez prázdných argumentů o syntaxi, sémantikách, programovacích mechanismech a prioritách v boji o jazyky pro přežití.

Proměnná, protože to byla paměťová buňka, zůstala tak dodnes, teprve teď se myšlenky na to změnily. S jistotou procházeli ohněm přísné typizace, nyní říkají: něco může být cokoli a vezme si něco ve skutečné paměti, protože to vůbec není vůbec důležité.

Provozovatelé přiřazení, podmínky, cykly, bloková šablona - jsou mnohem méně transformovány v sémantickém plánu, ale syntaxe je již dlouho bezvýznamná. Boj programovacích jazyků za ideály nedal šanci vyhrát jeden z nich. Nástroj (kompilátor / interpret / shell) musí jednoduše pracovat, být stabilní a plně funkční a jak a co psát / používat je péče programátora, nikoli autor jazyka.

Stack získal nový význam v tomto globálním procesu vývoje reprezentací a technologií. Proměnné ve formě, ve které jsou vhodné, vrstvené na sobě navzájem, a algoritmy a operátory jsou zahrnuty do sebe. Často slyšíte o zásobníku protokolů, když člověk poskytuje práci jiné.

Stack, funkčnost a rekurze nejsou vůbec synonymem, ale dokonale se doplňují a umožňují vytvářet jedinečné možnosti pro prezentaci a zpracování informací.

Sdílet na sociálních sítích:

Podobné
© 2021 nisfarm.ru