Flag

In informatica, un flag è un valore che funge da segnale per una funzione o un processo. Il valore del flag viene usato per determinare il passaggio successivo di un programma. I flag sono spesso flag binari, che contengono un valore booleano (vero o falso). Tuttavia, non tutti i flag sono binari, cioè possono memorizzare un intervallo di valori.

Puoi pensare a un flag binario come a una piccola bandiera rossa che rimane distesa quando è falsa, ma si alza quando è vera. Una bandiera alzata dice a un programma: "Fermati: fai qualcosa di diverso". Un esempio comune di flag nella programmazione è una variabile in un ciclo while. Il ciclo PHP seguente itererà finché $flag non viene impostato su true.

$flag = false;
$i = 1;
while (!$flag)  // stop when $flag is true
{
      echo "$i, ";
      $i++;   // increment $i
    if ($i > 100) $flag = true;
}

Il codice precedente stamperà i numeri (1, 2, 3...) fino a 100. A quel punto il ciclo si interromperà perché $flag verrà impostato su true. Usare un flag in questo contesto è efficace, ma non necessario. Al suo posto, la condizione del ciclo while avrebbe potuto essere while ($i < 101) invece di while (!$flag). Il risultato sarebbe stato lo stesso e non sarebbe stata necessaria la variabile $flag. I programmi scritti in modo efficiente raramente hanno bisogno di flag espliciti, perché una variabile già esistente all'interno di una funzione può spesso essere usata come flag.

Un flag binario richiede un solo bit, che può essere impostato su 0 o 1. Tuttavia, i byte hanno otto bit, quindi sette bit rimangono inutilizzati quando un singolo byte memorizza un flag binario. Sebbene un singolo byte rappresenti comunque una quantità molto piccola di dati, un programmatore può scegliere di usare un singolo byte per memorizzare più flag binari.

Flag non binari

I flag non binari usano più bit e possono memorizzare più di "sì o no" o "vero o falso". Questi tipi di flag richiedono più di un bit, ma non necessariamente un byte intero. Per esempio, due bit possono produrre quattro opzioni possibili.

  1. 00 = opzione A
  2. 01 = opzione B
  3. 10 = opzione C
  4. 11 = opzione D

Puoi pensare a un flag non binario come a una bandiera con più colori. Un programma può verificare 1) se il flag multi-bit è impostato e 2) quale valore contiene. A seconda del valore (o "colore") del flag, il programma continuerà nella direzione corrispondente.

Aggiornato May 17, 2018 da Per C.

quizMetti alla prova le tue conoscenze

The main role of a framework in software development is what?

A
Speed up the execution of code
0%
B
Compile source code into an executable file
0%
C
Provide a foundation of classes and functions for an application
0%
D
Debug source code to find errors
0%
Correct! Incorrect!     View the Framework definition.
More Quizzes →

Il dizionario informatico Tech Terms

La definizione di Flag in questa pagina è una definizione originale scritta dagli autori di TechTerms.com. Se desideri fare riferimento a questa pagina o citare questa definizione, utilizza la barra di citazione verde direttamente sotto la definizione.

Il nostro obiettivo è spiegare la terminologia informatica in modo semplice e comprensibile. Ci impegniamo per l'accuratezza e la semplicità in ogni definizione pubblicata. Se hai commenti o vuoi suggerire un nuovo termine tecnico, contattaci.

La newsletter di Tech Terms

Migliora le tue conoscenze tecniche con la nostra newsletter giornaliera o settimanale! Iscriviti oggi e ricevi nuovi termini e quiz nella tua casella di posta.

Iscriviti alla newsletter gratuita di TechTerms

Con quale frequenza desideri ricevere un'e-mail?

Puoi annullare l'iscrizione o modificare la frequenza in qualsiasi momento tramite i link presenti in ogni e-mail. Domande? Contattaci.

Nota: La newsletter viene inviata in inglese.