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 powrotu indywidualnie przy określaniu przepływu programu.

W latach 80. tabele rozgałęzienia były szeroko stosowane w programowaniu języka asemblera. 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, rozgałęzienie się na inne miejsca docelowe.Większość sprzętu komputerowego może wydajnie wykonywać te instrukcje. Czasami przesunięcie - zasadniczo odległość do miejsca docelowego - można dodać do rejestru programu, który może następnie wskazywać na zestawy instrukcji oddziału lub skakać między zestawami instrukcji oddziału. Wszystko, co jest konieczne 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 odgałęzione, ponieważ są one bardziej wydajne pamięci niż przy użyciu kodu maszynowego lub wskaźników tablicowych. 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 wbudowanych wymagają tabeli oddziału FOr Zestawy funkcji statycznych.

Języki programowania kompilatora generują własne tabele gałęzi w razie potrzeby za pomocą 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.

INNE JĘZYKI