www.amapro.cz & David Bazala [Digitální technika]

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 Zásobník

Narazili jsme na problém při instrukci JSR $ při ukládání odskokové instrukce. Program ve strojovém kódu by se dal charakterizovat jako šílené skákání z jednoho místa na druhé. Ačkoliv se to lidskému mozku zdá nepochopitelné, procesor dokáže provést mnoho odskoku od hlavního problému. Počet je závislí na velikosti zásobníku. Tuto schopnost má procesor díky zásobníku. Zásobník je část paměti v operační paměti, kam si procesor ukládá informace o odskokových adresách. Současné moderní procesory mohou mít zásobník ve zvláštní paměti pro rychlejší přístup. Tato paměť je svou konstrukcí zvláštní a funkčně je opak klávesnicového bufferu. U klávesnicového bufferu první znak přichází a také první z něj odchází. Zde je to naopak. Provádí-li procesor odskoky tak ukládá adresy do zásobníky za sebou a my říkáme, že plní zásobník. Plní jej postupně, tak jak jsou žádosti o odskok. Je-li ovšem žádost o návrat (RTS), musí vzít posledně uloženou adresu. Zásobník se vyprazdňuje ze zadu, aby se dodrželo pořadí odskoků. Lze to př Hlavními parametry klasifikující zásobník jsou jeho velikost a velikost ukládané adresy. Je-li šíře adresové sběrnice 16 bitová, je zapotřebí uložení 2 bajtové informace. Velikost zásobníku omezuje počet odskoků procesoru, což klasifikuje výkon systému. U osmibitových počítačů byla velikost zásobníku 512 bajtů, což umožnilo 256 odskoků. Dojde-li k přeplnění zásobníku, a neumí-li systém simulovat zásobník jinak dojde k zhroucení programu, nebo systém ohlásí narušení integrity systému.

V operační paměti je adresa, jejichž obsah informuje o zaplnění zásobníku. Tato informace může být využitá i pro sledování zatížení systému, ale pro procesor je velmi důležitou informací při hledání zpětné adresy odskoku v zásobníku při instrukci RTS. Této adrese říkáme STACK POINTER (ukazatel zásobníku). Jedná se o nejcitlivější místa systému. Sem nás vyšší programovací jazyky nepustí. Možnost pro programátory sahat na tato místa je ve strojovém kódu. Ovšem zde změna jednoho bitu může dát systému šach-mat.



Práce se zásobníkem

Zásobník nemusí sloužit jen procesoru, ale můžeme ho využívat i my pro rychlé uložení mezivýsledku. Procesor má instrukce, které umožňují zápis současného obsahu registru do zásobníku a pozdějšího vyzvednutí a zapsání zpět do akumulátoru. Nevýhodou je držení orientace plnění zásobníku. Při použití těchto instrukcí se nedoporučuje programátorům používat zásobník jinak. Většinou se jedné o experimentální řešení formou funguje/nefunguje. Procesor ale tuto možnost nabízí a většinou operaci provádí s akumulátorem.


PHA dočasně uloží obsah akumulátoru do zásobníku

PLA naplní akumulátor posledním obsahem uloženým v zásobníku

Do zásobníku lze dočasně uložit a vyzvednout obsah stavového registru. K tomu nám opět slouží dvě instrukce. Všechny instrukce pracující s dočasným ukládáním do zásobníku jsou jednokrokové.

PHP dočasně uloží stavový registr do zásobníku

PLP naplní stavoví registr posledním obsahem uloženým v zásobníku

Obecně lze říct, že bezchybová práce s dočasným ukládáním dat do zásobníku je velmi odvážná práce programátora a vyžaduje dokonalou orientační schopnost. Pro značnou orientační složitost se dá řešit dočasné ukládání mezivýsledků na pomocné adresy v operační paměti. Pomocné adresy jsou námi zvolené paměťové buňky, které pro systém nemají vliv. Jedná se o strategii řešení paměti našeho programu.



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




Procesory a mikroprocesory
Obecný úvod do základů mikroprocesorové techniky, architektury počítačů
knihy/mikroprocesory/obsah_mikro2.php
Elektronická schémata
Velký seznam elektronických konstrukcí pro amatéry
katalogy/katalog_schemat.php
Číslicová technika v telekomu
Publikace seznamuje s využitím základních sekvenčních obvodů v praktickém použití v telekomunikační technice.
knihy/cislicova_technika_telekom/
Mikroprocesory I.
Hradla a obvody se středně vysokou integrací.
procesor_1/obsah_procesory1.php
Katalogy TDA
Katalogový list analogových zesilovacích součástek
stranky/katalog/ark0_2.php
Fyzika pro střední šlkolu
Obor fyzikální chemie zabývající se jevy při přeměně chemické energie.
fyzika/obsah_fyzika.php
Polovodiče, tranzistory, diody
Teorie polovodičových součástek, princip PN přechodů
knihy/polovodice/obsah_pn.php
Zapojení kabelů
Popis vývodů a křížení různých propojovacích kabelů
konektory.php
Katalog polovodičů
Analogové integrované obvody
obsah_katalog_tesla.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 digitálních technologií




 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.