Skip to main content

Co to jest stół oddziału?

Tabela oddziału jest metodą skutecznego przesyłania kontroli programu z jednej części programu do drugiej lub do drugiego programu, który został dynamicznie załadowany, poprzez wysyłanie gałęzi instrukcji lub wdrożenie instrukcji przełącznika.Ta metoda, czasami nazywana tabelą skoku, opiera się na zestawie okoliczności lub warunków, aby wykonać skok w celu wdrożenia procedury zgodnie z instrukcją przełącznika z kompilatora C+.Niektóre z głównych zalet tabel gałęzi to ich kompaktowa struktura kodu i zmniejszenie potrzeby testowania kodów powrotnych przy określaniu przepływu programu.

W latach 80. tabele rozgałęzień były szeroko używane w programowaniu języka montażowego.Są one nadal używane do programowania montażowego dla systemów wbudowanych i rozwoju systemów operacyjnych.Od lat 90. języki programowania kompilatora również korzystały z funkcjonowania tabeli gałęzi.Tabele gałęzi składają się z listy bezwarunkowych instrukcji, które, biorąc pod uwagę dane wejściowe, odgałęzię do innych miejsc docelowych.Większość sprzętu komputerowego może wydajnie wykonywać te instrukcje.Czasami przesunięcie i mdash;Zasadniczo odległość do miejsca docelowego mdash;Można dodać do rejestru licznika programu, który może następnie wskazywać na zestawy instrukcji oddziału lub skakać między zestawami instrukcji oddziału.Wszystko, co jest niezbędne do wdrożenia tabeli oddziału, to sprawdzanie poprawności kodu wejściowego, przekształcenie danych w przesunięcie i pomnożenie danych do danej długości instrukcji.

Wbudowane programowanie wykorzystuje tabele rozgałęzienialub tablicowe wskaźniki.Wbudowane systemy sterowania wymagają tych oszczędności pamięci i chociaż mogą kosztować niewielką wydajność podczas dostępu do tabeli oddziału, każde wywołanie funkcji metody wirtualnej kosztowałoby taką samą wydajność dla stabilnego funkcjonowania.Ograniczony dostęp do procesora i oszczędności pamięci w systemach osadzonych wymagają tabeli oddziału dla statycznych zestawów funkcji.

Języki programowania kompilatora generują własne tabele rozgałęzienia w razie potrzeby przy użyciu klawiszy wyszukiwania w optymalizacji kompilatorów.Niektórzy programiści decydują się ręcznie pomagać kompilatorowi w generowaniu kontekstu tabeli oddziału, podając dwuetapowe parametry warunkowe kompilatora do wyszukiwania kluczy.We wcześniejszych latach kompilowania implementacja tabeli oddziałów była kiedyś poleceniami GOTO w językach kompilatora Fortran.Tabele oddziałów są nadal używane do wdrażania zmian w przepływie programu w językach kompilatora lub do bycia punktem wyjścia dla powtarzanych sekwencji instrukcji.