Tablica jest z perspektywy programistów, ustalona w miejscu i rozmiarze, wiesz, gdzie jesteś i gdzie jest cała ta sprawa. Masz dostęp do wszystkich.
Dzięki stosowi siedzisz na jednym jego końcu, ale nie masz pojęcia o jego wielkości ani o tym, jak bezpiecznie możesz się posunąć. Twój dostęp do niego jest ograniczony do kwoty, którą przydzieliłeś, często nawet nie wiesz, czy przy przydzielaniu żądanej kwoty, jeśli po prostu uderzyłeś w stertę lub przestrzeń programu. Twój widok na stos jest małą tablicą, którą sam przydzieliłeś, jaki rozmiar chciałeś, nad którą masz kontrolę i którą możesz zobaczyć. Twoja porcja nie różni się niczym od tablicy. Różnica polega na tym, że twoja tablica jest przyczepiona do jednego końca drugiej tablicy ze względu na argumenty i terminologię, których nie masz widoczności, nie masz pojęcia, jak duży lub mały, i nie możesz go dotknąć, nie powodując szkody. W każdym razie tablica, chyba że globalna, jest często implementowana na stosie, więc tablica i stos dzielą to samo miejsce na czas trwania tej funkcji.
Jeśli chcesz dostać się do strony sprzętowej, to oczywiście jest ona specyficzna dla procesora, ale ogólnie tablica opiera się na znanym punkcie początkowym / adresie, rozmiar jest znany kompilatorowi / programatorowi, a adresy są w nim obliczane, czasami używając adresowania przesunięcia rejestru (załaduj wartość z adresu zdefiniowanego przez tę podstawową wartość rejestru plus tę wartość rejestru przesunięcia, podobnie po skompilowaniu może to być bezpośrednie przesunięcie niekoniecznie oparte na rejestrze, zależy oczywiście od procesora), które w złożeniu bardzo przypomina dostęp do tablicy w kodzie wysokiego poziomu. Podobnie w przypadku stosu, jeśli jest dostępny, można użyć rejestru lub adresowania natychmiastowego przesunięcia, często jednak używa on specjalnego rejestru, albo samego wskaźnika stosu, albo rejestru zarezerwowanego przez kompilator / programistę do użycia do uzyskania dostępu do ramki stosu w tym celu. funkcjonować. W przypadku niektórych procesorów używane są specjalne funkcje dostępu do stosu i / lub wymagane do uzyskania dostępu do stosu. Masz instrukcje push i pop, ale nie są one używane tak często, jak myślisz i tak naprawdę nie dotyczą tego pytania. W przypadku niektórych procesorów push i pop to aliasy instrukcji, które mogą być używane z dowolnym rejestrem, w dowolnym miejscu, nie tylko wskaźnikiem stosu na stosie, dodatkowo usuwając powiązanie push i pop z tym pytaniem.