Salt (informatică)
Această intrare sau secțiune despre componentele computerului nu menționează sursele necesare sau sunt insuficiente . |
Un salt (sau ramură în unele arhitecturi de microprocesor, cum ar fi PDP-8 și Intel x86 ) este un punct în care fluxul secvențial de instrucțiuni este modificat într-un proces .
Descriere
Termenul salt este utilizat în mod obișnuit în limbaje de nivel scăzut, cum ar fi asamblarea ; în limbajele de nivel înalt, salturile sunt adesea înlocuite de constructe de selecție (de exemplu, în limbaje asemănătoare c pot fi reprezentate cu if
și if-else
), care îndeplinesc în mod logic aceeași funcție pentru care saltul a fost creat în programare un nivel al mașinii. Un exemplu de salt în limbaje de programare este declarația goto (lit. „du-te la”).
O instrucțiune care provoacă un salt, numită instrucțiune de salt, poate fi executată sau nu: dacă saltul nu este efectuat, fluxul secvențial normal de instrucțiuni nu este modificat și următoarea instrucțiune care trebuie încărcată în coada de preluare este cea imediată după instrucțiuni de salt. Dacă saltul este executat, instrucțiunea încărcată se află într-o zonă de memorie specificată explicit sau nu explicit în instrucțiunea de salt. Există două tipuri de instrucțiuni de salt: saltul condițional care poate fi executat sau nu și saltul necondiționat , care este întotdeauna executat.
Salturile necondiționate sunt depreciate în programarea cu limbaje de nivel înalt: este dificil să modificați algoritmul pentru a face actualizări și îngreunează înțelegerea codului de către alți utilizatori.
Pentru a îmbunătăți performanțele microprocesorului, încercând să eliminăm dependența de comenzi, încercăm să obținem o conductă perfectă grație istoricului tabel de salt ( Branch Target Buffer sau BTB), înainte ca microprocesoarele să încerce să obțină același rezultat datorită o coadă de preluare dublă.
Exemple
Un salt necondiționat în limbajul de asamblare Intel :
jmp 0x00100000
Un salt condiționat în limbajul de asamblare Intel:
jz 0x00100000
Elemente conexe
linkuri externe
- ( EN ) Salto / Salto (altă versiune) , în Encyclopedia Britannica , Encyclopædia Britannica, Inc.