Skip to main content

Apa itu tabel cabang?

Tabel cabang adalah metode untuk secara efisien mentransfer kontrol program dari satu bagian dari suatu program ke program lain, atau ke program kedua yang telah dimuat secara dinamis, dengan mengirim cabang instruksi atau dengan menerapkan pernyataan sakelar.Metode ini, kadang -kadang disebut tabel lompatan, bergantung pada serangkaian keadaan atau kondisi untuk melakukan lompatan untuk mengimplementasikan prosedur sesuai dengan pernyataan sakelar dari kompiler C+.Beberapa keuntungan utama dari tabel cabang adalah struktur kode kompaknya dan pengurangan kebutuhan untuk menguji kode pengembalian secara individual ketika menentukan aliran program.

Pada 1980 -an, tabel cabang digunakan secara luas dalam pemrograman bahasa perakitan.Mereka masih digunakan dalam pemrograman perakitan untuk sistem tertanam dan pengembangan sistem operasi.Sejak 1990 -an, bahasa pemrograman kompiler juga telah menggunakan fungsi tabel cabang.

Tabel cabang terdiri dari daftar instruksi tanpa syarat yang, diberikan input, bercabang ke tujuan lain.Sebagian besar perangkat keras komputer dapat menjalankan instruksi ini secara efisien.Kadang -kadang, offset mdash;Pada dasarnya, jarak ke tujuan mdash;Dapat ditambahkan ke register penghitung program yang kemudian dapat menunjuk ke set instruksi cabang atau melompat di antara set instruksi cabang.Semua yang diperlukan untuk mengimplementasikan tabel cabang adalah validasi kode input, mengubah data menjadi offset, dan mengalikan data ke panjang instruksi yang diberikan.

Pemrograman tertanam menggunakan tabel cabang karena mereka lebih efisien memori daripada menggunakan kode mesin mesin mesinatau pointer array.Sistem kontrol tertanam membutuhkan penghematan memori, dan meskipun mungkin menghabiskan sejumlah kecil kinerja selama akses ke tabel cabang, panggilan fungsi metode virtual apa pun akan menelan biaya kinerja yang sama untuk fungsi yang stabil.Akses CPU terbatas dan penghematan memori dalam sistem tertanam membutuhkan tabel cabang untuk set fungsi statis.

Bahasa pemrograman kompiler menghasilkan tabel cabang mereka sendiri saat dibutuhkan dengan menggunakan tombol pencarian pada pengoptimalan kompiler.Beberapa programmer memilih untuk secara manual membantu kompiler dengan pembuatan tabel cabang konteks dengan memberikan parameter bersyarat dua langkah kompiler untuk mencari kunci.Pada tahun -tahun awal program kompilasi, implementasi tabel cabang dulu adalah perintah goto dalam bahasa kompiler fortran.Tabel cabang masih digunakan untuk mengimplementasikan perubahan dalam aliran program dalam bahasa kompiler atau menjadi titik awal untuk urutan instruksi berulang.